summaryrefslogtreecommitdiff
path: root/nuttx/arch/arm/src/kinetis/Kconfig
blob: ff1fd735c6049c88f9db3ec666d23d2c90ece9fa (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

comment "Kinetis Configuration Options"

choice
	prompt "Kinetis Chip Selection"
	default ARCH_CHIP_MK60N512VMD100
	depends on ARCH_CHIP_KINETIS

config ARCH_CHIP_MK20DX256VLH7
	bool "MK20DX256VLH7"
	select ARCH_FAMILY_K20

config ARCH_CHIP_MK40N512VLQ100
	bool "MK40N512VLQ100"
	select ARCH_FAMILY_K40

config ARCH_CHIP_MK40N512VMD100
	bool "MK40N512VMD100"
	select ARCH_FAMILY_K40

config ARCH_CHIP_MK40X128VLQ100
	bool "MK40X128VLQ100"
	select ARCH_FAMILY_K40

config ARCH_CHIP_MK40X128VMD100
	bool "MK40X128VMD100"
	select ARCH_FAMILY_K40

config ARCH_CHIP_MK40X256VLQ100
	bool "MK40X256VLQ100"
	select ARCH_FAMILY_K40

config ARCH_CHIP_MK40X256VMD100
	bool "MK40X256VMD100"
	select ARCH_FAMILY_K40

config ARCH_CHIP_MK60N256VLQ100
	bool "MK60N256VLQ100"
	select ARCH_FAMILY_K60

config ARCH_CHIP_MK60N256VMD100
	bool "MK60N256VMD100"
	select ARCH_FAMILY_K60

config ARCH_CHIP_MK60N512VLQ100
	bool "MK60N512VLQ100"
	select ARCH_FAMILY_K60

config ARCH_CHIP_MK60N512VMD100
	bool "MK60N512VMD100"
	select ARCH_FAMILY_K60

config ARCH_CHIP_MK60X256VLQ100
	bool "MK60X256VLQ100"
	select ARCH_FAMILY_K60

config ARCH_CHIP_MK60X256VMD100
	bool "MK60X256VMD100"
	select ARCH_FAMILY_K60

endchoice

# Chip families

config ARCH_FAMILY_K20
	bool
	default n

config ARCH_FAMILY_K40
	bool
	default n

config ARCH_FAMILY_K60
	bool
	default n

menu "Kinetis Peripheral Support"

config KINETIS_TRACE
	bool "Trace"
	default n
	---help---
		Enable trace clocking on power up.

config KINETIS_FLEXBUS
	bool "FlexBus"
	default n
	---help---
		Enable flexbus clocking on power up.

config KINETIS_UART0
	bool "UART0"
	default n
	select ARCH_HAVE_UART0
	---help---
		Support UART0

config KINETIS_UART1
	bool "UART1"
	default n
	select ARCH_HAVE_UART1
	---help---
		Support UART1

config KINETIS_UART2
	bool "UART2"
	default n
	select ARCH_HAVE_UART2
	---help---
		Support UART2

config KINETIS_UART3
	bool "UART3"
	default n
	select ARCH_HAVE_UART3
	---help---
		Support UART3

config KINETIS_UART4
	bool "UART4"
	default n
	select ARCH_HAVE_UART4
	---help---
		Support UART4

config KINETIS_UART5
	bool "UART5"
	default n
	select ARCH_HAVE_UART5
	---help---
		Support UART5

config KINETIS_ENET
	bool "Ethernet"
	default n
	depends on ARCH_FAMILY_K60
	select NET
	---help---
		Support Ethernet (K60 only)

config KINETIS_RNGB
	bool "Random number generator"
	default n
	depends on ARCH_FAMILY_K60
	---help---
		Support the random number generator(K60 only)

config KINETIS_FLEXCAN0
	bool "FlexCAN0"
	default n
	---help---
		Support FlexCAN0

config KINETIS_FLEXCAN1
	bool "FlexCAN1"
	default n
	---help---
		Support FlexCAN1

config KINETIS_SPI0
	bool "SPI0"
	default n
	---help---
		Support SPI0

config KINETIS_SPI1
	bool "SPI1"
	default n
	---help---
		Support SPI1

config KINETIS_SPI2
	bool "SPI2"
	default n
	---help---
		Support SPI2

config KINETIS_I2C0
	bool "I2C0"
	default n
	---help---
		Support I2C0

config KINETIS_I2C1
	bool "I2C1"
	default n
	---help---
		Support I2C1

config KINETIS_I2S
	bool "I2S"
	default n
	---help---
		Support I2S

config KINETIS_DAC0
	bool "DAC0"
	default n
	---help---
		Support DAC0

config KINETIS_DAC1
	bool "DAC1"
	default n
	---help---
		Support DAC1

config KINETIS_ADC0
	bool "ADC0"
	default n
	---help---
		Support ADC0

config KINETIS_ADC1
	bool "ADC1"
	default n
	---help---
		Support ADC1

config KINETIS_CMP
	bool "CMP"
	default n
	---help---
		Support CMP

config KINETIS_VREF
	bool "VREF"
	default n
	---help---
		Support VREF

config KINETIS_SDHC
	bool "SDHC"
	default n
	select ARCH_HAVE_SDIO
	---help---
		Support SD host controller

config KINETIS_FTM0
	bool "FTM0"
	default n
	---help---
		Support FlexTimer 0

config KINETIS_FTM1
	bool "FTM1"
	default n
	---help---
		Support FlexTimer 1

config KINETIS_FTM2
	bool "FTM2"
	default n
	---help---
		Support FlexTimer 2

config KINETIS_LPTIMER
	bool "Low power timer (LPTIMER)"
	default n
	---help---
		Support the low power timer

config KINETIS_RTC
	bool "RTC"
	default n
	---help---
		Support RTC

config KINETIS_SLCD
	bool "Segment LCD (SLCD)"
	default n
	depends on ARCH_FAMILY_K40
	---help---
		Support the segment LCD (K40 only)

config KINETIS_EWM
	bool "External watchdog (WVM)"
	default n
	---help---
		Support the external watchdog

config KINETIS_CMT
	bool "Carrier modulator transmitter (CMT)"
	default n
	---help---
		Support Carrier Modulator Transmitter

config KINETIS_USBOTG
	bool "USB OTG"
	default n
	---help---
		Support USB OTG (see also USBHOST and USBDEV)

config KINETIS_USBDCD
	bool "USB device controller"
	default n
	---help---
		Support the USB Device Charger Detection module

config KINETIS_LLWU
	bool "Low leakage wake-up unit (LLWU)"
	default n
	---help---
		Support the Low Leakage Wake-Up Unit

config KINETIS_TSI
	bool "Touchscreen interface (TSI)"
	default n
	---help---
		Support the touch screeen interface

config KINETIS_FTFL
	bool "FLASH (FTFL)"
	default n
	---help---
		Support FLASH

config KINETIS_DMA
	bool "DMA"
	default n
	---help---
		Support DMA

config KINETIS_CRC
	bool "CRC"
	default n
	---help---
		Support CRC

config KINETIS_PDB
	bool "Programmable delay block (PDB)"
	default n
	---help---
		Support the Programmable Delay Block

config KINETIS_PIT
	bool "Programmable interval timer (PIT)"
	default n
	---help---
		Support Programmable Interval Timers

endmenu

comment "Kinetis GPIO Interrupt Configuration"

config GPIO_IRQ
	bool "GPIO pin interrupts"
	---help---
		Enable support for interrupting GPIO pins

if GPIO_IRQ

config KINETIS_PORTAINTS
	bool "GPIOA interrupts"
	---help---
		Enable support for 32 interrupts from GPIO port A pins

config KINETIS_PORTBINTS
	bool "GPIOB interrupts"
	---help---
		Enable support for 32 interrupts from GPIO port B pins

config KINETIS_PORTCINTS
	bool "GPIOC interrupts"
	---help---
		Enable support for 32 interrupts from GPIO port C pins

config KINETIS_PORTDINTS
	bool "GPIOD interrupts"
	---help---
		Enable support for 32 interrupts from GPIO port D pins

config KINETIS_PORTEINTS
	bool "GPIOE interrupts"
	---help---
		Enable support for 32 interrupts from GPIO port E pins

endif

if KINETIS_ENET

comment "Kinetis Ethernet Configuration"

config ENET_ENHANCEDBD
	bool "Use enhanced buffer descriptors"
	default n
	---help---
		Use enhanced, 32-byte buffer descriptors

config ENET_NETHIFS
	int "Number of Ethernet interfaces"
	default 1
	---help---
		Number of Ethernet interfaces supported by the hardware.  Must be
		one for now.

config ENET_NRXBUFFERS
	int "Number of Ethernet Rx buffers"
	default 6
	---help---
		Number of Ethernet Rx buffers to use.  The size of one buffer is
		determined by NET_BUFSIZE

config ENET_NTXBUFFERS
	int "Number of Ethernet Tx buffers"
	default 2
	---help---
		Number of Ethernet Tx buffers to use. The size of one buffer is
		determined by NET_BUFSIZE

config ENET_PHYADDR
	int "PHY address"
	default 1
	---help---
		MII/RMII address of the PHY

config ENET_USEMII
	bool "Use MII interface"
	default n
	---help---
		The the MII PHY interface.  Default:  Use RMII interface

endif

if KINETIS_SDHC

comment "Kinetis SDHC Configuration"

config KINETIS_SDHC_ABSFREQ
	bool "Custom transfer frequencies"
	default n
	---help---
		Select SDCLK frequencies corresponding to various modes of operation.
		These values may be provided in either the NuttX configuration file
		or in the board.h file

		NOTE:  These settings are not currently used.  Since there are only
		four frequencies, it makes more sense to just "can" the fixed
		frequency prescaler and divider values.

if KINETIS_SDHC_ABSFREQ

config KINETIS_IDMODE_FREQ
	int "ID mode frequency"
	default 400000
	---help---
		Initial, ID mode SD frequency

config KINETIS_MMCXFR_FREQ
	int "MMC transfer frequency"
	default 20000000
	---help---
		Frequency to use for transferring data to/from an MMC card

config KINETIS_SD1BIT_FREQ
	int "SD 1-bit transfer frequency"
	default 20000000
	depends on SDIO_WIDTH_D1_ONLY
	---help---
		Frequency to use for transferring data to/from an SD card using on a single data liune.

config KINETIS_SD4BIT_FREQ
	int "SD 4-bit transfer frequency"
	default 20000000
	depends on !SDIO_WIDTH_D1_ONLY
	---help---
		Frequency to use for transferring data to/from an SD card using all four data lines.

endif

config KINETIS_SDHC_DMAPRIO
	int "SDHC DMA priority"
	depends on SDIO_DMA
	---help---
		SDHC DMA priority

endif

comment "Kinetis UART Configuration"

config KINETIS_UARTFIFOS
	bool "Enable UART0 FIFO"
	default n
	depends on KINETIS_UART0