1menu "Hardware Drivers Config"
2
3menu "Chip Configuration"
4    config SOC_KERNEL
5        bool
6        select SOC_SERIES_HT32F5 if CORTEX_M0
7        select SOC_SERIES_HT32F1 if CORTEX_M3
8        select RT_USING_COMPONENTS_INIT
9        select RT_USING_USER_MAIN
10        default y
11        choice
12            prompt "Select the kernel"
13            default CORTEX_M0
14            config CORTEX_M0
15                bool "CORTEX_M0"
16            config CORTEX_M3
17                bool "CORTEX_M3"
18        endchoice
19
20    choice
21        prompt "Select the chip you are using"
22        depends on CORTEX_M0
23        default HT32F52352
24            config SOC_HT32F0006
25                bool "HT32F0006"
26            config SOC_HT32F0008
27                bool "HT32F0008"
28            config SOC_HT32F50241
29                bool "HT32F50241"
30            config SOC_HT32F50343
31                bool "HT32F50343"
32            config SOC_HT32F50441
33                bool "HT32F50441"
34            config SOC_HT32F50452
35                bool "HT32F50452"
36            config SOC_HT32F52241
37                bool "HT32F52241"
38            config SOC_HT32F52244
39                bool "HT32F52244"
40            config SOC_HT32F52253
41                bool "HT32F52253"
42            config SOC_HT32F52341
43                bool "HT32F52341"
44            config SOC_HT32F52352
45                bool "HT32F52352"
46            config SOC_HT32F52354
47                bool "HT32F52354"
48            config SOC_HT32F52367
49                bool "HT32F52367"
50            config SOC_HT32F53241
51                bool "HT32F53241"
52            config SOC_HT32F53252
53                bool "HT32F53252"
54            config SOC_HT32F54241
55                bool "HT32F54241"
56            config SOC_HT32F54253
57                bool "HT32F54253"
58            config SOC_HT32F57341
59                bool "HT32F57341"
60            config SOC_HT32F57352
61                bool "HT32F57352"
62            config SOC_HT32F5828
63                bool "HT32F5828"
64            config SOC_HT32F59041
65                bool "HT32F59041"
66            config SOC_HT32F59741
67                bool "HT32F59741"
68            config SOC_HT32F61141
69                bool "HT32F61141"
70            config SOC_HT32F61245
71                bool "HT32F61245"
72            config SOC_HT32F61355
73                bool "HT32F61355"
74            config SOC_HT32F61356
75                bool "HT32F61356"
76            config SOC_HT32F61357
77                bool "HT32F61357"
78            config SOC_HT32F61641
79                bool "HT32F61641"
80            config SOC_HT32F65240
81                bool "HT32F65240"
82            config SOC_HT32F67051
83                bool "HT32F67051"
84            config SOC_HT32F67741
85                bool "HT32F67741"
86    endchoice
87
88    choice
89        prompt "Select the chip you are using"
90        depends on CORTEX_M3
91        default HT32F52352
92        config SOC_HT32F1654
93            bool "HT32F1654"
94        config SOC_HT32F1656
95            bool "HT32F1656"
96        config SOC_HT32F12345
97            bool "HT32F12345"
98        config SOC_HT32F12364
99            bool "HT32F12364"
100        config SOC_HT32F12366
101            bool "HT32F12366"
102    endchoice
103endmenu
104
105menu "Onboard Peripheral Drivers"
106
107    config BSP_USING_TEST
108        bool "Enable test"
109        default n
110
111    if RT_USING_CONSOLE
112		config RT_CONSOLE_DEVICE_NAME
113		string "the device name for console"
114		default "usart1"
115	endif
116
117endmenu
118
119menu "On-chip Peripheral Drivers"
120
121    config BSP_USING_GPIO
122        bool "Enable GPIO"
123        select RT_USING_PIN if BSP_USING_GPIO
124        default n
125
126    menuconfig BSP_USING_UART
127        bool "Enable UART"
128        default n
129        select RT_USING_SERIAL
130        if BSP_USING_UART
131            config BSP_USING_USART0
132                bool "Enable USART0"
133                default n
134                config BSP_USING_USART0_NAME
135                depends on BSP_USING_USART0
136                string "usart0 bus name"
137                default "usart0"
138
139            config BSP_USING_USART1
140                bool "Enable USART1"
141                default n
142                config BSP_USING_USART1_NAME
143                depends on BSP_USING_USART1
144                string "usart1 bus name"
145                default "usart1"
146
147            config BSP_USING_UART0
148                bool "Enable UART0"
149                default n
150                config BSP_USING_UART0_NAME
151                depends on BSP_USING_UART0
152                string "uart0 bus name"
153                default "uart0"
154
155            config BSP_USING_UART1
156                bool "Enable UART1"
157                default n
158                config BSP_USING_UART1_NAME
159                depends on BSP_USING_UART1
160                string "uart1 bus name"
161                default "uart1"
162        endif
163
164    menuconfig BSP_USING_SPI
165        bool "Enable SPI Bus"
166        default n
167        select RT_USING_SPI if BSP_USING_SPI
168        if BSP_USING_SPI
169            config BSP_USING_SPI0
170                bool "Enable SPI0 Bus"
171                default n
172                config BSP_USING_SPI0_NAME
173                depends on BSP_USING_SPI0
174                string "spi0 bus name"
175                default "spi0"
176
177            config BSP_USING_SPI1
178                bool "Enable SPI1 Bus"
179                default n
180                config BSP_USING_SPI1_NAME
181                depends on BSP_USING_SPI1
182                string "spi1 bus name"
183                default "spi1"
184        endif
185
186    menuconfig BSP_USING_I2C
187        bool "Enable I2C Bus"
188        default n
189        if BSP_USING_I2C
190            menuconfig BSP_USING_I2C_HW
191                bool "Enable I2C Bus(hardware)"
192                default n
193                select RT_USING_I2C if BSP_USING_I2C_HW
194                if BSP_USING_I2C_HW
195                    config BSP_USING_I2C0_HW
196                    bool "Enable Hardware I2C0 Bus"
197                    default n
198                    config BSP_USING_I2C0_HW_NAME
199                    depends on BSP_USING_I2C0_HW
200                    string "hardware i2c0 name"
201                    default "hw_i2c0"
202
203                    config BSP_USING_I2C1_HW
204                    bool "Enable Hardware I2C1 Bus"
205                    default n
206                    config BSP_USING_I2C1_HW_NAME
207                    depends on BSP_USING_I2C1_HW
208                    string "hardware i2c1 name"
209                    default "hw_i2c1"
210                endif
211
212            menuconfig BSP_USING_I2C_SW
213                bool "Enable I2C Bus(software)"
214                default n
215                select BSP_USING_GPIO if BSP_USING_I2C_SW
216                select RT_USING_I2C if BSP_USING_I2C_SW
217
218                if BSP_USING_I2C_SW
219                    config BSP_USING_I2C0_SW
220                    bool "Enable Software I2C0 Bus"
221                    default n
222                    config BSP_USING_I2C0_SW_NAME
223                    depends on BSP_USING_I2C0_SW
224                    string "software i2c0 name"
225                    default "sw_i2c0"
226                    if BSP_USING_I2C0_SW
227                            config BSP_I2C0_SLC_PIN
228                            int "i2c0 slc pin number"
229                            range 0 51
230                            default 22
231
232                            config BSP_I2C0_SDA_PIN
233                            int "i2c0 sda pin number"
234                            range 0 51
235                            default 23
236                    endif
237
238                    config BSP_USING_I2C1_SW
239                    bool "Enable Software I2C1 Bus"
240                    default n
241                    config BSP_USING_I2C1_SW_NAME
242                    depends on BSP_USING_I2C1_SW
243                    string "software i2c1 name"
244                    default "sw_i2c1"
245                    if BSP_USING_I2C1_SW
246                            config BSP_I2C1_SLC_PIN
247                            int "i2c1 slc pin number"
248                            range 0 51
249                            default 24
250
251                            config BSP_I2C1_SDA_PIN
252                            int "i2c1 sda pin number"
253                            range 0 51
254                            default 25
255                    endif
256
257                    config BSP_USING_I2C2_SW
258                    bool "Enable Software I2C2 Bus"
259                    default n
260                    config BSP_USING_I2C2_SW_NAME
261                    depends on BSP_USING_I2C2_SW
262                    string "software i2c2 name"
263                    default "sw_i2c2"
264                    if BSP_USING_I2C2_SW
265                            config BSP_I2C2_SLC_PIN
266                            int "i2c2 slc pin number"
267                            range 0 51
268                            default 26
269
270                            config BSP_I2C2_SDA_PIN
271                            int "i2c2 sda pin number"
272                            range 0 51
273                            default 27
274                    endif
275                endif
276        endif
277
278    menuconfig BSP_USING_ADC
279        bool "Enable ADC"
280        default n
281        select RT_USING_ADC if BSP_USING_ADC
282        if BSP_USING_ADC
283            config BSP_USING_ADC0
284            bool "Enable ADC0"
285            default n
286            config BSP_USING_ADC0_NAME
287            depends on BSP_USING_ADC0
288            string "adc0 device name"
289            default "adc0"
290
291            config BSP_USING_ADC1
292            bool "Enable ADC1"
293            depends on SOC_HT32F65240
294            default n
295            config BSP_USING_ADC1_NAME
296            depends on BSP_USING_ADC1
297            string "adc1 device name"
298            default "adc1"
299        endif
300
301    menuconfig BSP_USING_WDT
302        bool "Enable WDT"
303        default n
304        select RT_USING_WDT if BSP_USING_WDT
305        config BSP_USING_WDT_NAME
306        depends on BSP_USING_WDT
307        string "wdt device name"
308        default "wdt"
309
310    menuconfig BSP_USING_CAN
311        bool "Enable CAN"
312        depends on SOC_HT32F53241 || SOC_HT32F53242 || SOC_HT32F53252
313        default n
314        select RT_USING_CAN if BSP_USING_CAN
315        config BSP_USING_CAN_NAME
316        depends on BSP_USING_CAN
317        string "can device name"
318        default "can"
319        if BSP_USING_CAN
320            config CAN_DEFAULT_BASE_CONFIGURATION
321                choice
322                    prompt "Default CAN baud rate"
323                    default BSP_USING_CAN500kBaud
324                    config BSP_USING_CAN1MBaud
325                        bool "CAN1MBaud"
326                    config BSP_USING_CAN800kBaud
327                        bool "CAN800kBaud"
328                    config BSP_USING_CAN500kBaud
329                        bool "CAN500kBaud"
330                    config BSP_USING_CAN250kBaud
331                        bool "CAN250kBaud"
332                    config BSP_USING_CAN125kBaud
333                        bool "CAN125kBaud"
334                    config BSP_USING_CAN100kBaud
335                        bool "CAN100kBaud"
336                    config BSP_USING_CAN50kBaud
337                        bool "CAN50kBaud"
338                    config BSP_USING_CAN20kBaud
339                        bool "CAN20kBaud"
340                    config BSP_USING_CAN10kBaud
341                        bool "CAN10kBaud"
342                endchoice
343                choice
344                    prompt "Default CAN mode"
345                    default BSP_USING_RT_CAN_MODE_NORMAL
346                    config BSP_USING_RT_CAN_MODE_NORMAL
347                        bool "RT_CAN_MODE_NORMAL"
348                    config BSP_USING_RT_CAN_MODE_LISTEN
349                        bool "RT_CAN_MODE_LISTEN"
350                    config BSP_USING_RT_CAN_MODE_LOOPBACK
351                        bool "RT_CAN_MODE_LOOPBACK"
352                    config BSP_USING_RT_CAN_MODE_LOOPBACKANLISTEN
353                        bool "RT_CAN_MODE_LOOPBACKANLISTEN"
354                endchoice
355
356                config BSP_USING_CAN_BAUD
357                int
358                default 1000000 if BSP_USING_CAN1MBaud
359                default 800000 if BSP_USING_CAN800kBaud
360                default 500000 if BSP_USING_CAN500kBaud
361                default 250000 if BSP_USING_CAN250kBaud
362                default 125000 if BSP_USING_CAN125kBaud
363                default 100000 if BSP_USING_CAN100kBaud
364                default 50000 if BSP_USING_CAN50kBaud
365                default 20000 if BSP_USING_CAN20kBaud
366                default 10000 if BSP_USING_CAN10kBaud
367
368                config BSP_USING_CAN_MODE
369                int
370                default 0 if BSP_USING_RT_CAN_MODE_NORMAL
371                default 1 if BSP_USING_RT_CAN_MODE_LISTEN
372                default 2 if BSP_USING_RT_CAN_MODE_LOOPBACK
373                default 3 if BSP_USING_RT_CAN_MODE_LOOPBACKANLISTEN
374
375            config CAN_DEFAULT_FILTER_TABLE_CONFIGURATION
376                choice
377                    prompt "Default filter id mode"
378                    default BSP_USING_CAN_STD_ID
379                    config BSP_USING_CAN_STD_ID
380                        bool "CAN_STD_ID"
381                    config BSP_USING_CAN_EXT_ID
382                        bool "CAN_EXT_ID"
383                endchoice
384
385                choice
386                    prompt "Default filter frame mode"
387                    default BSP_USING_CAN_DATA_FRAME
388                    config BSP_USING_CAN_DATA_FRAME
389                        bool "CAN_DATA_FRAME"
390                    config BSP_USING_CAN_REMOTE_FRAME
391                        bool "CAN_REMOTE_FRAME"
392                endchoice
393
394                config BSP_USING_CAN_ID_MODE
395                int
396                default 0 if BSP_USING_CAN_STD_ID
397                default 1 if BSP_USING_CAN_EXT_ID
398
399                config BSP_USING_CAN_FRAME_MODE
400                int
401                default 0 if BSP_USING_CAN_REMOTE_FRAME
402                default 1 if BSP_USING_CAN_DATA_FRAME
403
404                config BSP_USING_CAN_MSG_NUM
405                int "Default filter table number"
406                range 0 31
407                default 0
408
409                config BSP_USING_CAN_ID
410                hex "Default filter arbitration bit(ID)"
411                range 0 0x7FF if BSP_USING_CAN_STD_ID
412                default 0x541 if BSP_USING_CAN_STD_ID
413                range 0 0x1FFFFFFF if BSP_USING_CAN_EXT_ID
414                default 0x541 if BSP_USING_CAN_EXT_ID
415
416                config BSP_USING_CAN_MASK
417                hex "Default filter mask bit(MASK)"
418                range 0 0x7FF if BSP_USING_CAN_STD_ID
419                default 0x7FF if BSP_USING_CAN_STD_ID
420                range 0 0x1FFFFFFF if BSP_USING_CAN_EXT_ID
421                default 0x1FFFFFFF if BSP_USING_CAN_EXT_ID
422
423        endif
424
425    menuconfig BSP_USING_SDIO
426        bool "Enable SDIO"
427        depends on SOC_HT32F12345 || SOC_HT32F12365 || SOC_HT32F12366
428        default n
429        select RT_USING_SDIO if BSP_USING_SDIO
430        config BSP_USING_SDIO_NAME
431        depends on BSP_USING_SDIO
432        string "sdio device name"
433        default "sdio"
434
435    menuconfig BSP_USING_USBD
436        bool "Enable USB BUS"
437        default n
438        select RT_USING_USB_DEVICE if BSP_USING_USBD
439        config BSP_USING_USBD_NAME
440        depends on BSP_USING_USBD
441        string "usbd device name"
442        default "usbd"
443endmenu
444
445menu "Board extended module Drivers"
446
447endmenu
448
449endmenu
450