1config BSP_USING_BL808
2    bool
3    select ARCH_RISCV64
4    select ARCH_RISCV_FPU_D
5    select RT_USING_COMPONENTS_INIT
6    select RT_USING_USER_MAIN
7    select RT_USING_CACHE
8    select ARCH_MM_MMU
9    select BL808_CORE_D0
10    select RT_USING_SYSTEM_WORKQUEUE
11    select RT_USING_DEVICE_OPS
12    default y
13
14config BL808_CORE_D0
15    bool
16    default y
17
18config C906_PLIC_PHY_ADDR
19    hex
20    default 0xe0000000
21
22config IRQ_MAX_NR
23    int
24    default 64
25
26config TIMER_CLK_FREQ
27    int
28    default 1000000
29
30menu "General Drivers Configuration"
31
32    menuconfig BSP_USING_UART3
33        bool "Enable UART3"
34        default y
35        if BSP_USING_UART3
36            choice
37                prompt "UART3 TX PIN"
38                default UART3_TX_USING_GPIO16
39
40                config UART3_TX_USING_GPIO0
41                    bool "GPIO_0"
42                config UART3_TX_USING_GPIO4
43                    bool "GPIO_4"
44                config UART3_TX_USING_GPIO8
45                    bool "GPIO_8"
46                config UART3_TX_USING_GPIO12
47                    bool "GPIO_12"
48                config UART3_TX_USING_GPIO16
49                    bool "GPIO_16"
50                config UART3_TX_USING_GPIO20
51                    bool "GPIO_20"
52                config UART3_TX_USING_GPIO24
53                    bool "GPIO_24"
54                config UART3_TX_USING_GPIO28
55                    bool "GPIO_28"
56                config UART3_TX_USING_GPIO32
57                    bool "GPIO_32"
58                config UART3_TX_USING_GPIO36
59                    bool "GPIO_36"
60                config UART3_TX_USING_GPIO40
61                    bool "GPIO_40"
62                config UART3_TX_USING_GPIO44
63                    bool "GPIO_44"
64            endchoice
65            choice
66                prompt "UART3 RX PIN"
67                default UART3_RX_USING_GPIO17
68
69                config UART3_RX_USING_GPIO1
70                    bool "GPIO_1"
71                config UART3_RX_USING_GPIO5
72                    bool "GPIO_5"
73                config UART3_RX_USING_GPIO9
74                    bool "GPIO_9"
75                config UART3_RX_USING_GPIO13
76                    bool "GPIO_12"
77                config UART3_RX_USING_GPIO17
78                    bool "GPIO_17"
79                config UART3_RX_USING_GPIO21
80                    bool "GPIO_21"
81                config UART3_RX_USING_GPIO25
82                    bool "GPIO_25"
83                config UART3_RX_USING_GPIO29
84                    bool "GPIO_29"
85                config UART3_RX_USING_GPIO33
86                    bool "GPIO_33"
87                config UART3_RX_USING_GPIO37
88                    bool "GPIO_37"
89                config UART3_RX_USING_GPIO41
90                    bool "GPIO_41"
91                config UART3_RX_USING_GPIO45
92                    bool "GPIO_45"
93            endchoice
94        endif
95
96    menuconfig BSP_USING_I2C
97        bool "Enable I2C BUS"
98        default n
99        select RT_USING_I2C
100        if BSP_USING_I2C
101            config BSP_USING_HW_I2C
102                bool "Enable Hardware I2C BUS"
103                default n
104            if BSP_USING_HW_I2C
105                menuconfig BSP_USING_I2C2
106                    bool "Enable I2C2 (hardware)"
107                    default n
108                    if BSP_USING_I2C2
109                        choice
110                            prompt "I2C2 SCL"
111                            default I2C2_SCL_USING_GPIO14
112
113                            config I2C2_SCL_USING_GPIO0
114                                bool "GPIO_0"
115                            config I2C2_SCL_USING_GPIO2
116                                bool "GPIO_2"
117                            config I2C2_SCL_USING_GPIO4
118                                bool "GPIO_4"
119                            config I2C2_SCL_USING_GPIO6
120                                bool "GPIO_6"
121                            config I2C2_SCL_USING_GPIO8
122                                bool "GPIO_8"
123                            config I2C2_SCL_USING_GPIO10
124                                bool "GPIO_10"
125                            config I2C2_SCL_USING_GPIO12
126                                bool "GPIO_12"
127                            config I2C2_SCL_USING_GPIO14
128                                bool "GPIO_14"
129                            config I2C2_SCL_USING_GPIO16
130                                bool "GPIO_16"
131                            config I2C2_SCL_USING_GPIO18
132                                bool "GPIO_18"
133                            config I2C2_SCL_USING_GPIO20
134                                bool "GPIO_20"
135                            config I2C2_SCL_USING_GPIO22
136                                bool "GPIO_22"
137                            config I2C2_SCL_USING_GPIO24
138                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
139                                bool "GPIO_8"
140                            config I2C2_SCL_USING_GPIO26
141                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
142                                bool "GPIO_26"
143                            config I2C2_SCL_USING_GPIO28
144                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
145                                bool "GPIO_28"
146                            config I2C2_SCL_USING_GPIO30
147                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
148                                bool "GPIO_30"
149                            config I2C2_SCL_USING_GPIO32
150                                depends on BSP_USING_BL61X || BSP_USING_BL808
151                                bool "GPIO_32"
152                            config I2C2_SCL_USING_GPIO34
153                                depends on BSP_USING_BL61X || BSP_USING_BL808
154                                bool "GPIO_34"
155                            config I2C2_SDA_USING_GPIO36
156                                depends on BSP_USING_BL808
157                                bool "GPIO_36"
158                            config I2C2_SDA_USING_GPIO38
159                                depends on BSP_USING_BL808
160                                bool "GPIO_38"
161                            config I2C2_SDA_USING_GPIO40
162                                depends on BSP_USING_BL808
163                                bool "GPIO_40"
164                            config I2C3_SDA_USING_GPIO42
165                                depends on BSP_USING_BL808
166                                bool "GPIO_42"
167                            config I2C2_SDA_USING_GPIO44
168                                depends on BSP_USING_BL808
169                                bool "GPIO_44"
170                        endchoice
171
172                        choice
173                            prompt "I2C2 SDA"
174                            default I2C2_SDA_USING_GPIO15
175
176                            config I2C2_SDA_USING_GPIO1
177                                bool "GPIO_1"
178                            config I2C2_SDA_USING_GPIO3
179                                bool "GPIO_3"
180                            config I2C2_SDA_USING_GPIO5
181                                bool "GPIO_5"
182                            config I2C2_SDA_USING_GPIO7
183                                bool "GPIO_7"
184                            config I2C2_SDA_USING_GPIO9
185                                bool "GPIO_9"
186                            config I2C2_SDA_USING_GPIO11
187                                bool "GPIO_11"
188                            config I2C2_SDA_USING_GPIO13
189                                bool "GPIO_13"
190                            config I2C2_SDA_USING_GPIO15
191                                bool "GPIO_15"
192                            config I2C2_SDA_USING_GPIO17
193                                bool "GPIO_17"
194                            config I2C2_SDA_USING_GPIO19
195                                bool "GPIO_19"
196                            config I2C2_SDA_USING_GPIO21
197                                bool "GPIO_21"
198                            config I2C2_SDA_USING_GPIO23
199                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
200                                bool "GPIO_23"
201                            config I2C2_SDA_USING_GPIO25
202                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
203                                bool "GPIO_25"
204                            config I2C2_SDA_USING_GPIO27
205                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
206                                bool "GPIO_27"
207                            config I2C2_SDA_USING_GPIO29
208                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
209                                bool "GPIO_29"
210                            config I2C2_SDA_USING_GPIO31
211                                depends on BSP_USING_BL61X || BSP_USING_BL70X || BSP_USING_BL808
212                                bool "GPIO_31"
213                            config I2C2_SDA_USING_GPIO33
214                                depends on BSP_USING_BL61X || BSP_USING_BL808
215                                bool "GPIO_33"
216                            config I2C2_SDA_USING_GPIO35
217                                depends on BSP_USING_BL808
218                                bool "GPIO_35"
219                            config I2C2_SDA_USING_GPIO37
220                                depends on BSP_USING_BL808
221                                bool "GPIO_37"
222                            config I2C2_SDA_USING_GPIO39
223                                depends on BSP_USING_BL808
224                                bool "GPIO_39"
225                            config I2C2_SDA_USING_GPIO41
226                                depends on BSP_USING_BL808
227                                bool "GPIO_41"
228                            config I2C2_SDA_USING_GPIO43
229                                depends on BSP_USING_BL808
230                                bool "GPIO_43"
231                            config I2C2_SDA_USING_GPIO45
232                                depends on BSP_USING_BL808
233                                bool "GPIO_45"
234                            endchoice
235
236                        config I2C2_FREQUENCY
237                            int "I2C2 Frequency"
238                            default 400000
239                    endif
240
241
242                menuconfig BSP_USING_I2C3
243                    depends on BSP_USING_BL61X || BSP_USING_BL808
244                    bool "Enable I2C3 (hardware)"
245                    default n
246                    if BSP_USING_I2C3
247                        choice
248                            prompt "I2C3 SCL"
249                            default I2C3_SCL_USING_GPIO0
250
251                            config I2C3_SCL_USING_GPIO0
252                                bool "GPIO_0"
253                            config I2C3_SCL_USING_GPIO2
254                                bool "GPIO_2"
255                            config I2C3_SCL_USING_GPIO4
256                                bool "GPIO_4"
257                            config I2C3_SCL_USING_GPIO6
258                                bool "GPIO_6"
259                            config I2C3_SCL_USING_GPIO8
260                                bool "GPIO_8"
261                            config I2C3_SCL_USING_GPIO10
262                                bool "GPIO_10"
263                            config I2C3_SCL_USING_GPIO12
264                                bool "GPIO_12"
265                            config I2C3_SCL_USING_GPIO14
266                                bool "GPIO_14"
267                            config I2C3_SCL_USING_GPIO16
268                                bool "GPIO_16"
269                            config I2C3_SCL_USING_GPIO18
270                                bool "GPIO_18"
271                            config I2C3_SCL_USING_GPIO20
272                                bool "GPIO_20"
273                            config I2C3_SCL_USING_GPIO22
274                                bool "GPIO_22"
275                            config I2C3_SCL_USING_GPIO24
276                                bool "GPIO_24"
277                            config I2C3_SCL_USING_GPIO26
278                                bool "GPIO_26"
279                            config I2C3_SCL_USING_GPIO28
280                                bool "GPIO_28"
281                            config I2C3_SCL_USING_GPIO30
282                                bool "GPIO_30"
283                            config I2C3_SCL_USING_GPIO32
284                                bool "GPIO_32"
285                            config I2C3_SCL_USING_GPIO34
286                                bool "GPIO_34"
287                            config I2C3_SDA_USING_GPIO36
288                                depends on BSP_USING_BL808
289                                bool "GPIO_36"
290                            config I2C3_SDA_USING_GPIO38
291                                depends on BSP_USING_BL808
292                                bool "GPIO_38"
293                            config I2C3_SDA_USING_GPIO40
294                                depends on BSP_USING_BL808
295                                bool "GPIO_40"
296                            config I2C3_SDA_USING_GPIO42
297                                depends on BSP_USING_BL808
298                                bool "GPIO_42"
299                            config I2C3_SDA_USING_GPIO44
300                                depends on BSP_USING_BL808
301                                bool "GPIO_44"
302                        endchoice
303
304                        choice
305                            prompt "I2C3 SDA"
306                            default I2C3_SDA_USING_GPIO1
307
308                            config I2C3_SDA_USING_GPIO1
309                                bool "GPIO_1"
310                            config I2C3_SDA_USING_GPIO3
311                                bool "GPIO_3"
312                            config I2C3_SDA_USING_GPIO5
313                                bool "GPIO_5"
314                            config I2C3_SDA_USING_GPIO7
315                                bool "GPIO_7"
316                            config I2C3_SDA_USING_GPIO9
317                                bool "GPIO_9"
318                            config I2C3_SDA_USING_GPIO11
319                                bool "GPIO_11"
320                            config I2C3_SDA_USING_GPIO13
321                                bool "GPIO_13"
322                            config I2C3_SDA_USING_GPIO15
323                                bool "GPIO_15"
324                            config I2C3_SDA_USING_GPIO17
325                                bool "GPIO_17"
326                            config I2C3_SDA_USING_GPIO19
327                                bool "GPIO_19"
328                            config I2C3_SDA_USING_GPIO21
329                                bool "GPIO_21"
330                            config I2C3_SDA_USING_GPIO23
331                                bool "GPIO_23"
332                            config I2C3_SDA_USING_GPIO25
333                                bool "GPIO_25"
334                            config I2C3_SDA_USING_GPIO27
335                                bool "GPIO_27"
336                            config I2C3_SDA_USING_GPIO29
337                                bool "GPIO_29"
338                            config I2C3_SDA_USING_GPIO31
339                                bool "GPIO_31"
340                            config I2C3_SDA_USING_GPIO33
341                                bool "GPIO_33"
342                            config I2C3_SDA_USING_GPIO35
343                                depends on BSP_USING_BL808
344                                bool "GPIO_35"
345                            config I2C3_SDA_USING_GPIO37
346                                depends on BSP_USING_BL808
347                                bool "GPIO_37"
348                            config I2C3_SDA_USING_GPIO39
349                                depends on BSP_USING_BL808
350                                bool "GPIO_39"
351                            config I2C3_SDA_USING_GPIO41
352                                depends on BSP_USING_BL808
353                                bool "GPIO_41"
354                            config I2C3_SDA_USING_GPIO43
355                                depends on BSP_USING_BL808
356                                bool "GPIO_43"
357                            config I2C3_SDA_USING_GPIO45
358                                depends on BSP_USING_BL808
359                                bool "GPIO_45"
360                        endchoice
361
362                        config I2C3_FREQUENCY
363                            int "I2C3 Frequency"
364                            default 400000
365                    endif
366
367            endif
368        endif
369
370        menuconfig BSP_USING_SPI
371        bool "Enable SPI"
372        select RT_USING_SPI
373        select RT_USING_PIN
374        default n
375
376        if BSP_USING_SPI
377            choice
378                prompt "SPI SCK PIN"
379                default SPI_SCK_USING_GPIO19
380
381                config SPI_SCK_USING_GPIO3
382                    bool "GPIO_3"
383                config SPI_SCK_USING_GPIO7
384                    bool "GPIO_7"
385                config SPI_SCK_USING_GPIO11
386                    bool "GPIO_11"
387                config SPI_SCK_USING_GPIO15
388                    bool "GPIO_15"
389                config SPI_SCK_USING_GPIO19
390                    bool "GPIO_19"
391                config SPI_SCK_USING_GPIO23
392                    bool "GPIO_23"
393                config SPI_SCK_USING_GPIO27
394                    bool "GPIO_27"
395                config SPI_SCK_USING_GPIO31
396                    bool "GPIO_31"
397                config SPI_SCK_USING_GPIO35
398                    bool "GPIO_35"
399                config SPI_SCK_USING_GPIO39
400                    bool "GPIO_39"
401                config SPI_SCK_USING_GPIO43
402                    bool "GPIO_43"
403            endchoice
404
405            choice
406                prompt "SPI MISO PIN"
407                default SPI_MISO_USING_GPIO22
408
409                config SPI_MISO_USING_GPIO2
410                    bool "GPIO_2"
411                config SPI_MISO_USING_GPIO6
412                    bool "GPIO_6"
413                config SPI_MISO_USING_GPIO10
414                    bool "GPIO_10"
415                config SPI_MISO_USING_GPIO14
416                    bool "GPIO_14"
417                config SPI_MISO_USING_GPIO18
418                    bool "GPIO_18"
419                config SPI_MISO_USING_GPIO22
420                    bool "GPIO_22"
421                config SPI_MISO_USING_GPIO26
422                    bool "GPIO_26"
423                config SPI_MISO_USING_GPIO30
424                    bool "GPIO_30"
425                config SPI_MISO_USING_GPIO34
426                    bool "GPIO_34"
427                config SPI_MISO_USING_GPIO38
428                    depends on BSP_USING_BL808
429                    bool "GPIO_38"
430                config SPI_MISO_USING_GPIO42
431                    depends on BSP_USING_BL808
432                    bool "GPIO_42"
433            endchoice
434
435            choice
436                prompt "SPI MOSI PIN"
437                default SPI_MOSI_USING_GPIO21
438
439                config SPI_MOSI_USING_GPIO1
440                    bool "GPIO_1"
441                config SPI_MOSI_USING_GPIO5
442                    bool "GPIO_5"
443                config SPI_MOSI_USING_GPIO9
444                    bool "GPIO_9"
445                config SPI_MOSI_USING_GPIO13
446                    bool "GPIO_13"
447                config SPI_MOSI_USING_GPIO17
448                    bool "GPIO_17"
449                config SPI_MOSI_USING_GPIO21
450                    bool "GPIO_21"
451                config SPI_MOSI_USING_GPIO25
452                    bool "GPIO_25"
453                config SPI_MOSI_USING_GPIO29
454                    bool "GPIO_29"
455                config SPI_MOSI_USING_GPIO33
456                    bool "GPIO_33"
457                config SPI_MOSI_USING_GPIO37
458                    bool "GPIO_37"
459                config SPI_MOSI_USING_GPIO41
460                    bool "GPIO_41"
461                config SPI_MOSI_USING_GPIO45
462                    bool "GPIO_45"
463            endchoice
464
465         endif
466endmenu
467