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