@@ -14,6 +14,183 @@ config RT_USING_SPI
1414 default n
1515 endif
1616
17+ menuconfig RT_USING_SOFT_SPI
18+ bool "Use GPIO to soft simulate SPI"
19+ default n
20+ select RT_USING_PIN
21+ select RT_USING_SPI_BITOPS
22+ if RT_USING_SOFT_SPI
23+ menuconfig RT_USING_SOFT_SPI0
24+ bool "Enable SPI0 Bus (software simulation)"
25+ default y
26+ if RT_USING_SOFT_SPI0
27+ config RT_SOFT_SPI0_SCK_PIN
28+ int "SCK pin number"
29+ range 0 32767
30+ default 1
31+ config RT_SOFT_SPI0_MISO_PIN
32+ int "MISO pin number"
33+ range 0 32767
34+ default 2
35+ config RT_SOFT_SPI0_MOSI_PIN
36+ int "MOSI pin number"
37+ range 0 32767
38+ default 3
39+ config RT_SOFT_SPI0_BUS_NAME
40+ string "Bus name"
41+ default "spi0"
42+ config RT_SOFT_SPI0_TIMING_DELAY
43+ int "Timing delay (us)"
44+ range 0 32767
45+ default 1
46+ endif
47+ menuconfig RT_USING_SOFT_SPI1
48+ bool "Enable SPI1 Bus (software simulation)"
49+ default y
50+ if RT_USING_SOFT_SPI1
51+ config RT_SOFT_SPI1_SCK_PIN
52+ int "SCK pin number"
53+ range 0 32767
54+ default 4
55+ config RT_SOFT_SPI1_MISO_PIN
56+ int "MISO pin number"
57+ range 0 32767
58+ default 5
59+ config RT_SOFT_SPI1_MOSI_PIN
60+ int "MOSI pin number"
61+ range 0 32767
62+ default 6
63+ config RT_SOFT_SPI1_BUS_NAME
64+ string "Bus name"
65+ default "spi1"
66+ config RT_SOFT_SPI1_TIMING_DELAY
67+ int "Timing delay (us)"
68+ range 0 32767
69+ default 1
70+ endif
71+ menuconfig RT_USING_SOFT_SPI2
72+ bool "Enable SPI2 Bus (software simulation)"
73+ default n
74+ if RT_USING_SOFT_SPI2
75+ config RT_SOFT_SPI2_SCK_PIN
76+ int "SCK pin number"
77+ range 0 32767
78+ default 7
79+ config RT_SOFT_SPI2_MISO_PIN
80+ int "MISO pin number"
81+ range 0 32767
82+ default 8
83+ config RT_SOFT_SPI2_MOSI_PIN
84+ int "MOSI pin number"
85+ range 0 32767
86+ default 9
87+ config RT_SOFT_SPI2_BUS_NAME
88+ string "Bus name"
89+ default "spi2"
90+ config RT_SOFT_SPI2_TIMING_DELAY
91+ int "Timing delay (us)"
92+ range 0 32767
93+ default 1
94+ endif
95+ menuconfig RT_USING_SOFT_SPI3
96+ bool "Enable SPI3 Bus (software simulation)"
97+ default n
98+ if RT_USING_SOFT_SPI3
99+ config RT_SOFT_SPI3_SCK_PIN
100+ int "SCK pin number"
101+ range 0 32767
102+ default 10
103+ config RT_SOFT_SPI3_MISO_PIN
104+ int "MISO pin number"
105+ range 0 32767
106+ default 11
107+ config RT_SOFT_SPI3_MOSI_PIN
108+ int "MOSI pin number"
109+ range 0 32767
110+ default 12
111+ config RT_SOFT_SPI3_BUS_NAME
112+ string "Bus name"
113+ default "spi3"
114+ config RT_SOFT_SPI3_TIMING_DELAY
115+ int "Timing delay (us)"
116+ range 0 32767
117+ default 1
118+ endif
119+ menuconfig RT_USING_SOFT_SPI4
120+ bool "Enable SPI4 Bus (software simulation)"
121+ default n
122+ if RT_USING_SOFT_SPI4
123+ config RT_SOFT_SPI4_SCK_PIN
124+ int "SCK pin number"
125+ range 0 32767
126+ default 13
127+ config RT_SOFT_SPI4_MISO_PIN
128+ int "MISO pin number"
129+ range 0 32767
130+ default 14
131+ config RT_SOFT_SPI4_MOSI_PIN
132+ int "MOSI pin number"
133+ range 0 32767
134+ default 15
135+ config RT_SOFT_SPI4_BUS_NAME
136+ string "Bus name"
137+ default "spi4"
138+ config RT_SOFT_SPI4_TIMING_DELAY
139+ int "Timing delay (us)"
140+ range 0 32767
141+ default 1
142+ endif
143+ menuconfig RT_USING_SOFT_SPI5
144+ bool "Enable SPI5 Bus (software simulation)"
145+ default n
146+ if RT_USING_SOFT_SPI5
147+ config RT_SOFT_SPI5_SCK_PIN
148+ int "SCK pin number"
149+ range 0 32767
150+ default 16
151+ config RT_SOFT_SPI5_MISO_PIN
152+ int "MISO pin number"
153+ range 0 32767
154+ default 17
155+ config RT_SOFT_SPI5_MOSI_PIN
156+ int "MOSI pin number"
157+ range 0 32767
158+ default 18
159+ config RT_SOFT_SPI5_BUS_NAME
160+ string "Bus name"
161+ default "spi5"
162+ config RT_SOFT_SPI5_TIMING_DELAY
163+ int "Timing delay (us)"
164+ range 0 32767
165+ default 1
166+ endif
167+ menuconfig RT_USING_SOFT_SPI6
168+ bool "Enable SPI6 Bus (software simulation)"
169+ default n
170+ if RT_USING_SOFT_SPI6
171+ config RT_SOFT_SPI6_SCK_PIN
172+ int "SCK pin number"
173+ range 0 32767
174+ default 19
175+ config RT_SOFT_SPI6_MISO_PIN
176+ int "MISO pin number"
177+ range 0 32767
178+ default 20
179+ config RT_SOFT_SPI6_MOSI_PIN
180+ int "MOSI pin number"
181+ range 0 32767
182+ default 21
183+ config RT_SOFT_SPI6_BUS_NAME
184+ string "Bus name"
185+ default "spi6"
186+ config RT_SOFT_SPI6_TIMING_DELAY
187+ int "Timing delay (us)"
188+ range 0 32767
189+ default 1
190+ endif
191+
192+ endif
193+
17194 config RT_USING_QSPI
18195 bool "Enable QSPI mode"
19196 default n
0 commit comments