Skip to content

Commit 02f85b2

Browse files
nzmichaelhkartben
authored andcommitted
drivers: clock_control: fix the CH32V00x clock definitions
Some time during the initial review, the CH32V003 clock definitions were exended to include clocks from the CH32V20x and CH32V30x series. As the CH32V20x series now has a separate clocks include, remove the non-existent clocks. While there, drop the 'A' prefix to match the register names in the CH32V00X reference manual. Also add the USART2 clock that's present in the CH32V00x series. Signed-off-by: Michael Hope <michaelh@juju.nz>
1 parent 1d7a095 commit 02f85b2

File tree

1 file changed

+20
-26
lines changed

1 file changed

+20
-26
lines changed

include/zephyr/dt-bindings/clock/ch32v00x-clocks.h

Lines changed: 20 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -7,36 +7,30 @@
77
#ifndef __CH32V00X_CLOCKS_H__
88
#define __CH32V00X_CLOCKS_H__
99

10-
#define CH32V00X_AHB_PCENR_OFFSET 0
11-
#define CH32V00X_APB2_PCENR_OFFSET 1
12-
#define CH32V00X_APB1_PCENR_OFFSET 2
10+
#define CH32V00X_HB_PCENR_OFFSET 0
11+
#define CH32V00X_PB2_PCENR_OFFSET 1
12+
#define CH32V00X_PB1_PCENR_OFFSET 2
1313

1414
#define CH32V00X_CLOCK_CONFIG(bus, bit) (((CH32V00X_##bus##_PCENR_OFFSET) << 5) | (bit))
1515

16-
#define CH32V00X_CLOCK_DMA1 CH32V00X_CLOCK_CONFIG(AHB, 0)
17-
#define CH32V00X_CLOCK_SRAM CH32V00X_CLOCK_CONFIG(AHB, 2)
18-
#define CH32V00X_CLOCK_FLITF CH32V00X_CLOCK_CONFIG(AHB, 4)
19-
#define CH32V00X_CLOCK_CRC CH32V00X_CLOCK_CONFIG(AHB, 6)
20-
#define CH32V00X_CLOCK_USB CH32V00X_CLOCK_CONFIG(AHB, 12)
16+
#define CH32V00X_CLOCK_DMA1 CH32V00X_CLOCK_CONFIG(HB, 0)
17+
#define CH32V00X_CLOCK_SRAM CH32V00X_CLOCK_CONFIG(HB, 2)
2118

22-
#define CH32V00X_CLOCK_AFIO CH32V00X_CLOCK_CONFIG(APB2, 0)
23-
#define CH32V00X_CLOCK_IOPA CH32V00X_CLOCK_CONFIG(APB2, 2)
24-
#define CH32V00X_CLOCK_IOPB CH32V00X_CLOCK_CONFIG(APB2, 3)
25-
#define CH32V00X_CLOCK_IOPC CH32V00X_CLOCK_CONFIG(APB2, 4)
26-
#define CH32V00X_CLOCK_IOPD CH32V00X_CLOCK_CONFIG(APB2, 5)
27-
#define CH32V00X_CLOCK_ADC1 CH32V00X_CLOCK_CONFIG(APB2, 9)
28-
#define CH32V00X_CLOCK_ADC2 CH32V00X_CLOCK_CONFIG(APB2, 10)
29-
#define CH32V00X_CLOCK_TIM1 CH32V00X_CLOCK_CONFIG(APB2, 11)
30-
#define CH32V00X_CLOCK_SPI1 CH32V00X_CLOCK_CONFIG(APB2, 12)
31-
#define CH32V00X_CLOCK_USART1 CH32V00X_CLOCK_CONFIG(APB2, 14)
19+
#define CH32V00X_CLOCK_AFIO CH32V00X_CLOCK_CONFIG(PB2, 0)
20+
#define CH32V00X_CLOCK_IOPA CH32V00X_CLOCK_CONFIG(PB2, 2)
21+
#define CH32V00X_CLOCK_IOPB CH32V00X_CLOCK_CONFIG(PB2, 3)
22+
#define CH32V00X_CLOCK_IOPC CH32V00X_CLOCK_CONFIG(PB2, 4)
23+
#define CH32V00X_CLOCK_IOPD CH32V00X_CLOCK_CONFIG(PB2, 5)
24+
#define CH32V00X_CLOCK_ADC1 CH32V00X_CLOCK_CONFIG(PB2, 9)
25+
#define CH32V00X_CLOCK_TIM1 CH32V00X_CLOCK_CONFIG(PB2, 11)
26+
#define CH32V00X_CLOCK_SPI1 CH32V00X_CLOCK_CONFIG(PB2, 12)
27+
#define CH32V00X_CLOCK_USART2 CH32V00X_CLOCK_CONFIG(PB2, 13)
28+
#define CH32V00X_CLOCK_USART1 CH32V00X_CLOCK_CONFIG(PB2, 14)
3229

33-
#define CH32V00X_CLOCK_TIM2 CH32V00X_CLOCK_CONFIG(APB1, 0)
34-
#define CH32V00X_CLOCK_TIM3 CH32V00X_CLOCK_CONFIG(APB1, 1)
35-
#define CH32V00X_CLOCK_WWDG CH32V00X_CLOCK_CONFIG(APB1, 11)
36-
#define CH32V00X_CLOCK_USART2 CH32V00X_CLOCK_CONFIG(APB1, 17)
37-
#define CH32V00X_CLOCK_I2C1 CH32V00X_CLOCK_CONFIG(APB1, 21)
38-
#define CH32V00X_CLOCK_BKP CH32V00X_CLOCK_CONFIG(APB1, 27)
39-
#define CH32V00X_CLOCK_PWR CH32V00X_CLOCK_CONFIG(APB1, 28)
40-
#define CH32V00X_CLOCK_USB CH32V00X_CLOCK_CONFIG(APB1, 23)
30+
#define CH32V00X_CLOCK_TIM2 CH32V00X_CLOCK_CONFIG(PB1, 0)
31+
#define CH32V00X_CLOCK_TIM3 CH32V00X_CLOCK_CONFIG(PB1, 2)
32+
#define CH32V00X_CLOCK_WWDG CH32V00X_CLOCK_CONFIG(PB1, 11)
33+
#define CH32V00X_CLOCK_I2C1 CH32V00X_CLOCK_CONFIG(PB1, 21)
34+
#define CH32V00X_CLOCK_PWR CH32V00X_CLOCK_CONFIG(PB1, 28)
4135

4236
#endif

0 commit comments

Comments
 (0)