]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blob - arch/arm/boot/dts/overlays/README
BCM2708: Add core Device Tree support
[mirror_ubuntu-artful-kernel.git] / arch / arm / boot / dts / overlays / README
1 Introduction
2 ============
3
4 This directory contains Device Tree overlays. Device Tree makes it possible
5 to support many hardware configurations with a single kernel and without the
6 need to explicitly load or blacklist kernel modules. Note that this isn't a
7 "pure" Device Tree configuration (c.f. MACH_BCM2835) - some on-board devices
8 are still configured by the board support code, but the intention is to
9 eventually reach that goal.
10
11 On Raspberry Pi, Device Tree usage is controlled from /boot/config.txt. By
12 default, the Raspberry Pi kernel boots with device tree enabled. You can
13 completely disable DT usage (for now) by adding:
14
15 device_tree=
16
17 to your config.txt, which should cause your Pi to revert to the old way of
18 doing things after a reboot.
19
20 In /boot you will find a .dtb for each base platform. This describes the
21 hardware that is part of the Raspberry Pi board. The loader (start.elf and its
22 siblings) selects the .dtb file appropriate for the platform by name, and reads
23 it into memory. At this point, all of the optional interfaces (i2c, i2s, spi)
24 are disabled, but they can be enabled using Device Tree parameters:
25
26 dtparam=i2c=on,i2s=on,spi=on
27
28 However, this shouldn't be necessary in many use cases because loading an
29 overlay that requires one of those interfaces will cause it to be enabled
30 automatically, and it is advisable to only enable interfaces if they are
31 needed.
32
33 Configuring additional, optional hardware is done using Device Tree overlays
34 (see below).
35
36 raspi-config
37 ============
38
39 The Advanced Options section of the raspi-config utility can enable and disable
40 Device Tree use, as well as toggling the I2C and SPI interfaces. Note that it
41 is possible to both enable an interface and blacklist the driver, if for some
42 reason you should want to defer the loading.
43
44 Modules
45 =======
46
47 As well as describing the hardware, Device Tree also gives enough information
48 to allow suitable driver modules to be located and loaded, with the corollary
49 that unneeded modules are not loaded. As a result it should be possible to
50 remove lines from /etc/modules, and /etc/modprobe.d/raspi-blacklist.conf can
51 have its contents deleted (or commented out).
52
53 Using Overlays
54 ==============
55
56 Overlays are loaded using the "dtoverlay" directive. As an example, consider
57 the popular lirc-rpi module, the Linux Infrared Remote Control driver. In the
58 pre-DT world this would be loaded from /etc/modules, with an explicit
59 "modprobe lirc-rpi" command, or programmatically by lircd. With DT enabled,
60 this becomes a line in config.txt:
61
62 dtoverlay=lirc-rpi
63
64 This causes the file /boot/overlays/lirc-rpi.dtbo to be loaded. By
65 default it will use GPIOs 17 (out) and 18 (in), but this can be modified using
66 DT parameters:
67
68 dtoverlay=lirc-rpi,gpio_out_pin=17,gpio_in_pin=13
69
70 Parameters always have default values, although in some cases (e.g. "w1-gpio")
71 it is necessary to provided multiple overlays in order to get the desired
72 behaviour. See the list of overlays below for a description of the parameters
73 and their defaults.
74
75 The Overlay and Parameter Reference
76 ===================================
77
78 N.B. When editing this file, please preserve the indentation levels to make it
79 simple to parse programmatically. NO HARD TABS.
80
81
82 Name: <The base DTB>
83 Info: Configures the base Raspberry Pi hardware
84 Load: <loaded automatically>
85 Params:
86 audio Set to "on" to enable the onboard ALSA audio
87 interface (default "off")
88
89 i2c_arm Set to "on" to enable the ARM's i2c interface
90 (default "off")
91
92 i2c_vc Set to "on" to enable the i2c interface
93 usually reserved for the VideoCore processor
94 (default "off")
95
96 i2c An alias for i2c_arm
97
98 i2c_arm_baudrate Set the baudrate of the ARM's i2c interface
99 (default "100000")
100
101 i2c_vc_baudrate Set the baudrate of the VideoCore i2c interface
102 (default "100000")
103
104 i2c_baudrate An alias for i2c_arm_baudrate
105
106 i2s Set to "on" to enable the i2s interface
107 (default "off")
108
109 spi Set to "on" to enable the spi interfaces
110 (default "off")
111
112 random Set to "on" to enable the hardware random
113 number generator (default "on")
114
115 sd_overclock Clock (in MHz) to use when the MMC framework
116 requests 50MHz
117
118 sd_force_pio Disable DMA support for SD driver (default off)
119
120 sd_pio_limit Number of blocks above which to use DMA for
121 SD card (default 1)
122
123 sd_debug Enable debug output from SD driver (default off)
124
125 uart0 Set to "off" to disable uart0 (default "on")
126
127 uart1 Set to "on" or "off" to enable or disable uart1
128 (default varies)
129
130 watchdog Set to "on" to enable the hardware watchdog
131 (default "off")
132
133 act_led_trigger Choose which activity the LED tracks.
134 Use "heartbeat" for a nice load indicator.
135 (default "mmc")
136
137 act_led_activelow Set to "on" to invert the sense of the LED
138 (default "off")
139 N.B. For Pi3 see pi3-act-led overlay.
140
141 act_led_gpio Set which GPIO to use for the activity LED
142 (in case you want to connect it to an external
143 device)
144 (default "16" on a non-Plus board, "47" on a
145 Plus or Pi 2)
146 N.B. For Pi3 see pi3-act-led overlay.
147
148 pwr_led_trigger
149 pwr_led_activelow
150 pwr_led_gpio
151 As for act_led_*, but using the PWR LED.
152 Not available on Model A/B boards.
153
154 N.B. It is recommended to only enable those interfaces that are needed.
155 Leaving all interfaces enabled can lead to unwanted behaviour (i2c_vc
156 interfering with Pi Camera, I2S and SPI hogging GPIO pins, etc.)
157 Note also that i2c, i2c_arm and i2c_vc are aliases for the physical
158 interfaces i2c0 and i2c1. Use of the numeric variants is still possible
159 but deprecated because the ARM/VC assignments differ between board
160 revisions. The same board-specific mapping applies to i2c_baudrate,
161 and the other i2c baudrate parameters.
162
163
164 Name: adau1977-adc
165 Info: Overlay for activation of ADAU1977 ADC codec over I2C for control
166 and I2S for data.
167 Load: dtoverlay=adau1977-adc
168 Params: <None>
169
170
171 Name: adau7002-simple
172 Info: Overlay for the activation of ADAU7002 stereo PDM to I2S converter.
173 Load: dtoverlay=adau7002-simple,<param>=<val>
174 Params: card-name Override the default, "adau7002", card name.
175
176
177 Name: ads1015
178 Info: Overlay for activation of Texas Instruments ADS1015 ADC over I2C
179 Load: dtoverlay=ads1015,<param>=<val>
180 Params: addr I2C bus address of device. Set based on how the
181 addr pin is wired. (default=0x48 assumes addr
182 is pulled to GND)
183 cha_enable Enable virtual channel a. (default=true)
184 cha_cfg Set the configuration for virtual channel a.
185 (default=4 configures this channel for the
186 voltage at A0 with respect to GND)
187 cha_datarate Set the datarate (samples/sec) for this channel.
188 (default=4 sets 1600 sps)
189 cha_gain Set the gain of the Programmable Gain
190 Amplifier for this channel. (default=2 sets the
191 full scale of the channel to 2.048 Volts)
192
193 Channel (ch) parameters can be set for each enabled channel.
194 A maximum of 4 channels can be enabled (letters a thru d).
195 For more information refer to the device datasheet at:
196 http://www.ti.com/lit/ds/symlink/ads1015.pdf
197
198
199 Name: ads1115
200 Info: Texas Instruments ADS1115 ADC
201 Load: dtoverlay=ads1115,<param>[=<val>]
202 Params: addr I2C bus address of device. Set based on how the
203 addr pin is wired. (default=0x48 assumes addr
204 is pulled to GND)
205 cha_enable Enable virtual channel a.
206 cha_cfg Set the configuration for virtual channel a.
207 (default=4 configures this channel for the
208 voltage at A0 with respect to GND)
209 cha_datarate Set the datarate (samples/sec) for this channel.
210 (default=7 sets 860 sps)
211 cha_gain Set the gain of the Programmable Gain
212 Amplifier for this channel. (Default 1 sets the
213 full scale of the channel to 4.096 Volts)
214
215 Channel parameters can be set for each enabled channel.
216 A maximum of 4 channels can be enabled (letters a thru d).
217 For more information refer to the device datasheet at:
218 http://www.ti.com/lit/ds/symlink/ads1115.pdf
219
220
221 Name: ads7846
222 Info: ADS7846 Touch controller
223 Load: dtoverlay=ads7846,<param>=<val>
224 Params: cs SPI bus Chip Select (default 1)
225 speed SPI bus speed (default 2MHz, max 3.25MHz)
226 penirq GPIO used for PENIRQ. REQUIRED
227 penirq_pull Set GPIO pull (default 0=none, 2=pullup)
228 swapxy Swap x and y axis
229 xmin Minimum value on the X axis (default 0)
230 ymin Minimum value on the Y axis (default 0)
231 xmax Maximum value on the X axis (default 4095)
232 ymax Maximum value on the Y axis (default 4095)
233 pmin Minimum reported pressure value (default 0)
234 pmax Maximum reported pressure value (default 65535)
235 xohms Touchpanel sensitivity (X-plate resistance)
236 (default 400)
237
238 penirq is required and usually xohms (60-100) has to be set as well.
239 Apart from that, pmax (255) and swapxy are also common.
240 The rest of the calibration can be done with xinput-calibrator.
241 See: github.com/notro/fbtft/wiki/FBTFT-on-Raspian
242 Device Tree binding document:
243 www.kernel.org/doc/Documentation/devicetree/bindings/input/ads7846.txt
244
245
246 Name: akkordion-iqdacplus
247 Info: Configures the Digital Dreamtime Akkordion Music Player (based on the
248 OEM IQAudIO DAC+ or DAC Zero module).
249 Load: dtoverlay=akkordion-iqdacplus,<param>=<val>
250 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
251 Digital volume control. Enable with
252 dtoverlay=akkordion-iqdacplus,24db_digital_gain
253 (The default behaviour is that the Digital
254 volume control is limited to a maximum of
255 0dB. ie. it can attenuate but not provide
256 gain. For most users, this will be desired
257 as it will prevent clipping. By appending
258 the 24db_digital_gain parameter, the Digital
259 volume control will allow up to 24dB of
260 gain. If this parameter is enabled, it is the
261 responsibility of the user to ensure that
262 the Digital volume control is set to a value
263 that does not result in clipping/distortion!)
264
265
266 Name: allo-boss-dac-pcm512x-audio
267 Info: Configures the Allo Boss DAC audio cards.
268 Load: dtoverlay=allo-boss-dac-pcm512x-audio,<param>
269 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
270 Digital volume control. Enable with
271 "dtoverlay=allo-boss-dac-pcm512x-audio,
272 24db_digital_gain"
273 (The default behaviour is that the Digital
274 volume control is limited to a maximum of
275 0dB. ie. it can attenuate but not provide
276 gain. For most users, this will be desired
277 as it will prevent clipping. By appending
278 the 24db_digital_gain parameter, the Digital
279 volume control will allow up to 24dB of
280 gain. If this parameter is enabled, it is the
281 responsibility of the user to ensure that
282 the Digital volume control is set to a value
283 that does not result in clipping/distortion!)
284 slave Force Boss DAC into slave mode, using Pi a
285 master for bit clock and frame clock. Enable
286 with "dtoverlay=allo-boss-dac-pcm512x-audio,
287 slave"
288
289
290 Name: allo-digione
291 Info: Configures the Allo Digione audio card
292 Load: dtoverlay=allo-digione
293 Params: <None>
294
295
296 Name: allo-piano-dac-pcm512x-audio
297 Info: Configures the Allo Piano DAC (2.0/2.1) audio cards.
298 (NB. This initial support is for 2.0 channel audio ONLY! ie. stereo.
299 The subwoofer outputs on the Piano 2.1 are not currently supported!)
300 Load: dtoverlay=allo-piano-dac-pcm512x-audio,<param>
301 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
302 Digital volume control.
303 (The default behaviour is that the Digital
304 volume control is limited to a maximum of
305 0dB. ie. it can attenuate but not provide
306 gain. For most users, this will be desired
307 as it will prevent clipping. By appending
308 the 24db_digital_gain parameter, the Digital
309 volume control will allow up to 24dB of
310 gain. If this parameter is enabled, it is the
311 responsibility of the user to ensure that
312 the Digital volume control is set to a value
313 that does not result in clipping/distortion!)
314
315
316 Name: allo-piano-dac-plus-pcm512x-audio
317 Info: Configures the Allo Piano DAC (2.1) audio cards.
318 Load: dtoverlay=allo-piano-dac-plus-pcm512x-audio,<param>
319 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
320 Digital volume control.
321 (The default behaviour is that the Digital
322 volume control is limited to a maximum of
323 0dB. ie. it can attenuate but not provide
324 gain. For most users, this will be desired
325 as it will prevent clipping. By appending
326 the 24db_digital_gain parameter, the Digital
327 volume control will allow up to 24dB of
328 gain. If this parameter is enabled, it is the
329 responsibility of the user to ensure that
330 the Digital volume control is set to a value
331 that does not result in clipping/distortion!)
332 glb_mclk This option is only with Kali board. If enabled,
333 MCLK for Kali is used and PLL is disabled for
334 better voice quality. (default Off)
335
336
337 Name: at86rf233
338 Info: Configures the Atmel AT86RF233 802.15.4 low-power WPAN transceiver,
339 connected to spi0.0
340 Load: dtoverlay=at86rf233,<param>=<val>
341 Params: interrupt GPIO used for INT (default 23)
342 reset GPIO used for Reset (default 24)
343 sleep GPIO used for Sleep (default 25)
344 speed SPI bus speed in Hz (default 3000000)
345 trim Fine tuning of the internal capacitance
346 arrays (0=+0pF, 15=+4.5pF, default 15)
347
348
349 Name: audioinjector-addons
350 Info: Configures the audioinjector.net audio add on soundcards
351 Load: dtoverlay=audioinjector-addons
352 Params: <None>
353
354
355 Name: audioinjector-wm8731-audio
356 Info: Configures the audioinjector.net audio add on soundcard
357 Load: dtoverlay=audioinjector-wm8731-audio
358 Params: <None>
359
360
361 Name: audremap
362 Info: Switches PWM sound output to pins 12 (Right) & 13 (Left)
363 Load: dtoverlay=audremap,<param>=<val>
364 Params: swap_lr Reverse the channel allocation, which will also
365 swap the audio jack outputs (default off)
366 enable_jack Don't switch off the audio jack output
367 (default off)
368
369
370 Name: bmp085_i2c-sensor
371 Info: This overlay is now deprecated - see i2c-sensor
372 Load: dtoverlay=bmp085_i2c-sensor
373 Params: <None>
374
375
376 Name: dht11
377 Info: Overlay for the DHT11/DHT21/DHT22 humidity/temperature sensors
378 Also sometimes found with the part number(s) AM230x.
379 Load: dtoverlay=dht11,<param>=<val>
380 Params: gpiopin GPIO connected to the sensor's DATA output.
381 (default 4)
382
383
384 Name: dionaudio-loco
385 Info: Configures the Dion Audio LOCO DAC-AMP
386 Load: dtoverlay=dionaudio-loco
387 Params: <None>
388
389
390 Name: dionaudio-loco-v2
391 Info: Configures the Dion Audio LOCO-V2 DAC-AMP
392 Load: dtoverlay=dionaudio-loco-v2,<param>=<val>
393 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
394 Digital volume control. Enable with
395 "dtoverlay=hifiberry-dacplus,24db_digital_gain"
396 (The default behaviour is that the Digital
397 volume control is limited to a maximum of
398 0dB. ie. it can attenuate but not provide
399 gain. For most users, this will be desired
400 as it will prevent clipping. By appending
401 the 24dB_digital_gain parameter, the Digital
402 volume control will allow up to 24dB of
403 gain. If this parameter is enabled, it is the
404 responsibility of the user to ensure that
405 the Digital volume control is set to a value
406 that does not result in clipping/distortion!)
407
408
409 Name: dpi18
410 Info: Overlay for a generic 18-bit DPI display
411 This uses GPIOs 0-21 (so no I2C, uart etc.), and activates the output
412 2-3 seconds after the kernel has started.
413 Load: dtoverlay=dpi18
414 Params: <None>
415
416
417 Name: dpi24
418 Info: Overlay for a generic 24-bit DPI display
419 This uses GPIOs 0-27 (so no I2C, uart etc.), and activates the output
420 2-3 seconds after the kernel has started.
421 Load: dtoverlay=dpi24
422 Params: <None>
423
424
425 Name: dwc-otg
426 Info: Selects the dwc_otg USB controller driver which has fiq support. This
427 is the default on all except the Pi Zero which defaults to dwc2.
428 Load: dtoverlay=dwc-otg
429 Params: <None>
430
431
432 Name: dwc2
433 Info: Selects the dwc2 USB controller driver
434 Load: dtoverlay=dwc2,<param>=<val>
435 Params: dr_mode Dual role mode: "host", "peripheral" or "otg"
436
437 g-rx-fifo-size Size of rx fifo size in gadget mode
438
439 g-np-tx-fifo-size Size of non-periodic tx fifo size in gadget
440 mode
441
442
443 [ The ds1307-rtc overlay has been deleted. See i2c-rtc. ]
444
445
446 Name: enc28j60
447 Info: Overlay for the Microchip ENC28J60 Ethernet Controller on SPI0
448 Load: dtoverlay=enc28j60,<param>=<val>
449 Params: int_pin GPIO used for INT (default 25)
450
451 speed SPI bus speed (default 12000000)
452
453
454 Name: enc28j60-spi2
455 Info: Overlay for the Microchip ENC28J60 Ethernet Controller on SPI2
456 Load: dtoverlay=enc28j60-spi2,<param>=<val>
457 Params: int_pin GPIO used for INT (default 39)
458
459 speed SPI bus speed (default 12000000)
460
461
462 Name: fe-pi-audio
463 Info: Configures the Fe-Pi Audio Sound Card
464 Load: dtoverlay=fe-pi-audio
465 Params: <None>
466
467
468 Name: goodix
469 Info: Enables I2C connected Goodix gt9271 multiple touch controller using
470 GPIOs 4 and 17 (pins 7 and 11 on GPIO header) for interrupt and reset.
471 Load: dtoverlay=goodix,<param>=<val>
472 Params: interrupt GPIO used for interrupt (default 4)
473 reset GPIO used for reset (default 17)
474
475
476 Name: googlevoicehat-soundcard
477 Info: Configures the Google voiceHAT soundcard
478 Load: dtoverlay=googlevoicehat-soundcard
479 Params: <None>
480
481
482 Name: gpio-ir
483 Info: Use GPIO pin as rc-core style infrared receiver input. The rc-core-
484 based gpio_ir_recv driver maps received keys directly to a
485 /dev/input/event* device, all decoding is done by the kernel - LIRC is
486 not required! The key mapping and other decoding parameters can be
487 configured by "ir-keytable" tool.
488 Load: dtoverlay=gpio-ir,<param>=<val>
489 Params: gpio_pin Input pin number. Default is 18.
490
491 gpio_pull Desired pull-up/down state (off, down, up)
492 Default is "down".
493
494 rc-map-name Default rc keymap (can also be changed by
495 ir-keytable), defaults to "rc-rc6-mce"
496
497
498 Name: gpio-poweroff
499 Info: Drives a GPIO high or low on poweroff (including halt)
500 Load: dtoverlay=gpio-poweroff,<param>=<val>
501 Params: gpiopin GPIO for signalling (default 26)
502
503 active_low Set if the power control device requires a
504 high->low transition to trigger a power-down.
505 Note that this will require the support of a
506 custom dt-blob.bin to prevent a power-down
507 during the boot process, and that a reboot
508 will also cause the pin to go low.
509
510
511 Name: gpio-shutdown
512 Info: Initiates a shutdown when GPIO pin changes. The given GPIO pin
513 is configured as an input key that generates KEY_POWER events.
514 This event is handled by systemd-logind by initiating a
515 shutdown. Systemd versions older than 225 need an udev rule
516 enable listening to the input device:
517
518 ACTION!="REMOVE", SUBSYSTEM=="input", KERNEL=="event*", \
519 SUBSYSTEMS=="platform", DRIVERS=="gpio-keys", \
520 ATTRS{keys}=="116", TAG+="power-switch"
521
522 This overlay only handles shutdown. After shutdown, the system
523 can be powered up again by driving GPIO3 low. The default
524 configuration uses GPIO3 with a pullup, so if you connect a
525 button between GPIO3 and GND (pin 5 and 6 on the 40-pin header),
526 you get a shutdown and power-up button.
527 Load: dtoverlay=gpio-shutdown,<param>=<val>
528 Params: gpio_pin GPIO pin to trigger on (default 3)
529
530 active_low When this is 1 (active low), a falling
531 edge generates a key down event and a
532 rising edge generates a key up event.
533 When this is 0 (active high), this is
534 reversed. The default is 1 (active low).
535
536 gpio_pull Desired pull-up/down state (off, down, up)
537 Default is "up".
538
539 Note that the default pin (GPIO3) has an
540 external pullup.
541
542
543 Name: hifiberry-amp
544 Info: Configures the HifiBerry Amp and Amp+ audio cards
545 Load: dtoverlay=hifiberry-amp
546 Params: <None>
547
548
549 Name: hifiberry-dac
550 Info: Configures the HifiBerry DAC audio card
551 Load: dtoverlay=hifiberry-dac
552 Params: <None>
553
554
555 Name: hifiberry-dacplus
556 Info: Configures the HifiBerry DAC+ audio card
557 Load: dtoverlay=hifiberry-dacplus,<param>=<val>
558 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
559 Digital volume control. Enable with
560 "dtoverlay=hifiberry-dacplus,24db_digital_gain"
561 (The default behaviour is that the Digital
562 volume control is limited to a maximum of
563 0dB. ie. it can attenuate but not provide
564 gain. For most users, this will be desired
565 as it will prevent clipping. By appending
566 the 24dB_digital_gain parameter, the Digital
567 volume control will allow up to 24dB of
568 gain. If this parameter is enabled, it is the
569 responsibility of the user to ensure that
570 the Digital volume control is set to a value
571 that does not result in clipping/distortion!)
572 slave Force DAC+ Pro into slave mode, using Pi as
573 master for bit clock and frame clock.
574
575
576 Name: hifiberry-digi
577 Info: Configures the HifiBerry Digi and Digi+ audio card
578 Load: dtoverlay=hifiberry-digi
579 Params: <None>
580
581
582 Name: hifiberry-digi-pro
583 Info: Configures the HifiBerry Digi+ Pro audio card
584 Load: dtoverlay=hifiberry-digi-pro
585 Params: <None>
586
587
588 Name: hy28a
589 Info: HY28A - 2.8" TFT LCD Display Module by HAOYU Electronics
590 Default values match Texy's display shield
591 Load: dtoverlay=hy28a,<param>=<val>
592 Params: speed Display SPI bus speed
593
594 rotate Display rotation {0,90,180,270}
595
596 fps Delay between frame updates
597
598 debug Debug output level {0-7}
599
600 xohms Touchpanel sensitivity (X-plate resistance)
601
602 resetgpio GPIO used to reset controller
603
604 ledgpio GPIO used to control backlight
605
606
607 Name: hy28b
608 Info: HY28B - 2.8" TFT LCD Display Module by HAOYU Electronics
609 Default values match Texy's display shield
610 Load: dtoverlay=hy28b,<param>=<val>
611 Params: speed Display SPI bus speed
612
613 rotate Display rotation {0,90,180,270}
614
615 fps Delay between frame updates
616
617 debug Debug output level {0-7}
618
619 xohms Touchpanel sensitivity (X-plate resistance)
620
621 resetgpio GPIO used to reset controller
622
623 ledgpio GPIO used to control backlight
624
625
626 Name: i2c-bcm2708
627 Info: Fall back to the i2c_bcm2708 driver for the i2c_arm bus.
628 Load: dtoverlay=i2c-bcm2708
629 Params: <None>
630
631
632 Name: i2c-gpio
633 Info: Adds support for software i2c controller on gpio pins
634 Load: dtoverlay=i2c-gpio,<param>=<val>
635 Params: i2c_gpio_sda GPIO used for I2C data (default "23")
636
637 i2c_gpio_scl GPIO used for I2C clock (default "24")
638
639 i2c_gpio_delay_us Clock delay in microseconds
640 (default "2" = ~100kHz)
641
642
643 Name: i2c-mux
644 Info: Adds support for a number of I2C bus multiplexers on i2c_arm
645 Load: dtoverlay=i2c-mux,<param>=<val>
646 Params: pca9542 Select the NXP PCA9542 device
647
648 pca9545 Select the NXP PCA9545 device
649
650 pca9548 Select the NXP PCA9548 device
651
652 addr Change I2C address of the device (default 0x70)
653
654
655 [ The i2c-mux-pca9548a overlay has been deleted. See i2c-mux. ]
656
657
658 Name: i2c-pwm-pca9685a
659 Info: Adds support for an NXP PCA9685A I2C PWM controller on i2c_arm
660 Load: dtoverlay=i2c-pwm-pca9685a,<param>=<val>
661 Params: addr I2C address of PCA9685A (default 0x40)
662
663
664 Name: i2c-rtc
665 Info: Adds support for a number of I2C Real Time Clock devices
666 Load: dtoverlay=i2c-rtc,<param>=<val>
667 Params: abx80x Select one of the ABx80x family:
668 AB0801, AB0803, AB0804, AB0805,
669 AB1801, AB1803, AB1804, AB1805
670
671 ds1307 Select the DS1307 device
672
673 ds1339 Select the DS1339 device
674
675 ds3231 Select the DS3231 device
676
677 mcp7940x Select the MCP7940x device
678
679 mcp7941x Select the MCP7941x device
680
681 pcf2127 Select the PCF2127 device
682
683 pcf8523 Select the PCF8523 device
684
685 pcf8563 Select the PCF8563 device
686
687 trickle-diode-type Diode type for trickle charge - "standard" or
688 "schottky" (ABx80x only)
689
690 trickle-resistor-ohms Resistor value for trickle charge (DS1339,
691 ABx80x)
692
693 wakeup-source Specify that the RTC can be used as a wakeup
694 source
695
696
697 Name: i2c-rtc-gpio
698 Info: Adds support for a number of I2C Real Time Clock devices
699 using the software i2c controller
700 Load: dtoverlay=i2c-rtc-gpio,<param>=<val>
701 Params: abx80x Select one of the ABx80x family:
702 AB0801, AB0803, AB0804, AB0805,
703 AB1801, AB1803, AB1804, AB1805
704
705 ds1307 Select the DS1307 device
706
707 ds1339 Select the DS1339 device
708
709 ds3231 Select the DS3231 device
710
711 mcp7940x Select the MCP7940x device
712
713 mcp7941x Select the MCP7941x device
714
715 pcf2127 Select the PCF2127 device
716
717 pcf8523 Select the PCF8523 device
718
719 pcf8563 Select the PCF8563 device
720
721 trickle-diode-type Diode type for trickle charge - "standard" or
722 "schottky" (ABx80x only)
723
724 trickle-resistor-ohms Resistor value for trickle charge (DS1339,
725 ABx80x)
726
727 wakeup-source Specify that the RTC can be used as a wakeup
728 source
729
730 i2c_gpio_sda GPIO used for I2C data (default "23")
731
732 i2c_gpio_scl GPIO used for I2C clock (default "24")
733
734 i2c_gpio_delay_us Clock delay in microseconds
735 (default "2" = ~100kHz)
736
737
738 Name: i2c-sensor
739 Info: Adds support for a number of I2C barometric pressure and temperature
740 sensors on i2c_arm
741 Load: dtoverlay=i2c-sensor,<param>=<val>
742 Params: addr Set the address for the BME280, BMP280, TMP102
743 or LM75
744
745 bme280 Select the Bosch Sensortronic BME280
746 Valid addresses 0x76-0x77, default 0x76
747
748 bmp085 Select the Bosch Sensortronic BMP085
749
750 bmp180 Select the Bosch Sensortronic BMP180
751
752 bmp280 Select the Bosch Sensortronic BMP280
753 Valid addresses 0x76-0x77, default 0x76
754
755 htu21 Select the HTU21 temperature and humidity sensor
756
757 lm75 Select the Maxim LM75 temperature sensor
758 Valid addresses 0x48-0x4f, default 0x4f
759
760 lm75addr Deprecated - use addr parameter instead
761
762 si7020 Select the Silicon Labs Si7013/20/21 humidity/
763 temperature sensor
764
765 tmp102 Select the Texas Instruments TMP102 temp sensor
766 Valid addresses 0x48-0x4b, default 0x48
767
768
769 Name: i2c0-bcm2708
770 Info: Enable the i2c_bcm2708 driver for the i2c0 bus. Not all pin combinations
771 are usable on all platforms.
772 Load: dtoverlay=i2c0-bcm2708,<param>=<val>
773 Params: sda0_pin GPIO pin for SDA0 (deprecated - use pins_*)
774 scl0_pin GPIO pin for SCL0 (deprecated - use pins_*)
775 pins_0_1 Use pins 0 and 1 (default)
776 pins_28_29 Use pins 28 and 29
777 pins_44_45 Use pins 44 and 45
778 pins_46_47 Use pins 46 and 47
779
780
781 Name: i2c1-bcm2708
782 Info: Enable the i2c_bcm2708 driver for the i2c1 bus
783 Load: dtoverlay=i2c1-bcm2708,<param>=<val>
784 Params: sda1_pin GPIO pin for SDA1 (2 or 44 - default 2)
785 scl1_pin GPIO pin for SCL1 (3 or 45 - default 3)
786 pin_func Alternative pin function (4 (alt0), 6 (alt2) -
787 default 4)
788
789
790 Name: i2s-gpio28-31
791 Info: move I2S function block to GPIO 28 to 31
792 Load: dtoverlay=i2s-gpio28-31
793 Params: <None>
794
795
796 Name: iqaudio-dac
797 Info: Configures the IQaudio DAC audio card
798 Load: dtoverlay=iqaudio-dac,<param>
799 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
800 Digital volume control. Enable with
801 "dtoverlay=iqaudio-dac,24db_digital_gain"
802 (The default behaviour is that the Digital
803 volume control is limited to a maximum of
804 0dB. ie. it can attenuate but not provide
805 gain. For most users, this will be desired
806 as it will prevent clipping. By appending
807 the 24db_digital_gain parameter, the Digital
808 volume control will allow up to 24dB of
809 gain. If this parameter is enabled, it is the
810 responsibility of the user to ensure that
811 the Digital volume control is set to a value
812 that does not result in clipping/distortion!)
813
814
815 Name: iqaudio-dacplus
816 Info: Configures the IQaudio DAC+ audio card
817 Load: dtoverlay=iqaudio-dacplus,<param>=<val>
818 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
819 Digital volume control. Enable with
820 "dtoverlay=iqaudio-dacplus,24db_digital_gain"
821 (The default behaviour is that the Digital
822 volume control is limited to a maximum of
823 0dB. ie. it can attenuate but not provide
824 gain. For most users, this will be desired
825 as it will prevent clipping. By appending
826 the 24db_digital_gain parameter, the Digital
827 volume control will allow up to 24dB of
828 gain. If this parameter is enabled, it is the
829 responsibility of the user to ensure that
830 the Digital volume control is set to a value
831 that does not result in clipping/distortion!)
832 auto_mute_amp If specified, unmute/mute the IQaudIO amp when
833 starting/stopping audio playback.
834 unmute_amp If specified, unmute the IQaudIO amp once when
835 the DAC driver module loads.
836
837
838 Name: iqaudio-digi-wm8804-audio
839 Info: Configures the IQAudIO Digi WM8804 audio card
840 Load: dtoverlay=iqaudio-digi-wm8804-audio,<param>=<val>
841 Params: card_name Override the default, "IQAudIODigi", card name.
842 dai_name Override the default, "IQAudIO Digi", dai name.
843 dai_stream_name Override the default, "IQAudIO Digi HiFi",
844 dai stream name.
845
846
847 Name: justboom-dac
848 Info: Configures the JustBoom DAC HAT, Amp HAT, DAC Zero and Amp Zero audio
849 cards
850 Load: dtoverlay=justboom-dac,<param>=<val>
851 Params: 24db_digital_gain Allow gain to be applied via the PCM512x codec
852 Digital volume control. Enable with
853 "dtoverlay=justboom-dac,24db_digital_gain"
854 (The default behaviour is that the Digital
855 volume control is limited to a maximum of
856 0dB. ie. it can attenuate but not provide
857 gain. For most users, this will be desired
858 as it will prevent clipping. By appending
859 the 24dB_digital_gain parameter, the Digital
860 volume control will allow up to 24dB of
861 gain. If this parameter is enabled, it is the
862 responsibility of the user to ensure that
863 the Digital volume control is set to a value
864 that does not result in clipping/distortion!)
865
866
867 Name: justboom-digi
868 Info: Configures the JustBoom Digi HAT and Digi Zero audio cards
869 Load: dtoverlay=justboom-digi
870 Params: <None>
871
872
873 Name: lirc-rpi
874 Info: Configures lirc-rpi (Linux Infrared Remote Control for Raspberry Pi)
875 Consult the module documentation for more details.
876 Load: dtoverlay=lirc-rpi,<param>=<val>
877 Params: gpio_out_pin GPIO for output (default "17")
878
879 gpio_in_pin GPIO for input (default "18")
880
881 gpio_in_pull Pull up/down/off on the input pin
882 (default "down")
883
884 sense Override the IR receive auto-detection logic:
885 "0" = force active-high
886 "1" = force active-low
887 "-1" = use auto-detection
888 (default "-1")
889
890 softcarrier Turn the software carrier "on" or "off"
891 (default "on")
892
893 invert "on" = invert the output pin (default "off")
894
895 debug "on" = enable additional debug messages
896 (default "off")
897
898
899 Name: mcp23017
900 Info: Configures the MCP23017 I2C GPIO expander
901 Load: dtoverlay=mcp23017,<param>=<val>
902 Params: gpiopin Gpio pin connected to the INTA output of the
903 MCP23017 (default: 4)
904
905 addr I2C address of the MCP23017 (default: 0x20)
906
907
908 Name: mcp23s17
909 Info: Configures the MCP23S08/17 SPI GPIO expanders.
910 If devices are present on SPI1 or SPI2, those interfaces must be enabled
911 with one of the spi1-1/2/3cs and/or spi2-1/2/3cs overlays.
912 If interrupts are enabled for a device on a given CS# on a SPI bus, that
913 device must be the only one present on that SPI bus/CS#.
914 Load: dtoverlay=mcp23s17,<param>=<val>
915 Params: s08-spi<n>-<m>-present 4-bit integer, bitmap indicating MCP23S08
916 devices present on SPI<n>, CS#<m>
917
918 s17-spi<n>-<m>-present 8-bit integer, bitmap indicating MCP23S17
919 devices present on SPI<n>, CS#<m>
920
921 s08-spi<n>-<m>-int-gpio integer, enables interrupts on a single
922 MCP23S08 device on SPI<n>, CS#<m>, specifies
923 the GPIO pin to which INT output of MCP23S08
924 is connected.
925
926 s17-spi<n>-<m>-int-gpio integer, enables mirrored interrupts on a
927 single MCP23S17 device on SPI<n>, CS#<m>,
928 specifies the GPIO pin to which either INTA
929 or INTB output of MCP23S17 is connected.
930
931
932 Name: mcp2515-can0
933 Info: Configures the MCP2515 CAN controller on spi0.0
934 Load: dtoverlay=mcp2515-can0,<param>=<val>
935 Params: oscillator Clock frequency for the CAN controller (Hz)
936
937 spimaxfrequency Maximum SPI frequence (Hz)
938
939 interrupt GPIO for interrupt signal
940
941
942 Name: mcp2515-can1
943 Info: Configures the MCP2515 CAN controller on spi0.1
944 Load: dtoverlay=mcp2515-can1,<param>=<val>
945 Params: oscillator Clock frequency for the CAN controller (Hz)
946
947 spimaxfrequency Maximum SPI frequence (Hz)
948
949 interrupt GPIO for interrupt signal
950
951
952 Name: mcp3008
953 Info: Configures MCP3008 A/D converters
954 For devices on spi1 or spi2, the interfaces should be enabled
955 with one of the spi1-1/2/3cs and/or spi2-1/2/3cs overlays.
956 Load: dtoverlay=mcp3008,<param>[=<val>]
957 Params: spi<n>-<m>-present boolean, configure device at spi<n>, cs<m>
958 spi<n>-<m>-speed integer, set the spi bus speed for this device
959
960
961 Name: midi-uart0
962 Info: Configures UART0 (ttyAMA0) so that a requested 38.4kbaud actually gets
963 31.25kbaud, the frequency required for MIDI
964 Load: dtoverlay=midi-uart0
965 Params: <None>
966
967
968 Name: midi-uart1
969 Info: Configures UART1 (ttyS0) so that a requested 38.4kbaud actually gets
970 31.25kbaud, the frequency required for MIDI
971 Load: dtoverlay=midi-uart1
972 Params: <None>
973
974
975 Name: mmc
976 Info: Selects the bcm2835-mmc SD/MMC driver, optionally with overclock
977 Load: dtoverlay=mmc,<param>=<val>
978 Params: overclock_50 Clock (in MHz) to use when the MMC framework
979 requests 50MHz
980
981
982 Name: mpu6050
983 Info: Overlay for i2c connected mpu6050 imu
984 Load: dtoverlay=mpu6050,<param>=<val>
985 Params: interrupt GPIO pin for interrupt (default 4)
986
987
988 Name: mz61581
989 Info: MZ61581 display by Tontec
990 Load: dtoverlay=mz61581,<param>=<val>
991 Params: speed Display SPI bus speed
992
993 rotate Display rotation {0,90,180,270}
994
995 fps Delay between frame updates
996
997 txbuflen Transmit buffer length (default 32768)
998
999 debug Debug output level {0-7}
1000
1001 xohms Touchpanel sensitivity (X-plate resistance)
1002
1003
1004 [ The pcf2127-rtc overlay has been deleted. See i2c-rtc. ]
1005
1006
1007 [ The pcf8523-rtc overlay has been deleted. See i2c-rtc. ]
1008
1009
1010 [ The pcf8563-rtc overlay has been deleted. See i2c-rtc. ]
1011
1012
1013 Name: pi3-act-led
1014 Info: Pi3 uses a GPIO expander to drive the LEDs which can only be accessed
1015 from the VPU. There is a special driver for this with a separate DT
1016 node, which has the unfortunate consequence of breaking the
1017 act_led_gpio and act_led_activelow dtparams.
1018 This overlay changes the GPIO controller back to the standard one and
1019 restores the dtparams.
1020 Load: dtoverlay=pi3-act-led,<param>=<val>
1021 Params: activelow Set to "on" to invert the sense of the LED
1022 (default "off")
1023
1024 gpio Set which GPIO to use for the activity LED
1025 (in case you want to connect it to an external
1026 device)
1027 REQUIRED
1028
1029
1030 Name: pi3-disable-bt
1031 Info: Disable Pi3 Bluetooth and restore UART0/ttyAMA0 over GPIOs 14 & 15
1032 N.B. To disable the systemd service that initialises the modem so it
1033 doesn't use the UART, use 'sudo systemctl disable hciuart'.
1034 Load: dtoverlay=pi3-disable-bt
1035 Params: <None>
1036
1037
1038 Name: pi3-disable-wifi
1039 Info: Disable Pi3 onboard WiFi
1040 Load: dtoverlay=pi3-disable-wifi
1041 Params: <None>
1042
1043
1044 Name: pi3-miniuart-bt
1045 Info: Switch Pi3 Bluetooth function to use the mini-UART (ttyS0) and restore
1046 UART0/ttyAMA0 over GPIOs 14 & 15. Note that this may reduce the maximum
1047 usable baudrate.
1048 N.B. It is also necessary to edit /lib/systemd/system/hciuart.service
1049 and replace ttyAMA0 with ttyS0, unless you have a system with udev rules
1050 that create /dev/serial0 and /dev/serial1, in which case use
1051 /dev/serial1 instead because it will always be correct. Furthermore,
1052 you must also set core_freq=250 in config.txt or the miniuart will not
1053 work.
1054 Load: dtoverlay=pi3-miniuart-bt
1055 Params: <None>
1056
1057
1058 Name: piscreen
1059 Info: PiScreen display by OzzMaker.com
1060 Load: dtoverlay=piscreen,<param>=<val>
1061 Params: speed Display SPI bus speed
1062
1063 rotate Display rotation {0,90,180,270}
1064
1065 fps Delay between frame updates
1066
1067 debug Debug output level {0-7}
1068
1069 xohms Touchpanel sensitivity (X-plate resistance)
1070
1071
1072 Name: piscreen2r
1073 Info: PiScreen 2 with resistive TP display by OzzMaker.com
1074 Load: dtoverlay=piscreen2r,<param>=<val>
1075 Params: speed Display SPI bus speed
1076
1077 rotate Display rotation {0,90,180,270}
1078
1079 fps Delay between frame updates
1080
1081 debug Debug output level {0-7}
1082
1083 xohms Touchpanel sensitivity (X-plate resistance)
1084
1085
1086 Name: pisound
1087 Info: Configures the Blokas Labs pisound card
1088 Load: dtoverlay=pisound
1089 Params: <None>
1090
1091
1092 Name: pitft22
1093 Info: Adafruit PiTFT 2.2" screen
1094 Load: dtoverlay=pitft22,<param>=<val>
1095 Params: speed Display SPI bus speed
1096
1097 rotate Display rotation {0,90,180,270}
1098
1099 fps Delay between frame updates
1100
1101 debug Debug output level {0-7}
1102
1103
1104 Name: pitft28-capacitive
1105 Info: Adafruit PiTFT 2.8" capacitive touch screen
1106 Load: dtoverlay=pitft28-capacitive,<param>=<val>
1107 Params: speed Display SPI bus speed
1108
1109 rotate Display rotation {0,90,180,270}
1110
1111 fps Delay between frame updates
1112
1113 debug Debug output level {0-7}
1114
1115 touch-sizex Touchscreen size x (default 240)
1116
1117 touch-sizey Touchscreen size y (default 320)
1118
1119 touch-invx Touchscreen inverted x axis
1120
1121 touch-invy Touchscreen inverted y axis
1122
1123 touch-swapxy Touchscreen swapped x y axis
1124
1125
1126 Name: pitft28-resistive
1127 Info: Adafruit PiTFT 2.8" resistive touch screen
1128 Load: dtoverlay=pitft28-resistive,<param>=<val>
1129 Params: speed Display SPI bus speed
1130
1131 rotate Display rotation {0,90,180,270}
1132
1133 fps Delay between frame updates
1134
1135 debug Debug output level {0-7}
1136
1137
1138 Name: pitft35-resistive
1139 Info: Adafruit PiTFT 3.5" resistive touch screen
1140 Load: dtoverlay=pitft35-resistive,<param>=<val>
1141 Params: speed Display SPI bus speed
1142
1143 rotate Display rotation {0,90,180,270}
1144
1145 fps Delay between frame updates
1146
1147 debug Debug output level {0-7}
1148
1149
1150 Name: pps-gpio
1151 Info: Configures the pps-gpio (pulse-per-second time signal via GPIO).
1152 Load: dtoverlay=pps-gpio,<param>=<val>
1153 Params: gpiopin Input GPIO (default "18")
1154 assert_falling_edge When present, assert is indicated by a falling
1155 edge, rather than by a rising edge
1156
1157
1158 Name: pwm
1159 Info: Configures a single PWM channel
1160 Legal pin,function combinations for each channel:
1161 PWM0: 12,4(Alt0) 18,2(Alt5) 40,4(Alt0) 52,5(Alt1)
1162 PWM1: 13,4(Alt0) 19,2(Alt5) 41,4(Alt0) 45,4(Alt0) 53,5(Alt1)
1163 N.B.:
1164 1) Pin 18 is the only one available on all platforms, and
1165 it is the one used by the I2S audio interface.
1166 Pins 12 and 13 might be better choices on an A+, B+ or Pi2.
1167 2) The onboard analogue audio output uses both PWM channels.
1168 3) So be careful mixing audio and PWM.
1169 4) Currently the clock must have been enabled and configured
1170 by other means.
1171 Load: dtoverlay=pwm,<param>=<val>
1172 Params: pin Output pin (default 18) - see table
1173 func Pin function (default 2 = Alt5) - see above
1174 clock PWM clock frequency (informational)
1175
1176
1177 Name: pwm-2chan
1178 Info: Configures both PWM channels
1179 Legal pin,function combinations for each channel:
1180 PWM0: 12,4(Alt0) 18,2(Alt5) 40,4(Alt0) 52,5(Alt1)
1181 PWM1: 13,4(Alt0) 19,2(Alt5) 41,4(Alt0) 45,4(Alt0) 53,5(Alt1)
1182 N.B.:
1183 1) Pin 18 is the only one available on all platforms, and
1184 it is the one used by the I2S audio interface.
1185 Pins 12 and 13 might be better choices on an A+, B+ or Pi2.
1186 2) The onboard analogue audio output uses both PWM channels.
1187 3) So be careful mixing audio and PWM.
1188 4) Currently the clock must have been enabled and configured
1189 by other means.
1190 Load: dtoverlay=pwm-2chan,<param>=<val>
1191 Params: pin Output pin (default 18) - see table
1192 pin2 Output pin for other channel (default 19)
1193 func Pin function (default 2 = Alt5) - see above
1194 func2 Function for pin2 (default 2 = Alt5)
1195 clock PWM clock frequency (informational)
1196
1197
1198 Name: qca7000
1199 Info: I2SE's Evaluation Board for PLC Stamp micro
1200 Load: dtoverlay=qca7000,<param>=<val>
1201 Params: int_pin GPIO pin for interrupt signal (default 23)
1202
1203 speed SPI bus speed (default 12 MHz)
1204
1205
1206 Name: raspidac3
1207 Info: Configures the RaspiDAV Rev.3x audio card
1208 Load: dtoverlay=raspidac3
1209 Params: <None>
1210
1211
1212 Name: rotary-encoder
1213 Info: Overlay for GPIO connected rotary encoder.
1214 Load: dtoverlay=rotary-encoder,<param>=<val>
1215 Params: rotary0_pin_a GPIO connected to rotary encoder channel A
1216 (default 4).
1217 rotary0_pin_b GPIO connected to rotary encoder channel B
1218 (default 17).
1219
1220
1221 Name: rpi-backlight
1222 Info: Raspberry Pi official display backlight driver
1223 Load: dtoverlay=rpi-backlight
1224 Params: <None>
1225
1226
1227 Name: rpi-cirrus-wm5102
1228 Info: Configures the Cirrus Logic Audio Card
1229 Load: dtoverlay=rpi-cirrus-wm5102
1230 Params: <None>
1231
1232
1233 Name: rpi-dac
1234 Info: Configures the RPi DAC audio card
1235 Load: dtoverlay=rpi-dac
1236 Params: <None>
1237
1238
1239 Name: rpi-display
1240 Info: RPi-Display - 2.8" Touch Display by Watterott
1241 Load: dtoverlay=rpi-display,<param>=<val>
1242 Params: speed Display SPI bus speed
1243 rotate Display rotation {0,90,180,270}
1244 fps Delay between frame updates
1245 debug Debug output level {0-7}
1246 xohms Touchpanel sensitivity (X-plate resistance)
1247 swapxy Swap x and y axis
1248
1249
1250 Name: rpi-ft5406
1251 Info: Official Raspberry Pi display touchscreen
1252 Load: dtoverlay=rpi-ft5406
1253 Params: <None>
1254
1255
1256 Name: rpi-proto
1257 Info: Configures the RPi Proto audio card
1258 Load: dtoverlay=rpi-proto
1259 Params: <None>
1260
1261
1262 Name: rpi-sense
1263 Info: Raspberry Pi Sense HAT
1264 Load: dtoverlay=rpi-sense
1265 Params: <None>
1266
1267
1268 Name: rpi-tv
1269 Info: Raspberry Pi TV HAT
1270 Load: dtoverlay=rpi-tv
1271 Params: <None>
1272
1273
1274 Name: rra-digidac1-wm8741-audio
1275 Info: Configures the Red Rocks Audio DigiDAC1 soundcard
1276 Load: dtoverlay=rra-digidac1-wm8741-audio
1277 Params: <None>
1278
1279
1280 Name: sc16is750-i2c
1281 Info: Overlay for the NXP SC16IS750 UART with I2C Interface
1282 Enables the chip on I2C1 at 0x48. To select another address,
1283 please refer to table 10 in reference manual.
1284
1285 Load: dtoverlay=sc16is750-i2c,<param>=<val>
1286 Params: int_pin GPIO used for IRQ (default 24)
1287 addr Address (default 0x48)
1288
1289
1290 Name: sc16is752-spi1
1291 Info: Overlay for the NXP SC16IS752 Dual UART with SPI Interface
1292 Enables the chip on SPI1.
1293 N.B.: spi1 is only accessible on devices with a 40pin header, eg:
1294 A+, B+, Zero and PI2 B; as well as the Compute Module.
1295
1296 Load: dtoverlay=sc16is752-spi1,<param>=<val>
1297 Params: int_pin GPIO used for IRQ (default 24)
1298
1299
1300 Name: sdhost
1301 Info: Selects the bcm2835-sdhost SD/MMC driver, optionally with overclock.
1302 N.B. This overlay is designed for situations where the mmc driver is
1303 the default, so it disables the other (mmc) interface - this will kill
1304 WiFi on a Pi3. If this isn't what you want, either use the sdtweak
1305 overlay or the new sd_* dtparams of the base DTBs.
1306 Load: dtoverlay=sdhost,<param>=<val>
1307 Params: overclock_50 Clock (in MHz) to use when the MMC framework
1308 requests 50MHz
1309
1310 force_pio Disable DMA support (default off)
1311
1312 pio_limit Number of blocks above which to use DMA
1313 (default 1)
1314
1315 debug Enable debug output (default off)
1316
1317
1318 Name: sdio
1319 Info: Selects the bcm2835-sdhost SD/MMC driver, optionally with overclock,
1320 and enables SDIO via GPIOs 22-27.
1321 Load: dtoverlay=sdio,<param>=<val>
1322 Params: sdio_overclock SDIO Clock (in MHz) to use when the MMC
1323 framework requests 50MHz
1324
1325 poll_once Disable SDIO-device polling every second
1326 (default on: polling once at boot-time)
1327
1328 bus_width Set the SDIO host bus width (default 4 bits)
1329
1330
1331 Name: sdio-1bit
1332 Info: Selects the bcm2835-sdhost SD/MMC driver, optionally with overclock,
1333 and enables 1-bit SDIO via GPIOs 22-25.
1334 Load: dtoverlay=sdio-1bit,<param>=<val>
1335 Params: sdio_overclock SDIO Clock (in MHz) to use when the MMC
1336 framework requests 50MHz
1337
1338 poll_once Disable SDIO-device polling every second
1339 (default on: polling once at boot-time)
1340
1341
1342 Name: sdtweak
1343 Info: Tunes the bcm2835-sdhost SD/MMC driver
1344 N.B. This functionality is now available via the sd_* dtparams in the
1345 base DTB.
1346 Load: dtoverlay=sdtweak,<param>=<val>
1347 Params: overclock_50 Clock (in MHz) to use when the MMC framework
1348 requests 50MHz
1349
1350 force_pio Disable DMA support (default off)
1351
1352 pio_limit Number of blocks above which to use DMA
1353 (default 1)
1354
1355 debug Enable debug output (default off)
1356
1357
1358 Name: smi
1359 Info: Enables the Secondary Memory Interface peripheral. Uses GPIOs 2-25!
1360 Load: dtoverlay=smi
1361 Params: <None>
1362
1363
1364 Name: smi-dev
1365 Info: Enables the userspace interface for the SMI driver
1366 Load: dtoverlay=smi-dev
1367 Params: <None>
1368
1369
1370 Name: smi-nand
1371 Info: Enables access to NAND flash via the SMI interface
1372 Load: dtoverlay=smi-nand
1373 Params: <None>
1374
1375
1376 Name: spi-gpio35-39
1377 Info: Move SPI function block to GPIO 35 to 39
1378 Load: dtoverlay=spi-gpio35-39
1379 Params: <None>
1380
1381
1382 Name: spi-rtc
1383 Info: Adds support for a number of SPI Real Time Clock devices
1384 Load: dtoverlay=spi-rtc,<param>=<val>
1385 Params: pcf2123 Select the PCF2123 device
1386
1387
1388 Name: spi0-cs
1389 Info: Allows the (software) CS pins for SPI0 to be changed
1390 Load: dtoverlay=spi0-cs,<param>=<val>
1391 Params: cs0_pin GPIO pin for CS0 (default 8)
1392 cs1_pin GPIO pin for CS1 (default 7)
1393
1394
1395 Name: spi0-hw-cs
1396 Info: Re-enables hardware CS/CE (chip selects) for SPI0
1397 Load: dtoverlay=spi0-hw-cs
1398 Params: <None>
1399
1400
1401 Name: spi1-1cs
1402 Info: Enables spi1 with a single chip select (CS) line and associated spidev
1403 dev node. The gpio pin number for the CS line and spidev device node
1404 creation are configurable.
1405 N.B.: spi1 is only accessible on devices with a 40pin header, eg:
1406 A+, B+, Zero and PI2 B; as well as the Compute Module.
1407 Load: dtoverlay=spi1-1cs,<param>=<val>
1408 Params: cs0_pin GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
1409 cs0_spidev Set to 'disabled' to stop the creation of a
1410 userspace device node /dev/spidev1.0 (default
1411 is 'okay' or enabled).
1412
1413
1414 Name: spi1-2cs
1415 Info: Enables spi1 with two chip select (CS) lines and associated spidev
1416 dev nodes. The gpio pin numbers for the CS lines and spidev device node
1417 creation are configurable.
1418 N.B.: spi1 is only accessible on devices with a 40pin header, eg:
1419 A+, B+, Zero and PI2 B; as well as the Compute Module.
1420 Load: dtoverlay=spi1-2cs,<param>=<val>
1421 Params: cs0_pin GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
1422 cs1_pin GPIO pin for CS1 (default 17 - BCM SPI1_CE1).
1423 cs0_spidev Set to 'disabled' to stop the creation of a
1424 userspace device node /dev/spidev1.0 (default
1425 is 'okay' or enabled).
1426 cs1_spidev Set to 'disabled' to stop the creation of a
1427 userspace device node /dev/spidev1.1 (default
1428 is 'okay' or enabled).
1429
1430
1431 Name: spi1-3cs
1432 Info: Enables spi1 with three chip select (CS) lines and associated spidev
1433 dev nodes. The gpio pin numbers for the CS lines and spidev device node
1434 creation are configurable.
1435 N.B.: spi1 is only accessible on devices with a 40pin header, eg:
1436 A+, B+, Zero and PI2 B; as well as the Compute Module.
1437 Load: dtoverlay=spi1-3cs,<param>=<val>
1438 Params: cs0_pin GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
1439 cs1_pin GPIO pin for CS1 (default 17 - BCM SPI1_CE1).
1440 cs2_pin GPIO pin for CS2 (default 16 - BCM SPI1_CE2).
1441 cs0_spidev Set to 'disabled' to stop the creation of a
1442 userspace device node /dev/spidev1.0 (default
1443 is 'okay' or enabled).
1444 cs1_spidev Set to 'disabled' to stop the creation of a
1445 userspace device node /dev/spidev1.1 (default
1446 is 'okay' or enabled).
1447 cs2_spidev Set to 'disabled' to stop the creation of a
1448 userspace device node /dev/spidev1.2 (default
1449 is 'okay' or enabled).
1450
1451
1452 Name: spi2-1cs
1453 Info: Enables spi2 with a single chip select (CS) line and associated spidev
1454 dev node. The gpio pin number for the CS line and spidev device node
1455 creation are configurable.
1456 N.B.: spi2 is only accessible with the Compute Module.
1457 Load: dtoverlay=spi2-1cs,<param>=<val>
1458 Params: cs0_pin GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
1459 cs0_spidev Set to 'disabled' to stop the creation of a
1460 userspace device node /dev/spidev2.0 (default
1461 is 'okay' or enabled).
1462
1463
1464 Name: spi2-2cs
1465 Info: Enables spi2 with two chip select (CS) lines and associated spidev
1466 dev nodes. The gpio pin numbers for the CS lines and spidev device node
1467 creation are configurable.
1468 N.B.: spi2 is only accessible with the Compute Module.
1469 Load: dtoverlay=spi2-2cs,<param>=<val>
1470 Params: cs0_pin GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
1471 cs1_pin GPIO pin for CS1 (default 44 - BCM SPI2_CE1).
1472 cs0_spidev Set to 'disabled' to stop the creation of a
1473 userspace device node /dev/spidev2.0 (default
1474 is 'okay' or enabled).
1475 cs1_spidev Set to 'disabled' to stop the creation of a
1476 userspace device node /dev/spidev2.1 (default
1477 is 'okay' or enabled).
1478
1479
1480 Name: spi2-3cs
1481 Info: Enables spi2 with three chip select (CS) lines and associated spidev
1482 dev nodes. The gpio pin numbers for the CS lines and spidev device node
1483 creation are configurable.
1484 N.B.: spi2 is only accessible with the Compute Module.
1485 Load: dtoverlay=spi2-3cs,<param>=<val>
1486 Params: cs0_pin GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
1487 cs1_pin GPIO pin for CS1 (default 44 - BCM SPI2_CE1).
1488 cs2_pin GPIO pin for CS2 (default 45 - BCM SPI2_CE2).
1489 cs0_spidev Set to 'disabled' to stop the creation of a
1490 userspace device node /dev/spidev2.0 (default
1491 is 'okay' or enabled).
1492 cs1_spidev Set to 'disabled' to stop the creation of a
1493 userspace device node /dev/spidev2.1 (default
1494 is 'okay' or enabled).
1495 cs2_spidev Set to 'disabled' to stop the creation of a
1496 userspace device node /dev/spidev2.2 (default
1497 is 'okay' or enabled).
1498
1499
1500 Name: tinylcd35
1501 Info: 3.5" Color TFT Display by www.tinylcd.com
1502 Options: Touch, RTC, keypad
1503 Load: dtoverlay=tinylcd35,<param>=<val>
1504 Params: speed Display SPI bus speed
1505
1506 rotate Display rotation {0,90,180,270}
1507
1508 fps Delay between frame updates
1509
1510 debug Debug output level {0-7}
1511
1512 touch Enable touch panel
1513
1514 touchgpio Touch controller IRQ GPIO
1515
1516 xohms Touchpanel: Resistance of X-plate in ohms
1517
1518 rtc-pcf PCF8563 Real Time Clock
1519
1520 rtc-ds DS1307 Real Time Clock
1521
1522 keypad Enable keypad
1523
1524 Examples:
1525 Display with touchpanel, PCF8563 RTC and keypad:
1526 dtoverlay=tinylcd35,touch,rtc-pcf,keypad
1527 Old touch display:
1528 dtoverlay=tinylcd35,touch,touchgpio=3
1529
1530
1531 Name: uart1
1532 Info: Enable uart1 in place of uart0
1533 Load: dtoverlay=uart1,<param>=<val>
1534 Params: txd1_pin GPIO pin for TXD1 (14, 32 or 40 - default 14)
1535
1536 rxd1_pin GPIO pin for RXD1 (15, 33 or 41 - default 15)
1537
1538
1539 Name: vc4-fkms-v3d
1540 Info: Enable Eric Anholt's DRM VC4 V3D driver on top of the dispmanx
1541 display stack.
1542 Load: dtoverlay=vc4-fkms-v3d,<param>
1543 Params: cma-256 CMA is 256MB, 256MB-aligned (needs 1GB)
1544 cma-192 CMA is 192MB, 256MB-aligned (needs 1GB)
1545 cma-128 CMA is 128MB, 128MB-aligned
1546 cma-96 CMA is 96MB, 128MB-aligned
1547 cma-64 CMA is 64MB, 64MB-aligned
1548
1549
1550 Name: vc4-kms-v3d
1551 Info: Enable Eric Anholt's DRM VC4 HDMI/HVS/V3D driver. Running startx or
1552 booting to GUI while this overlay is in use will cause interesting
1553 lockups.
1554 Load: dtoverlay=vc4-kms-v3d,<param>
1555 Params: cma-256 CMA is 256MB, 256MB-aligned (needs 1GB)
1556 cma-192 CMA is 192MB, 256MB-aligned (needs 1GB)
1557 cma-128 CMA is 128MB, 128MB-aligned
1558 cma-96 CMA is 96MB, 128MB-aligned
1559 cma-64 CMA is 64MB, 64MB-aligned
1560
1561
1562 Name: vga666
1563 Info: Overlay for the Fen Logic VGA666 board
1564 This uses GPIOs 2-21 (so no I2C), and activates the output 2-3 seconds
1565 after the kernel has started.
1566 Load: dtoverlay=vga666
1567 Params: <None>
1568
1569
1570 Name: w1-gpio
1571 Info: Configures the w1-gpio Onewire interface module.
1572 Use this overlay if you *don't* need a GPIO to drive an external pullup.
1573 Load: dtoverlay=w1-gpio,<param>=<val>
1574 Params: gpiopin GPIO for I/O (default "4")
1575
1576 pullup Non-zero, "on", or "y" to enable the parasitic
1577 power (2-wire, power-on-data) feature
1578
1579
1580 Name: w1-gpio-pullup
1581 Info: Configures the w1-gpio Onewire interface module.
1582 Use this overlay if you *do* need a GPIO to drive an external pullup.
1583 Load: dtoverlay=w1-gpio-pullup,<param>=<val>
1584 Params: gpiopin GPIO for I/O (default "4")
1585
1586 pullup Non-zero, "on", or "y" to enable the parasitic
1587 power (2-wire, power-on-data) feature
1588
1589 extpullup GPIO for external pullup (default "5")
1590
1591
1592 Name: wittypi
1593 Info: Configures the wittypi RTC module.
1594 Load: dtoverlay=wittypi,<param>=<val>
1595 Params: led_gpio GPIO for LED (default "17")
1596 led_trigger Choose which activity the LED tracks (default
1597 "default-on")
1598
1599
1600 Troubleshooting
1601 ===============
1602
1603 If you are experiencing problems that you think are DT-related, enable DT
1604 diagnostic output by adding this to /boot/config.txt:
1605
1606 dtdebug=on
1607
1608 and rebooting. Then run:
1609
1610 sudo vcdbg log msg
1611
1612 and look for relevant messages.
1613
1614 Further reading
1615 ===============
1616
1617 This is only meant to be a quick introduction to the subject of Device Tree on
1618 Raspberry Pi. There is a more complete explanation here:
1619
1620 http://www.raspberrypi.org/documentation/configuration/device-tree.md