summaryrefslogtreecommitdiffstats
path: root/nuttx/arch/arm/src/lpc17xx/Kconfig
blob: e8070b6922c57d3ba64747ac5699e1eef89a078d (plain)
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
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
#
# For a description of the syntax of this configuration file,
# see misc/tools/kconfig-language.txt.
#

choice
	prompt "NXP LPC17XX Chip Selection"
	default ARCH_CHIP_LPC1768
	depends on ARCH_CHIP_LPC17XX

config ARCH_CHIP_LPC1751
	bool "LPC1751"

config ARCH_CHIP_LPC1752
	bool "LPC1752"

config ARCH_CHIP_LPC1754
	bool "LPC1754"

config ARCH_CHIP_LPC1756
	bool "LPC1756"

config ARCH_CHIP_LPC1758
	bool "LPC1758"

config ARCH_CHIP_LPC1759
	bool "LPC1759"

config ARCH_CHIP_LPC1764
	bool "LPC1764"

config ARCH_CHIP_LPC1765
	bool "LPC1765"

config ARCH_CHIP_LPC1766
	bool "LPC1766"

config ARCH_CHIP_LPC1767
	bool "LPC1767"

config ARCH_CHIP_LPC1768
	bool "LPC1768"

config ARCH_CHIP_LPC1769
	bool "LPC1769"

endchoice

config ARCH_FAMILY_LPC175X
	bool
	default y if ARCH_CHIP_LPC1751 || ARCH_CHIP_LPC1752 || ARCH_CHIP_LPC1754 || ARCH_CHIP_LPC1756 || ARCH_CHIP_LPC1758 || ARCH_CHIP_LPC1759

config ARCH_FAMILY_LPC176X
	bool
	default y if ARCH_CHIP_LPC1764 || ARCH_CHIP_LPC1765 || ARCH_CHIP_LPC1766 || ARCH_CHIP_LPC1767 || ARCH_CHIP_LPC1768 || ARCH_CHIP_LPC1769

menu "LPC17xx Peripheral Support"

config LPC17_MAINOSC
	bool "Main oscillator"
	default y

config LPC17_PLL0
	bool "PLL0"
	default y

config LPC17_PLL1
	bool "PLL1"
	default y

config LPC17_ETHERNET
	bool "Ethernet"
	select NET
	select ARCH_HAS_PHY
	default n

config LPC17_USBHOST
	bool "USB host"
	select USBHOST
	default n

config LPC17_USBDEV
	bool "USB Device"
	select USBDEV
	default n

config LPC17_USBOTG
	bool "USB OTG"
	default n
	depends on LPC17_USBHOST && LPC17_USBDEV

config LPC17_UART0
	bool "UART0"
	select ARCH_HAS_UART0
	default n

config LPC17_UART1
	bool "UART1"
	select ARCH_HAS_UART1
	default n

config LPC17_UART2
	bool "UART2"
	select ARCH_HAS_UART2
	default n

config LPC17_UART3
	bool "UART3"
	select ARCH_HAS_UART3
	default n

config LPC17_CAN1
	bool "CAN1"
	select ARCH_HAS_UART4
	default n

config LPC17_CAN2
	bool "CAN2"
	default n

config LPC17_SPI
	bool "SPI"
	default n

config LPC17_SSP0
	bool "SSP0"
	default n

config LPC17_SSP1
	bool "SSP1"
	default n

config LPC17_I2C0
	bool "I2C0"
	default n

config LPC17_I2C1
	bool "I2C1"
	default n

config LPC17_I2C2
	bool "I2C2"
	default n

config LPC17_I2S
	bool "I2S"
	default n

config LPC17_TMR0
	bool "Timer 0"
	default n

config LPC17_TMR1
	bool "Timer 1"
	default n

config LPC17_TMR2
	bool "Timer 2"
	default n

config LPC17_TMR3
	bool "Timer 3"
	default n

config LPC17_RIT
	bool "RIT"
	default n

config LPC17_PWM
	bool "PWM"
	default n

config LPC17_MCPWM
	bool "MCPWM"
	default n

config LPC17_QEI
	bool "QEI"
	default n

config LPC17_RTC
	bool "RTC"
	default n

config LPC17_WDT
	bool "WDT"
	default n

config LPC17_ADC
	bool "ADC"
	default n

config LPC17_DAC
	bool "DAC"
	default n

config LPC17_GPDMA
	bool "GPDMA"
	default n

config LPC17_FLASH
	bool "FLASH"
	default n

endmenu

menu "Serial driver options"

config SERIAL_TERMIOS
	bool "Serial driver TERMIOS supported"
	depends on LPC17_UART0 || LPC17_UART1 || LPC17_UART2 || LPC17_UART3
	default n
	---help---
		Serial driver supports termios.h interfaces (tcsetattr, tcflush, etc.).
		If this is not defined, then the terminal settings (baud, parity, etc).
		are not configurable at runtime; serial streams cannot be flushed, etc..

config UART0_FLOWCONTROL
	bool "UART0 flow control"
	depends on LPC17_UART0
	default n
	---help---
		Enable UART0 flow control

config UART1_FLOWCONTROL
	bool "UART1 flow control"
	depends on LPC17_UART1
	default n
	---help---
		Enable UART1 flow control

config UART1_RINGINDICATOR
	bool "UART1 ring indicator"
	depends on LPC17_UART1
	default n
	---help---
		Enable UART1 ring indicator

config UART2_FLOWCONTROL
	bool "UART0 flow control"
	depends on LPC17_UART2
	default n
	---help---
		Enable UART2 flow control

config UART3_FLOWCONTROL
	bool "UART3 flow control"
	depends on LPC17_UART3
	default n
	---help---
		Enable UART3 flow control

endmenu

menu "ADC driver options"

config ADC0_AVERAGE
	int "ADC0 average"
	depends on LPC17_ADC
	default 200

config ADC0_MASK
	int "ADC0 mask"
	depends on LPC17_ADC
	default 1

config ADC0_SPS
	int "ADC0 SPS"
	depends on LPC17_ADC
	default 1000

endmenu

menu "CAN driver options"

config CAN_EXTID
	bool "CAN extended IDs"
	depends on LPC17_CAN1 || LPC17_CAN2
	default n
	---help---
		Enables support for the 29-bit extended ID.  Default Standard 11-bit IDs.

config CAN1_BAUD
	int "CAN1 BAUD"
	depends on LPC17_CAN1
	---help---
		CAN1 BAUD rate.  Required if LPC17_CAN1 is defined.

config CAN2_BAUD
	int "CAN2 BAUD"
	depends on LPC17_CAN2
	---help---
		CAN2 BAUD rate.  Required if CONFIG_LPC17_CAN2 is defined.

config CAN1_DIVISOR
	int "CAN1 CCLK divisor"
	depends on LPC17_CAN1
	default 4
	---help---
		CAN1 is clocked at CCLK divided by this number. (the CCLK frequency is divided
		by this number to get the CAN clock). Options = {1,2,4,6}. Default: 4.

config CAN2_DIVISOR
	int "CAN2 CCLK divisor"
	depends on LPC17_CAN2
	default 4
	---help---
		CAN2 is clocked at CCLK divided by this number. (the CCLK frequency is divided
		by this number to get the CAN clock). Options = {1,2,4,6}. Default: 4.

config CAN_TSEG1
	int "TSEG1 quanta"
	depends on LPC17_CAN1 || LPC17_CAN2
	default 6
	---help---
		The number of CAN time quanta in segment 1. Default: 6

config CAN_TSEG2
	int "TSEG2 quanta"
	depends on LPC17_CAN1 || LPC17_CAN2
	default 4
	---help---
		The number of CAN time quanta in segment 2. Default: 7

config CAN_SAM
	bool "CAN sampling"
	depends on LPC17_CAN1 || LPC17_CAN2
	default n
	---help---
		The bus is sampled 3 times (recommended for low to medium speed buses to spikes on the bus-line).

config CAN_LOOPBACK
	bool "CAN looopback mode"
	depends on LPC17_CAN1 || LPC17_CAN2
	default n
	---help---
		Enable CAN loopback mode

config CAN_REGDEBUG
	bool "Register level debug"
	depends on LPC17_CAN1 || LPC17_CAN2
	default n
	---help---
		Output detailed register-level CAN debug information.  Requires also DEBUG and DEBUG_CAN.

endmenu

config CONFIG_GPIO_IRQ
	bool "GPIO interrupt support"
	default n
	---help---
		Enable support for GPIO interrupts

menu "I2C driver options"

config I2C0_FREQ
	int "I2C0 frequency"
	depends on LPC17_I2C0
	default 100000

config I2C1_FREQ
	int "I2C1 frequency"
	depends on LPC17_I2C1
	default 100000

config I2C2_FREQ
	int "I2C2 frequency"
	depends on LPC17_I2C2
	default 100000

endmenu

menu "Ethernet driver options"

config PHY_AUTONEG
	bool "Autonegiation"
	depends on LPC17_ETHERNET
	---help---
		Enable auto-negotion

config PHY_SPEED100
	bool "100Mbit/Sec"
	depends on LPC17_ETHERNET && !PHY_AUTONEG
	---help---
		Select 100Mbit vs. 10Mbit speed.

config PHY_FDUPLEX
	bool "Full duplex"
	depends on LPC17_ETHERNET && !PHY_AUTONEG
	---help---
		Select full (vs. half) duplex

config NET_EMACRAM_SIZE
	int "EMAC RAM Size"
	depends on LPC17_ETHERNET
	default 16384
	---help---
		Size of EMAC RAM.  Default: 16384 bytes

config NET_NTXDESC
	int "Number of Tx descriptors"
	depends on LPC17_ETHERNET
	default 18
	---help---
		Configured number of Tx descriptors. Default: 18

config NET_NRXDESC
	int "Number of Rx descriptors"
	depends on LPC17_ETHERNET
	default 18
	---help---
		Configured number of Rx descriptors. Default: 18

config NET_PRIORITY
	int "Ethernet interrupt priority"
	depends on LPC17_ETHERNET
	default 0
	---help---
		Ethernet interrupt priority.  The is default is the higest priority (0).

config NET_WOL
	bool "Wake-up on LAN"
	depends on LPC17_ETHERNET
	default n
	---help---
		Enable Wake-up on Lan (not fully implemented).

config NET_REGDEBUG
	bool "Ethernet register-level debug"
	depends on LPC17_ETHERNET && DEBUG
	default n
	---help---
		Enable low level register debug.  Also needs DEBUG.

config NET_DUMPPACKET
	bool "Enable packet dumping"
	depends on LPC17_ETHERNET && DEBUG
	default n
	---help---
		Dump all received and transmitted packets. Also needs DEBUG.

config NET_HASH
	bool "Hashing"
	depends on LPC17_ETHERNET
	default n
	---help---
		Enable receipt of near-perfect match frames.

config NET_MULTICAST
	bool "Multicast"
	depends on LPC17_ETHERNET
	default y if NET_IGMP
	default n if !NET_IGMP
	---help---
		Enable receipt of multicast (and unicast) frames. Automatically set
		if NET_IGMP is selected.

endmenu

menu "USB device driver options"

config USBDEV_EP0_MAXSIZE
	int "EP0 Max packet size"
	depends on LPC17_USBDEV
	default 64
	---help---
		Endpoint 0 maximum packet size.  Default: 64

config LPC17_USBDEV_FRAME_INTERRUPT
	bool "USB frame interrupt"
	depends on LPC17_USBDEV
	default n
	---help---
		Handle USB Start-Of-Frame events.  Enable reading SOF from interrupt
		handler vs. simply reading on demand. Probably a bad idea... Unless
		there is some issue with sampling the SOF from hardware asynchronously.

config LPC17_USBDEV_EPFAST_INTERRUPT
	bool "EP fast interrupt handling"
	depends on LPC17_USBDEV
	default n
	---help---
		Enable high priority interrupts.  I have no idea why you might want to do that

config LPC17_USBDEV_NDMADESCRIPTORS
	int "Number of DMA descriptors"
	depends on LPC17_USBDEV
	default 8
	---help---
		Number of DMA descriptors to allocate in SRAM.  Default: 8

config LPC17_USBDEV_DMA
	bool "Enable USB device DMA"
	depends on LPC17_USBDEV
	default n
	---help---
		Enable lpc17xx-specific DMA support

config LPC17_USBDEV_NOVBUS
	bool "Disable VBUS support"
	depends on LPC17_USBDEV
	default n
	---help---
		Define if the hardware implementation does not support the VBUS signal

config LPC17_USBDEV_NOLED
	bool "Disable USB device LCD support"
	depends on LPC17_USBDEV
	default n
	---help---
		Define if the hardware implementation does not support the LED output

config LPC17_USBDEV_REGDEBUG
	bool "Register level debug"
	depends on LPC17_USBDEV && DEBUG
	default n
	---help---
		Output detailed register-level USB device debug information.  Requires also DEBUG.

endmenu

menu "USB host driver options"

config USBHOST_OHCIRAM_SIZE
	int "OHCI RAM Size"
	depends on LPC17_USBHOST
	default 16384
	---help---
		Total size of OHCI RAM (in AHB SRAM Bank 1).  Default: 16384

config USBHOST_NEDS
	int "Number of Endpoint Descriptors"
	depends on LPC17_USBHOST
	default 2
	---help---
		Number of endpoint descriptors.  Default: 2

config USBHOST_NTDS
	int "Number of transfer descriptors"
	depends on LPC17_USBHOST
	default 3
	---help---
		Number of transfer descriptors. Default: 3

config USBHOST_TDBUFFERS
	int "Number of descriptor buffers"
	depends on LPC17_USBHOST
	default 2
	---help---
		Number of transfer descriptor buffers.  Default: 2

config USBHOST_TDBUFSIZE
	int "Descriptor buffer size"
	depends on LPC17_USBHOST
	default 128
	---help---
		Size of one transfer descriptor buffer.  Default 128

config USBHOST_IOBUFSIZE
	int "I/O buffer size"
	depends on LPC17_USBHOST
	default 512
	---help---
		Size of one end-user I/O buffer.  This can be zero if the application
		can guarantee that all end-user I/O buffers reside in AHB SRAM.

config USBHOST_BULK_DISABLE
	bool "Disable bulk EPs"
	depends on LPC17_USBHOST
	default n
	---help---
		Disable support for bulk endpoints.

config USBHOST_INT_DISABLE
	bool "Disable interupt EPs"
	depends on LPC17_USBHOST
	default n
	---help---
		Disable support for interrupt endpoints.

config USBHOST_ISOC_DISABLE
	bool "Disable isochronous EPs"
	depends on LPC17_USBHOST
	default n
	---help---
		Disable support for isochronous endpoints.

config LPC17_USBHOST_REGDEBUG
	bool "Register level debug"
	depends on LPC17_USBHOST && DEBUG
	default n
	---help---
		Output detailed register-level USB host debug information.  Requires also DEBUG.

endmenu