Skip to content

Commit d629302

Browse files
committed
change(hal): simplify some enable/disable function in pau_ll
1 parent 86ea927 commit d629302

File tree

15 files changed

+60
-128
lines changed

15 files changed

+60
-128
lines changed

components/hal/esp32c5/include/hal/pau_ll.h

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,10 @@
1414
#include "soc/pau_reg.h"
1515
#include "soc/pau_struct.h"
1616
#include "soc/pcr_struct.h"
17+
#include "soc/lp_aon_struct.h"
1718
#include "hal/pau_types.h"
1819
#include "hal/assert.h"
20+
#include "hal/misc.h"
1921

2022
#ifdef __cplusplus
2123
extern "C" {
@@ -47,14 +49,9 @@ static inline void pau_ll_set_regdma_entry_link_backup_direction(pau_dev_t *dev,
4749
dev->regdma_conf.to_mem = to_mem ? 1 : 0;
4850
}
4951

50-
static inline void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev)
52+
static inline void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev, bool enable)
5153
{
52-
dev->regdma_conf.start = 1;
53-
}
54-
55-
static inline void pau_ll_set_regdma_entry_link_backup_start_disable(pau_dev_t *dev)
56-
{
57-
dev->regdma_conf.start = 0;
54+
dev->regdma_conf.start = enable;
5855
}
5956

6057
static inline void pau_ll_set_regdma_select_wifimac_link(pau_dev_t *dev)
@@ -107,14 +104,9 @@ static inline uint32_t pau_ll_get_regdma_intr_status(pau_dev_t *dev)
107104
return dev->int_st.val;
108105
}
109106

110-
static inline void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev)
111-
{
112-
dev->int_ena.done_int_ena = 1;
113-
}
114-
115-
static inline void pau_ll_set_regdma_backup_done_intr_disable(pau_dev_t *dev)
107+
static inline void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev, bool enable)
116108
{
117-
dev->int_ena.done_int_ena = 0;
109+
dev->int_ena.done_int_ena = enable;
118110
}
119111

120112
static inline void pau_ll_set_regdma_backup_error_intr_enable(pau_dev_t *dev)

components/hal/esp32c5/pau_hal.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,14 +43,14 @@ void IRAM_ATTR pau_hal_start_regdma_extra_link(pau_hal_context_t *hal, bool back
4343
*/
4444
pau_ll_select_regdma_entry_link(hal->dev, 3);
4545
pau_ll_set_regdma_entry_link_backup_direction(hal->dev, backup_or_restore);
46-
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev);
46+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, true);
4747

4848
while (!(pau_ll_get_regdma_intr_raw_signal(hal->dev) & PAU_DONE_INT_RAW));
4949
}
5050

5151
void IRAM_ATTR pau_hal_stop_regdma_extra_link(pau_hal_context_t *hal)
5252
{
53-
pau_ll_set_regdma_entry_link_backup_start_disable(hal->dev);
53+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, false);
5454
pau_ll_select_regdma_entry_link(hal->dev, 0); /* restore link select to default */
5555
pau_ll_clear_regdma_backup_done_intr_state(hal->dev);
5656
}

components/hal/esp32c6/include/hal/pau_ll.h

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
2+
* SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*/
@@ -47,14 +47,9 @@ static inline void pau_ll_set_regdma_entry_link_backup_direction(pau_dev_t *dev,
4747
dev->regdma_conf.to_mem = to_mem ? 1 : 0;
4848
}
4949

50-
static inline void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev)
50+
static inline void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev, bool enable)
5151
{
52-
dev->regdma_conf.start = 1;
53-
}
54-
55-
static inline void pau_ll_set_regdma_entry_link_backup_start_disable(pau_dev_t *dev)
56-
{
57-
dev->regdma_conf.start = 0;
52+
dev->regdma_conf.start = enable;
5853
}
5954

6055
static inline void pau_ll_set_regdma_select_wifimac_link(pau_dev_t *dev)
@@ -132,14 +127,9 @@ static inline uint32_t pau_ll_get_regdma_intr_status(pau_dev_t *dev)
132127
return dev->int_st.val;
133128
}
134129

135-
static inline void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev)
136-
{
137-
dev->int_ena.done_int_ena = 1;
138-
}
139-
140-
static inline void pau_ll_set_regdma_backup_done_intr_disable(pau_dev_t *dev)
130+
static inline void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev, bool enable)
141131
{
142-
dev->int_ena.done_int_ena = 0;
132+
dev->int_ena.done_int_ena = enable;
143133
}
144134

145135
static inline void pau_ll_set_regdma_backup_error_intr_enable(pau_dev_t *dev, bool enable)

components/hal/esp32c6/pau_hal.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,14 @@ void IRAM_ATTR pau_hal_start_regdma_extra_link(pau_hal_context_t *hal, bool back
4646
*/
4747
pau_ll_select_regdma_entry_link(hal->dev, 3);
4848
pau_ll_set_regdma_entry_link_backup_direction(hal->dev, backup_or_restore);
49-
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev);
49+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, true);
5050

5151
while (!(pau_ll_get_regdma_intr_raw_signal(hal->dev) & PAU_DONE_INT_RAW));
5252
}
5353

5454
void IRAM_ATTR pau_hal_stop_regdma_extra_link(pau_hal_context_t *hal)
5555
{
56-
pau_ll_set_regdma_entry_link_backup_start_disable(hal->dev);
56+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, false);
5757
pau_ll_select_regdma_entry_link(hal->dev, 0); /* restore link select to default */
5858
pau_ll_clear_regdma_backup_done_intr_state(hal->dev);
5959
}

components/hal/esp32c61/include/hal/pau_ll.h

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
2+
* SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*/
@@ -47,14 +47,9 @@ static inline void pau_ll_set_regdma_entry_link_backup_direction(pau_dev_t *dev,
4747
dev->regdma_conf.to_mem = to_mem ? 1 : 0;
4848
}
4949

50-
static inline void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev)
50+
static inline void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev, bool enable)
5151
{
52-
dev->regdma_conf.start = 1;
53-
}
54-
55-
static inline void pau_ll_set_regdma_entry_link_backup_start_disable(pau_dev_t *dev)
56-
{
57-
dev->regdma_conf.start = 0;
52+
dev->regdma_conf.start = enable;
5853
}
5954

6055
static inline void pau_ll_set_regdma_select_wifimac_link(pau_dev_t *dev)
@@ -132,14 +127,9 @@ static inline uint32_t pau_ll_get_regdma_intr_status(pau_dev_t *dev)
132127
return dev->int_st.val;
133128
}
134129

135-
static inline void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev)
136-
{
137-
dev->int_ena.done_int_ena = 1;
138-
}
139-
140-
static inline void pau_ll_set_regdma_backup_done_intr_disable(pau_dev_t *dev)
130+
static inline void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev, bool enable)
141131
{
142-
dev->int_ena.done_int_ena = 0;
132+
dev->int_ena.done_int_ena = enable;
143133
}
144134

145135
static inline void pau_ll_set_regdma_backup_error_intr_enable(pau_dev_t *dev, bool enable)

components/hal/esp32c61/pau_hal.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,14 +46,14 @@ void IRAM_ATTR pau_hal_start_regdma_extra_link(pau_hal_context_t *hal, bool back
4646
*/
4747
pau_ll_select_regdma_entry_link(hal->dev, 3);
4848
pau_ll_set_regdma_entry_link_backup_direction(hal->dev, backup_or_restore);
49-
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev);
49+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, true);
5050

5151
while (!(pau_ll_get_regdma_intr_raw_signal(hal->dev) & PAU_DONE_INT_RAW));
5252
}
5353

5454
void IRAM_ATTR pau_hal_stop_regdma_extra_link(pau_hal_context_t *hal)
5555
{
56-
pau_ll_set_regdma_entry_link_backup_start_disable(hal->dev);
56+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, false);
5757
pau_ll_select_regdma_entry_link(hal->dev, 0); /* restore link select to default */
5858
pau_ll_clear_regdma_backup_done_intr_state(hal->dev);
5959
}

components/hal/esp32h2/include/hal/pau_ll.h

Lines changed: 5 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: 2023-2024 Espressif Systems (Shanghai) CO LTD
2+
* SPDX-FileCopyrightText: 2023-2025 Espressif Systems (Shanghai) CO LTD
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*/
@@ -47,14 +47,9 @@ static inline __attribute__((always_inline)) void pau_ll_set_regdma_entry_link_b
4747
dev->regdma_conf.to_mem = to_mem ? 1 : 0;
4848
}
4949

50-
static inline __attribute__((always_inline)) void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev)
50+
static inline __attribute__((always_inline)) void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev, bool enable)
5151
{
52-
dev->regdma_conf.start = 1;
53-
}
54-
55-
static inline __attribute__((always_inline)) void pau_ll_set_regdma_entry_link_backup_start_disable(pau_dev_t *dev)
56-
{
57-
dev->regdma_conf.start = 0;
52+
dev->regdma_conf.start = enable;
5853
}
5954

6055
static inline __attribute__((always_inline)) void pau_ll_set_regdma_link0_addr(pau_dev_t *dev, void *link_addr)
@@ -102,14 +97,9 @@ static inline __attribute__((always_inline)) uint32_t pau_ll_get_regdma_intr_sta
10297
return dev->int_st.val;
10398
}
10499

105-
static inline __attribute__((always_inline)) void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev)
106-
{
107-
dev->int_ena.done_int_ena = 1;
108-
}
109-
110-
static inline __attribute__((always_inline)) void pau_ll_set_regdma_backup_done_intr_disable(pau_dev_t *dev)
100+
static inline __attribute__((always_inline)) void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev, bool enable)
111101
{
112-
dev->int_ena.done_int_ena = 0;
102+
dev->int_ena.done_int_ena = enable;
113103
}
114104

115105
static inline void pau_ll_set_regdma_backup_error_intr_enable(pau_dev_t *dev, bool enable)

components/hal/esp32h2/pau_hal.c

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* SPDX-FileCopyrightText: 2022-2024 Espressif Systems (Shanghai) CO LTD
2+
* SPDX-FileCopyrightText: 2022-2025 Espressif Systems (Shanghai) CO LTD
33
*
44
* SPDX-License-Identifier: Apache-2.0
55
*/
@@ -24,14 +24,14 @@ void IRAM_ATTR pau_hal_start_regdma_system_link(pau_hal_context_t *hal, bool bac
2424

2525
pau_ll_select_regdma_entry_link(hal->dev, 0);
2626
pau_ll_set_regdma_entry_link_backup_direction(hal->dev, backup_or_restore);
27-
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev);
27+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, true);
2828

2929
while (!(pau_ll_get_regdma_intr_raw_signal(hal->dev) & PAU_DONE_INT_RAW));
3030
}
3131

3232
void IRAM_ATTR pau_hal_stop_regdma_system_link(pau_hal_context_t *hal)
3333
{
34-
pau_ll_set_regdma_entry_link_backup_start_disable(hal->dev);
34+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, false);
3535
pau_ll_select_regdma_entry_link(hal->dev, 0); /* restore link select to default */
3636
pau_ll_clear_regdma_backup_done_intr_state(hal->dev);
3737
}
@@ -64,14 +64,14 @@ void IRAM_ATTR pau_hal_start_regdma_extra_link(pau_hal_context_t *hal, bool back
6464
*/
6565
pau_ll_select_regdma_entry_link(hal->dev, 3);
6666
pau_ll_set_regdma_entry_link_backup_direction(hal->dev, backup_or_restore);
67-
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev);
67+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, true);
6868

6969
while (!(pau_ll_get_regdma_intr_raw_signal(hal->dev) & PAU_DONE_INT_RAW));
7070
}
7171

7272
void IRAM_ATTR pau_hal_stop_regdma_extra_link(pau_hal_context_t *hal)
7373
{
74-
pau_ll_set_regdma_entry_link_backup_start_disable(hal->dev);
74+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, false);
7575
pau_ll_select_regdma_entry_link(hal->dev, 0); /* restore link select to default */
7676
pau_ll_clear_regdma_backup_done_intr_state(hal->dev);
7777
}

components/hal/esp32h21/include/hal/pau_ll.h

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,10 @@
1414
#include "soc/pau_reg.h"
1515
#include "soc/pau_struct.h"
1616
#include "soc/pcr_struct.h"
17+
#include "soc/lp_aon_struct.h"
1718
#include "hal/pau_types.h"
1819
#include "hal/assert.h"
20+
#include "hal/misc.h"
1921

2022
#ifdef __cplusplus
2123
extern "C" {
@@ -47,14 +49,9 @@ static inline void pau_ll_set_regdma_entry_link_backup_direction(pau_dev_t *dev,
4749
dev->regdma_conf.to_mem = to_mem ? 1 : 0;
4850
}
4951

50-
static inline void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev)
52+
static inline void pau_ll_set_regdma_entry_link_backup_start_enable(pau_dev_t *dev, bool enable)
5153
{
52-
dev->regdma_conf.start = 1;
53-
}
54-
55-
static inline void pau_ll_set_regdma_entry_link_backup_start_disable(pau_dev_t *dev)
56-
{
57-
dev->regdma_conf.start = 0;
54+
dev->regdma_conf.start = enable;
5855
}
5956

6057
static inline void pau_ll_set_regdma_select_wifimac_link(pau_dev_t *dev)
@@ -107,14 +104,9 @@ static inline uint32_t pau_ll_get_regdma_intr_status(pau_dev_t *dev)
107104
return dev->int_st.val;
108105
}
109106

110-
static inline void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev)
111-
{
112-
dev->int_ena.done_int_ena = 1;
113-
}
114-
115-
static inline void pau_ll_set_regdma_backup_done_intr_disable(pau_dev_t *dev)
107+
static inline void pau_ll_set_regdma_backup_done_intr_enable(pau_dev_t *dev, bool enable)
116108
{
117-
dev->int_ena.done_int_ena = 0;
109+
dev->int_ena.done_int_ena = enable;
118110
}
119111

120112
static inline void pau_ll_set_regdma_backup_error_intr_enable(pau_dev_t *dev)

components/hal/esp32h21/pau_hal.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -47,14 +47,14 @@ void IRAM_ATTR pau_hal_start_regdma_extra_link(pau_hal_context_t *hal, bool back
4747
*/
4848
pau_ll_select_regdma_entry_link(hal->dev, 3);
4949
pau_ll_set_regdma_entry_link_backup_direction(hal->dev, backup_or_restore);
50-
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev);
50+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, true);
5151

5252
while (!(pau_ll_get_regdma_intr_raw_signal(hal->dev) & PAU_DONE_INT_RAW));
5353
}
5454

5555
void IRAM_ATTR pau_hal_stop_regdma_extra_link(pau_hal_context_t *hal)
5656
{
57-
pau_ll_set_regdma_entry_link_backup_start_disable(hal->dev);
57+
pau_ll_set_regdma_entry_link_backup_start_enable(hal->dev, false);
5858
pau_ll_select_regdma_entry_link(hal->dev, 0); /* restore link select to default */
5959
pau_ll_clear_regdma_backup_done_intr_state(hal->dev);
6060
}

0 commit comments

Comments
 (0)