README 113.8 KB
Newer Older
Y
yafen 已提交
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 384 385 386 387 388 389 390 391 392 393 394 395 396 397 398 399 400 401 402 403 404 405 406 407 408 409 410 411 412 413 414 415 416 417 418 419 420 421 422 423 424 425 426 427 428 429 430 431 432 433 434 435 436 437 438 439 440 441 442 443 444 445 446 447 448 449 450 451 452 453 454 455 456 457 458 459 460 461 462 463 464 465 466 467 468 469 470 471 472 473 474 475 476 477 478 479 480 481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 516 517 518 519 520 521 522 523 524 525 526 527 528 529 530 531 532 533 534 535 536 537 538 539 540 541 542 543 544 545 546 547 548 549 550 551 552 553 554 555 556 557 558 559 560 561 562 563 564 565 566 567 568 569 570 571 572 573 574 575 576 577 578 579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 614 615 616 617 618 619 620 621 622 623 624 625 626 627 628 629 630 631 632 633 634 635 636 637 638 639 640 641 642 643 644 645 646 647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 667 668 669 670 671 672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 722 723 724 725 726 727 728 729 730 731 732 733 734 735 736 737 738 739 740 741 742 743 744 745 746 747 748 749 750 751 752 753 754 755 756 757 758 759 760 761 762 763 764 765 766 767 768 769 770 771 772 773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 822 823 824 825 826 827 828 829 830 831 832 833 834 835 836 837 838 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 854 855 856 857 858 859 860 861 862 863 864 865 866 867 868 869 870 871 872 873 874 875 876 877 878 879 880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 926 927 928 929 930 931 932 933 934 935 936 937 938 939 940 941 942 943 944 945 946 947 948 949 950 951 952 953 954 955 956 957 958 959 960 961 962 963 964 965 966 967 968 969 970 971 972 973 974 975 976 977 978 979 980 981 982 983 984 985 986 987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 1024 1025 1026 1027 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 1048 1049 1050 1051 1052 1053 1054 1055 1056 1057 1058 1059 1060 1061 1062 1063 1064 1065 1066 1067 1068 1069 1070 1071 1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 1106 1107 1108 1109 1110 1111 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131 1132 1133 1134 1135 1136 1137 1138 1139 1140 1141 1142 1143 1144 1145 1146 1147 1148 1149 1150 1151 1152 1153 1154 1155 1156 1157 1158 1159 1160 1161 1162 1163 1164 1165 1166 1167 1168 1169 1170 1171 1172 1173 1174 1175 1176 1177 1178 1179 1180 1181 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 1197 1198 1199 1200 1201 1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 1236 1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247 1248 1249 1250 1251 1252 1253 1254 1255 1256 1257 1258 1259 1260 1261 1262 1263 1264 1265 1266 1267 1268 1269 1270 1271 1272 1273 1274 1275 1276 1277 1278 1279 1280 1281 1282 1283 1284 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 1321 1322 1323 1324 1325 1326 1327 1328 1329 1330 1331 1332 1333 1334 1335 1336 1337 1338 1339 1340 1341 1342 1343 1344 1345 1346 1347 1348 1349 1350 1351 1352 1353 1354 1355 1356 1357 1358 1359 1360 1361 1362 1363 1364 1365 1366 1367 1368 1369 1370 1371 1372 1373 1374 1375 1376 1377 1378 1379 1380 1381 1382 1383 1384 1385 1386 1387 1388 1389 1390 1391 1392 1393 1394 1395 1396 1397 1398 1399 1400 1401 1402 1403 1404 1405 1406 1407 1408 1409 1410 1411 1412 1413 1414 1415 1416 1417 1418 1419 1420 1421 1422 1423 1424 1425 1426 1427 1428 1429 1430 1431 1432 1433 1434 1435 1436 1437 1438 1439 1440 1441 1442 1443 1444 1445 1446 1447 1448 1449 1450 1451 1452 1453 1454 1455 1456 1457 1458 1459 1460 1461 1462 1463 1464 1465 1466 1467 1468 1469 1470 1471 1472 1473 1474 1475 1476 1477 1478 1479 1480 1481 1482 1483 1484 1485 1486 1487 1488 1489 1490 1491 1492 1493 1494 1495 1496 1497 1498 1499 1500 1501 1502 1503 1504 1505 1506 1507 1508 1509 1510 1511 1512 1513 1514 1515 1516 1517 1518 1519 1520 1521 1522 1523 1524 1525 1526 1527 1528 1529 1530 1531 1532 1533 1534 1535 1536 1537 1538 1539 1540 1541 1542 1543 1544 1545 1546 1547 1548 1549 1550 1551 1552 1553 1554 1555 1556 1557 1558 1559 1560 1561 1562 1563 1564 1565 1566 1567 1568 1569 1570 1571 1572 1573 1574 1575 1576 1577 1578 1579 1580 1581 1582 1583 1584 1585 1586 1587 1588 1589 1590 1591 1592 1593 1594 1595 1596 1597 1598 1599 1600 1601 1602 1603 1604 1605 1606 1607 1608 1609 1610 1611 1612 1613 1614 1615 1616 1617 1618 1619 1620 1621 1622 1623 1624 1625 1626 1627 1628 1629 1630 1631 1632 1633 1634 1635 1636 1637 1638 1639 1640 1641 1642 1643 1644 1645 1646 1647 1648 1649 1650 1651 1652 1653 1654 1655 1656 1657 1658 1659 1660 1661 1662 1663 1664 1665 1666 1667 1668 1669 1670 1671 1672 1673 1674 1675 1676 1677 1678 1679 1680 1681 1682 1683 1684 1685 1686 1687 1688 1689 1690 1691 1692 1693 1694 1695 1696 1697 1698 1699 1700 1701 1702 1703 1704 1705 1706 1707 1708 1709 1710 1711 1712 1713 1714 1715 1716 1717 1718 1719 1720 1721 1722 1723 1724 1725 1726 1727 1728 1729 1730 1731 1732 1733 1734 1735 1736 1737 1738 1739 1740 1741 1742 1743 1744 1745 1746 1747 1748 1749 1750 1751 1752 1753 1754 1755 1756 1757 1758 1759 1760 1761 1762 1763 1764 1765 1766 1767 1768 1769 1770 1771 1772 1773 1774 1775 1776 1777 1778 1779 1780 1781 1782 1783 1784 1785 1786 1787 1788 1789 1790 1791 1792 1793 1794 1795 1796 1797 1798 1799 1800 1801 1802 1803 1804 1805 1806 1807 1808 1809 1810 1811 1812 1813 1814 1815 1816 1817 1818 1819 1820 1821 1822 1823 1824 1825 1826 1827 1828 1829 1830 1831 1832 1833 1834 1835 1836 1837 1838 1839 1840 1841 1842 1843 1844 1845 1846 1847 1848 1849 1850 1851 1852 1853 1854 1855 1856 1857 1858 1859 1860 1861 1862 1863 1864 1865 1866 1867 1868 1869 1870 1871 1872 1873 1874 1875 1876 1877 1878 1879 1880 1881 1882 1883 1884 1885 1886 1887 1888 1889 1890 1891 1892 1893 1894 1895 1896 1897 1898 1899 1900 1901 1902 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 1925 1926 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 2019 2020 2021 2022 2023 2024 2025 2026 2027 2028 2029 2030 2031 2032 2033 2034 2035 2036 2037 2038 2039 2040 2041 2042 2043 2044 2045 2046 2047 2048 2049 2050 2051 2052 2053 2054 2055 2056 2057 2058 2059 2060 2061 2062 2063 2064 2065 2066 2067 2068 2069 2070 2071 2072 2073 2074 2075 2076 2077 2078 2079 2080 2081 2082 2083 2084 2085 2086 2087 2088 2089 2090 2091 2092 2093 2094 2095 2096 2097 2098 2099 2100 2101 2102 2103 2104 2105 2106 2107 2108 2109 2110 2111 2112 2113 2114 2115 2116 2117 2118 2119 2120 2121 2122 2123 2124 2125 2126 2127 2128 2129 2130 2131 2132 2133 2134 2135 2136 2137 2138 2139 2140 2141 2142 2143 2144 2145 2146 2147 2148 2149 2150 2151 2152 2153 2154 2155 2156 2157 2158 2159 2160 2161 2162 2163 2164 2165 2166 2167 2168 2169 2170 2171 2172 2173 2174 2175 2176 2177 2178 2179 2180 2181 2182 2183 2184 2185 2186 2187 2188 2189 2190 2191 2192 2193 2194 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 2210 2211 2212 2213 2214 2215 2216 2217 2218 2219 2220 2221 2222 2223 2224 2225 2226 2227 2228 2229 2230 2231 2232 2233 2234 2235 2236 2237 2238 2239 2240 2241 2242 2243 2244 2245 2246 2247 2248 2249 2250 2251 2252 2253 2254 2255 2256 2257 2258 2259 2260 2261 2262 2263 2264 2265 2266 2267 2268 2269 2270 2271 2272 2273 2274 2275 2276 2277 2278 2279 2280 2281 2282 2283 2284 2285 2286 2287 2288 2289 2290 2291 2292 2293 2294 2295 2296 2297 2298 2299 2300 2301 2302 2303 2304 2305 2306 2307 2308 2309 2310 2311 2312 2313 2314 2315 2316 2317 2318 2319 2320 2321 2322 2323 2324 2325 2326 2327 2328 2329 2330 2331 2332 2333 2334 2335 2336 2337 2338 2339 2340 2341 2342 2343 2344 2345 2346 2347 2348 2349 2350 2351 2352 2353 2354 2355 2356 2357 2358 2359 2360 2361 2362 2363 2364 2365 2366 2367 2368 2369 2370 2371 2372 2373 2374 2375 2376 2377 2378 2379 2380 2381 2382 2383 2384 2385 2386 2387 2388 2389 2390 2391 2392 2393 2394 2395 2396 2397 2398 2399 2400 2401 2402 2403 2404 2405 2406 2407 2408 2409 2410 2411 2412 2413 2414 2415 2416 2417 2418 2419 2420 2421 2422 2423 2424 2425 2426 2427 2428 2429 2430 2431 2432 2433 2434 2435 2436 2437 2438 2439 2440 2441 2442 2443 2444 2445 2446 2447 2448 2449 2450 2451 2452 2453 2454 2455 2456 2457 2458 2459 2460 2461 2462 2463 2464 2465 2466 2467 2468 2469 2470 2471 2472 2473 2474 2475 2476 2477 2478 2479 2480 2481 2482 2483 2484 2485 2486 2487 2488 2489 2490 2491 2492 2493 2494 2495 2496 2497 2498 2499 2500 2501 2502 2503 2504 2505 2506 2507 2508 2509 2510 2511 2512 2513 2514 2515 2516 2517 2518 2519 2520 2521 2522 2523 2524 2525 2526 2527 2528 2529 2530 2531 2532 2533 2534 2535 2536 2537 2538 2539 2540 2541 2542 2543 2544 2545 2546 2547 2548 2549 2550 2551 2552 2553 2554 2555 2556 2557 2558 2559 2560 2561 2562 2563 2564 2565 2566 2567 2568 2569 2570 2571 2572 2573 2574 2575 2576 2577 2578 2579 2580 2581 2582 2583 2584 2585 2586 2587 2588 2589 2590 2591 2592 2593 2594 2595 2596 2597 2598 2599 2600 2601 2602 2603 2604 2605 2606 2607 2608 2609 2610 2611 2612 2613 2614 2615 2616 2617 2618 2619 2620 2621 2622 2623 2624 2625 2626 2627 2628 2629 2630 2631 2632 2633 2634 2635 2636 2637 2638 2639 2640 2641 2642 2643 2644 2645 2646 2647 2648 2649 2650 2651 2652 2653 2654 2655 2656 2657 2658 2659 2660 2661 2662 2663 2664 2665 2666 2667 2668 2669 2670 2671 2672 2673 2674 2675 2676 2677 2678 2679 2680 2681 2682 2683 2684 2685 2686 2687 2688 2689 2690 2691 2692 2693 2694 2695 2696 2697 2698 2699 2700 2701 2702 2703 2704 2705 2706 2707 2708 2709 2710 2711 2712 2713 2714 2715 2716 2717 2718 2719 2720 2721 2722 2723 2724 2725 2726 2727 2728 2729 2730 2731 2732 2733 2734 2735 2736 2737 2738 2739 2740
Introduction
============

This directory contains Device Tree overlays. Device Tree makes it possible
to support many hardware configurations with a single kernel and without the
need to explicitly load or blacklist kernel modules. Note that this isn't a
"pure" Device Tree configuration (c.f. MACH_BCM2835) - some on-board devices
are still configured by the board support code, but the intention is to
eventually reach that goal.

On Raspberry Pi, Device Tree usage is controlled from /boot/config.txt. By
default, the Raspberry Pi kernel boots with device tree enabled. You can
completely disable DT usage (for now) by adding:

    device_tree=

to your config.txt, which should cause your Pi to revert to the old way of
doing things after a reboot.

In /boot you will find a .dtb for each base platform. This describes the
hardware that is part of the Raspberry Pi board. The loader (start.elf and its
siblings) selects the .dtb file appropriate for the platform by name, and reads
it into memory. At this point, all of the optional interfaces (i2c, i2s, spi)
are disabled, but they can be enabled using Device Tree parameters:

    dtparam=i2c=on,i2s=on,spi=on

However, this shouldn't be necessary in many use cases because loading an
overlay that requires one of those interfaces will cause it to be enabled
automatically, and it is advisable to only enable interfaces if they are
needed.

Configuring additional, optional hardware is done using Device Tree overlays
(see below).

GPIO numbering uses the hardware pin numbering scheme (aka BCM scheme) and
not the physical pin numbers.

raspi-config
============

The Advanced Options section of the raspi-config utility can enable and disable
Device Tree use, as well as toggling the I2C and SPI interfaces. Note that it
is possible to both enable an interface and blacklist the driver, if for some
reason you should want to defer the loading.

Modules
=======

As well as describing the hardware, Device Tree also gives enough information
to allow suitable driver modules to be located and loaded, with the corollary
that unneeded modules are not loaded. As a result it should be possible to
remove lines from /etc/modules, and /etc/modprobe.d/raspi-blacklist.conf can
have its contents deleted (or commented out).

Using Overlays
==============

Overlays are loaded using the "dtoverlay" config.txt setting. As an example,
consider I2C Real Time Clock drivers. In the pre-DT world these would be loaded
by writing a magic string comprising a device identifier and an I2C address to
a special file in /sys/class/i2c-adapter, having first loaded the driver for
the I2C interface and the RTC device - something like this:

    modprobe i2c-bcm2835
    modprobe rtc-ds1307
    echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-1/new_device

With DT enabled, this becomes a line in config.txt:

    dtoverlay=i2c-rtc,ds1307

This causes the file /boot/overlays/i2c-rtc.dtbo to be loaded and a "node"
describing the DS1307 I2C device to be added to the Device Tree for the Pi. By
default it usees address 0x68, but this can be modified with an additional DT
parameter:

    dtoverlay=i2c-rtc,ds1307,addr=0x68

Parameters usually have default values, although certain parameters are
mandatory. See the list of overlays below for a description of the parameters
and their defaults.

The Overlay and Parameter Reference
===================================

N.B. When editing this file, please preserve the indentation levels to make it
simple to parse programmatically. NO HARD TABS.


Name:   <The base DTB>
Info:   Configures the base Raspberry Pi hardware
Load:   <loaded automatically>
Params:
        audio                   Set to "on" to enable the onboard ALSA audio
                                interface (default "off")

        axiperf                 Set to "on" to enable the AXI bus performance
                                monitors.
                                See /sys/kernel/debug/raspberrypi_axi_monitor
                                for the results.

        eee                     Enable Energy Efficient Ethernet support for
                                compatible devices (default "on"). See also
                                "tx_lpi_timer". Pi3B+ only.

        eth_downshift_after     Set the number of auto-negotiation failures
                                after which the 1000Mbps modes are disabled.
                                Legal values are 2, 3, 4, 5 and 0, where
                                0 means never downshift (default 2). Pi3B+ only.

        eth_led0                Set mode of LED0 - amber on Pi3B+ (default "1"),
                                green on Pi4 (default "0").
                                The legal values are:

                                Pi3B+

                                0=link/activity          1=link1000/activity
                                2=link100/activity       3=link10/activity
                                4=link100/1000/activity  5=link10/1000/activity
                                6=link10/100/activity    14=off    15=on

                                Pi4

                                0=Speed/Activity         1=Speed
                                2=Flash activity         3=FDX
                                4=Off                    5=On
                                6=Alt                    7=Speed/Flash
                                8=Link                   9=Activity

        eth_led1                Set mode of LED1 - green on Pi3B (default "6"),
                                amber on Pi4 (default "8"). See eth_led0 for
                                legal values.

        eth_max_speed           Set the maximum speed a link is allowed
                                to negotiate. Legal values are 10, 100 and
                                1000 (default 1000). Pi3B+ only.

        i2c_arm                 Set to "on" to enable the ARM's i2c interface
                                (default "off")

        i2c_vc                  Set to "on" to enable the i2c interface
                                usually reserved for the VideoCore processor
                                (default "off")

        i2c                     An alias for i2c_arm

        i2c_arm_baudrate        Set the baudrate of the ARM's i2c interface
                                (default "100000")

        i2c_vc_baudrate         Set the baudrate of the VideoCore i2c interface
                                (default "100000")

        i2c_baudrate            An alias for i2c_arm_baudrate

        i2s                     Set to "on" to enable the i2s interface
                                (default "off")

        spi                     Set to "on" to enable the spi interfaces
                                (default "off")

        random                  Set to "on" to enable the hardware random
                                number generator (default "on")

        sd_overclock            Clock (in MHz) to use when the MMC framework
                                requests 50MHz

        sd_poll_once            Looks for a card once after booting. Useful
                                for network booting scenarios to avoid the
                                overhead of continuous polling. N.B. Using
                                this option restricts the system to using a
                                single card per boot (or none at all).
                                (default off)

        sd_force_pio            Disable DMA support for SD driver (default off)

        sd_pio_limit            Number of blocks above which to use DMA for
                                SD card (default 1)

        sd_debug                Enable debug output from SD driver (default off)

        sdio_overclock          Clock (in MHz) to use when the MMC framework
                                requests 50MHz for the SDIO/WiFi interface.

        tx_lpi_timer            Set the delay in microseconds between going idle
                                and entering the low power state (default 600).
                                Requires EEE to be enabled - see "eee".

        uart0                   Set to "off" to disable uart0 (default "on")

        uart1                   Set to "on" or "off" to enable or disable uart1
                                (default varies)

        watchdog                Set to "on" to enable the hardware watchdog
                                (default "off")

        act_led_trigger         Choose which activity the LED tracks.
                                Use "heartbeat" for a nice load indicator.
                                (default "mmc")

        act_led_activelow       Set to "on" to invert the sense of the LED
                                (default "off")
                                N.B. For Pi 3B, 3B+, 3A+ and 4B, use the act-led
                                overlay.

        act_led_gpio            Set which GPIO to use for the activity LED
                                (in case you want to connect it to an external
                                device)
                                (default "16" on a non-Plus board, "47" on a
                                Plus or Pi 2)
                                N.B. For Pi 3B, 3B+, 3A+ and 4B, use the act-led
                                overlay.

        pwr_led_trigger
        pwr_led_activelow
        pwr_led_gpio
                                As for act_led_*, but using the PWR LED.
                                Not available on Model A/B boards.

        N.B. It is recommended to only enable those interfaces that are needed.
        Leaving all interfaces enabled can lead to unwanted behaviour (i2c_vc
        interfering with Pi Camera, I2S and SPI hogging GPIO pins, etc.)
        Note also that i2c, i2c_arm and i2c_vc are aliases for the physical
        interfaces i2c0 and i2c1. Use of the numeric variants is still possible
        but deprecated because the ARM/VC assignments differ between board
        revisions. The same board-specific mapping applies to i2c_baudrate,
        and the other i2c baudrate parameters.


Name:   act-led
Info:   Pi 3B, 3B+, 3A+ and 4B use a GPIO expander to drive the LEDs which can
        only be accessed from the VPU. There is a special driver for this with a
        separate DT node, which has the unfortunate consequence of breaking the
        act_led_gpio and act_led_activelow dtparams.
        This overlay changes the GPIO controller back to the standard one and
        restores the dtparams.
Load:   dtoverlay=act-led,<param>=<val>
Params: activelow               Set to "on" to invert the sense of the LED
                                (default "off")

        gpio                    Set which GPIO to use for the activity LED
                                (in case you want to connect it to an external
                                device)
                                REQUIRED


Name:   adau1977-adc
Info:   Overlay for activation of ADAU1977 ADC codec over I2C for control
        and I2S for data.
Load:   dtoverlay=adau1977-adc
Params: <None>


Name:   adau7002-simple
Info:   Overlay for the activation of ADAU7002 stereo PDM to I2S converter.
Load:   dtoverlay=adau7002-simple,<param>=<val>
Params: card-name               Override the default, "adau7002", card name.


Name:   ads1015
Info:   Overlay for activation of Texas Instruments ADS1015 ADC over I2C
Load:   dtoverlay=ads1015,<param>=<val>
Params: addr                    I2C bus address of device. Set based on how the
                                addr pin is wired. (default=0x48 assumes addr
                                is pulled to GND)
        cha_enable              Enable virtual channel a. (default=true)
        cha_cfg                 Set the configuration for virtual channel a.
                                (default=4 configures this channel for the
                                voltage at A0 with respect to GND)
        cha_datarate            Set the datarate (samples/sec) for this channel.
                                (default=4 sets 1600 sps)
        cha_gain                Set the gain of the Programmable Gain
                                Amplifier for this channel. (default=2 sets the
                                full scale of the channel to 2.048 Volts)

        Channel (ch) parameters can be set for each enabled channel.
        A maximum of 4 channels can be enabled (letters a thru d).
        For more information refer to the device datasheet at:
        http://www.ti.com/lit/ds/symlink/ads1015.pdf


Name:   ads1115
Info:   Texas Instruments ADS1115 ADC
Load:   dtoverlay=ads1115,<param>[=<val>]
Params: addr                    I2C bus address of device. Set based on how the
                                addr pin is wired. (default=0x48 assumes addr
                                is pulled to GND)
        cha_enable              Enable virtual channel a.
        cha_cfg                 Set the configuration for virtual channel a.
                                (default=4 configures this channel for the
                                voltage at A0 with respect to GND)
        cha_datarate            Set the datarate (samples/sec) for this channel.
                                (default=7 sets 860 sps)
        cha_gain                Set the gain of the Programmable Gain
                                Amplifier for this channel. (Default 1 sets the
                                full scale of the channel to 4.096 Volts)

        Channel parameters can be set for each enabled channel.
        A maximum of 4 channels can be enabled (letters a thru d).
        For more information refer to the device datasheet at:
        http://www.ti.com/lit/ds/symlink/ads1115.pdf


Name:   ads7846
Info:   ADS7846 Touch controller
Load:   dtoverlay=ads7846,<param>=<val>
Params: cs                      SPI bus Chip Select (default 1)
        speed                   SPI bus speed (default 2MHz, max 3.25MHz)
        penirq                  GPIO used for PENIRQ. REQUIRED
        penirq_pull             Set GPIO pull (default 0=none, 2=pullup)
        swapxy                  Swap x and y axis
        xmin                    Minimum value on the X axis (default 0)
        ymin                    Minimum value on the Y axis (default 0)
        xmax                    Maximum value on the X axis (default 4095)
        ymax                    Maximum value on the Y axis (default 4095)
        pmin                    Minimum reported pressure value (default 0)
        pmax                    Maximum reported pressure value (default 65535)
        xohms                   Touchpanel sensitivity (X-plate resistance)
                                (default 400)

        penirq is required and usually xohms (60-100) has to be set as well.
        Apart from that, pmax (255) and swapxy are also common.
        The rest of the calibration can be done with xinput-calibrator.
        See: github.com/notro/fbtft/wiki/FBTFT-on-Raspian
        Device Tree binding document:
        www.kernel.org/doc/Documentation/devicetree/bindings/input/ads7846.txt


Name:   adv7282m
Info:   Analog Devices ADV7282M analogue video to CSI2 bridge.
        Uses Unicam1, which is the standard camera connector on most Pi
        variants.
Load:   dtoverlay=adv7282m,<param>=<val>
Params: i2c_pins_0_1            Use pins 0&1 for the I2C instead of 44&45.
                                Useful on Compute Modules.
        i2c_pins_28_29          Use pins 28&29 for the I2C instead of 44&45.
                                This is required for Pi B+, 2, 0, and 0W.
        addr                    Overrides the I2C address (default 0x21)


Name:   adv728x-m
Info:   Analog Devices ADV728[0|1|2]-M analogue video to CSI2 bridges.
        This is a wrapper for adv7282m, and defaults to ADV7282M.
Load:   dtoverlay=adv728x-m,<param>=<val>
Params: i2c_pins_0_1            Use pins 0&1 for the I2C instead of 44&45.
                                Useful on Compute Modules.
        i2c_pins_28_29          Use pins 28&29 for the I2C instead of 44&45.
                                This is required for Pi B+, 2, 0, and 0W.
        addr                    Overrides the I2C address (default 0x21)
        adv7280m                Select ADV7280-M.
        adv7281m                Select ADV7281-M.
        adv7281ma               Select ADV7281-MA.


Name:   akkordion-iqdacplus
Info:   Configures the Digital Dreamtime Akkordion Music Player (based on the
        OEM IQAudIO DAC+ or DAC Zero module).
Load:   dtoverlay=akkordion-iqdacplus,<param>=<val>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                dtoverlay=akkordion-iqdacplus,24db_digital_gain
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24db_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)


Name:   allo-boss-dac-pcm512x-audio
Info:   Configures the Allo Boss DAC audio cards.
Load:   dtoverlay=allo-boss-dac-pcm512x-audio,<param>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=allo-boss-dac-pcm512x-audio,
                                24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24db_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)
        slave                   Force Boss DAC into slave mode, using Pi a
                                master for bit clock and frame clock. Enable
                                with "dtoverlay=allo-boss-dac-pcm512x-audio,
                                slave"


Name:   allo-digione
Info:   Configures the Allo Digione audio card
Load:   dtoverlay=allo-digione
Params: <None>


Name:   allo-katana-dac-audio
Info:   Configures the Allo Katana DAC audio card
Load:   dtoverlay=allo-katana-dac-audio
Params: <None>


Name:   allo-piano-dac-pcm512x-audio
Info:   Configures the Allo Piano DAC (2.0/2.1) audio cards.
        (NB. This initial support is for 2.0 channel audio ONLY! ie. stereo.
        The subwoofer outputs on the Piano 2.1 are not currently supported!)
Load:   dtoverlay=allo-piano-dac-pcm512x-audio,<param>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control.
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24db_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)


Name:   allo-piano-dac-plus-pcm512x-audio
Info:   Configures the Allo Piano DAC (2.1) audio cards.
Load:   dtoverlay=allo-piano-dac-plus-pcm512x-audio,<param>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control.
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24db_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)
        glb_mclk                This option is only with Kali board. If enabled,
                                MCLK for Kali is used and PLL is disabled for
                                better voice quality. (default Off)


Name:   anyspi
Info:   Universal device tree overlay for SPI devices

        Just specify the SPI address and device name ("compatible" property).
        This overlay lacks any device-specific parameter support!

        For devices on spi1 or spi2, the interfaces should be enabled
        with one of the spi1-1/2/3cs and/or spi2-1/2/3cs overlays.

        Examples:
        1. SPI NOR flash on spi0.1, maximum SPI clock frequency 45MHz:
            dtoverlay=anyspi:spi0-1,dev="jedec,spi-nor",speed=45000000
        2. MCP3204 ADC on spi1.2, maximum SPI clock frequency 500kHz:
            dtoverlay=anyspi:spi1-2,dev="microchip,mcp3204"
Load:   dtoverlay=anyspi,<param>=<val>
Params: spi<n>-<m>              Configure device at spi<n>, cs<m>
                                (boolean, required)
        dev                     Set device name to search compatible module
                                (string, required)
        speed                   Set SPI clock frequency in Hz
                                (integer, optional, default 500000)


Name:   apds9960
Info:   Configures the AVAGO APDS9960 digital proximity, ambient light, RGB and
        gesture sensor
Load:   dtoverlay=apds9960,<param>=<val>
Params: gpiopin                 GPIO used for INT (default 4)
        noints                  Disable the interrupt GPIO line.


Name:   applepi-dac
Info:   Configures the Orchard Audio ApplePi-DAC audio card
Load:   dtoverlay=applepi-dac
Params: <None>


Name:   at86rf233
Info:   Configures the Atmel AT86RF233 802.15.4 low-power WPAN transceiver,
        connected to spi0.0
Load:   dtoverlay=at86rf233,<param>=<val>
Params: interrupt               GPIO used for INT (default 23)
        reset                   GPIO used for Reset (default 24)
        sleep                   GPIO used for Sleep (default 25)
        speed                   SPI bus speed in Hz (default 3000000)
        trim                    Fine tuning of the internal capacitance
                                arrays (0=+0pF, 15=+4.5pF, default 15)


Name:   audioinjector-addons
Info:   Configures the audioinjector.net audio add on soundcards
Load:   dtoverlay=audioinjector-addons,<param>=<val>
Params: non-stop-clocks         Keeps the clocks running even when the stream
                                is paused or stopped (default off)


Name:   audioinjector-ultra
Info:   Configures the audioinjector.net ultra soundcard
Load:   dtoverlay=audioinjector-ultra
Params: <None>


Name:   audioinjector-wm8731-audio
Info:   Configures the audioinjector.net audio add on soundcard
Load:   dtoverlay=audioinjector-wm8731-audio
Params: <None>


Name:   audiosense-pi
Info:   Configures the audiosense-pi add on soundcard
        For more information refer to
        https://gitlab.com/kakar0t/audiosense-pi
Load:   dtoverlay=audiosense-pi
Params: <None>


Name:   audremap
Info:   Switches PWM sound output to GPIOs on the 40-pin header
Load:   dtoverlay=audremap,<param>=<val>
Params: swap_lr                 Reverse the channel allocation, which will also
                                swap the audio jack outputs (default off)
        enable_jack             Don't switch off the audio jack output
                                (default off)
        pins_12_13              Select GPIOs 12 & 13 (default)
        pins_18_19              Select GPIOs 18 & 19


Name:   balena-fin
Info:   Overlay that enables WiFi, Bluetooth and the GPIO expander on the
        balenaFin carrier board for the Raspberry Pi Compute Module 3/3+ Lite.
Load:   dtoverlay=balena-fin
Params: <None>


Name:   bmp085_i2c-sensor
Info:   This overlay is now deprecated - see i2c-sensor
Load:   <Deprecated>


Name:   dht11
Info:   Overlay for the DHT11/DHT21/DHT22 humidity/temperature sensors
        Also sometimes found with the part number(s) AM230x.
Load:   dtoverlay=dht11,<param>=<val>
Params: gpiopin                 GPIO connected to the sensor's DATA output.
                                (default 4)


Name:   dionaudio-loco
Info:   Configures the Dion Audio LOCO DAC-AMP
Load:   dtoverlay=dionaudio-loco
Params: <None>


Name:   dionaudio-loco-v2
Info:   Configures the Dion Audio LOCO-V2 DAC-AMP
Load:   dtoverlay=dionaudio-loco-v2,<param>=<val>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=hifiberry-dacplus,24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24dB_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)


Name:   disable-bt
Info:   Disable onboard Bluetooth on Pi 3B, 3B+, 3A+, 4B and Zero W, restoring
        UART0/ttyAMA0 over GPIOs 14 & 15.
        N.B. To disable the systemd service that initialises the modem so it
        doesn't use the UART, use 'sudo systemctl disable hciuart'.
Load:   dtoverlay=disable-bt
Params: <None>


Name:   disable-wifi
Info:   Disable onboard WiFi on Pi 3B, 3B+, 3A+, 4B and Zero W.
Load:   dtoverlay=disable-wifi
Params: <None>


Name:   dpi18
Info:   Overlay for a generic 18-bit DPI display
        This uses GPIOs 0-21 (so no I2C, uart etc.), and activates the output
        2-3 seconds after the kernel has started.
Load:   dtoverlay=dpi18
Params: <None>


Name:   dpi24
Info:   Overlay for a generic 24-bit DPI display
        This uses GPIOs 0-27 (so no I2C, uart etc.), and activates the output
        2-3 seconds after the kernel has started.
Load:   dtoverlay=dpi24
Params: <None>


Name:   draws
Info:   Configures the NW Digital Radio DRAWS Hat

        The board includes an ADC to measure various board values and also
        provides two analog user inputs on the expansion header.  The ADC
        can be configured for various sample rates and gain values to adjust
        the input range.  Tables describing the two parameters follow.

        ADC Gain Values:
            0 = +/- 6.144V
            1 = +/- 4.096V
            2 = +/- 2.048V
            3 = +/- 1.024V
            4 = +/- 0.512V
            5 = +/- 0.256V
            6 = +/- 0.256V
            7 = +/- 0.256V

        ADC Datarate Values:
            0 = 128sps
            1 = 250sps
            2 = 490sps
            3 = 920sps
            4 = 1600sps (default)
            5 = 2400sps
            6 = 3300sps
            7 = 3300sps
Load:   dtoverlay=draws,<param>=<val>
Params: draws_adc_ch4_gain      Sets the full scale resolution of the ADCs
                                input voltage sensor (default 1)

        draws_adc_ch4_datarate  Sets the datarate of the ADCs input voltage
                                sensor

        draws_adc_ch5_gain      Sets the full scale resolution of the ADCs
                                5V rail voltage sensor (default 1)

        draws_adc_ch5_datarate  Sets the datarate of the ADCs 4V rail voltage
                                sensor

        draws_adc_ch6_gain      Sets the full scale resolution of the ADCs
                                AIN2 input (default 2)

        draws_adc_ch6_datarate  Sets the datarate of the ADCs AIN2 input

        draws_adc_ch7_gain      Sets the full scale resolution of the ADCs
                                AIN3 input (default 2)

        draws_adc_ch7_datarate  Sets the datarate of the ADCs AIN3 input

        alsaname                Name of the ALSA audio device (default "draws")


Name:   dwc-otg
Info:   Selects the dwc_otg USB controller driver which has fiq support. This
        is the default on all except the Pi Zero which defaults to dwc2.
Load:   dtoverlay=dwc-otg
Params: <None>


Name:   dwc2
Info:   Selects the dwc2 USB controller driver
Load:   dtoverlay=dwc2,<param>=<val>
Params: dr_mode                 Dual role mode: "host", "peripheral" or "otg"

        g-rx-fifo-size          Size of rx fifo size in gadget mode

        g-np-tx-fifo-size       Size of non-periodic tx fifo size in gadget
                                mode


[ The ds1307-rtc overlay has been deleted. See i2c-rtc. ]


Name:   enc28j60
Info:   Overlay for the Microchip ENC28J60 Ethernet Controller on SPI0
Load:   dtoverlay=enc28j60,<param>=<val>
Params: int_pin                 GPIO used for INT (default 25)

        speed                   SPI bus speed (default 12000000)


Name:   enc28j60-spi2
Info:   Overlay for the Microchip ENC28J60 Ethernet Controller on SPI2
Load:   dtoverlay=enc28j60-spi2,<param>=<val>
Params: int_pin                 GPIO used for INT (default 39)

        speed                   SPI bus speed (default 12000000)


Name:   exc3000
Info:   Enables I2C connected EETI EXC3000 multiple touch controller using
        GPIO 4 (pin 7 on GPIO header) for interrupt.
Load:   dtoverlay=exc3000,<param>=<val>
Params: interrupt               GPIO used for interrupt (default 4)
        sizex                   Touchscreen size x (default 4096)
        sizey                   Touchscreen size y (default 4096)
        invx                    Touchscreen inverted x axis
        invy                    Touchscreen inverted y axis
        swapxy                  Touchscreen swapped x y axis


Name:   fe-pi-audio
Info:   Configures the Fe-Pi Audio Sound Card
Load:   dtoverlay=fe-pi-audio
Params: <None>


Name:   goodix
Info:   Enables I2C connected Goodix gt9271 multiple touch controller using
        GPIOs 4 and 17 (pins 7 and 11 on GPIO header) for interrupt and reset.
Load:   dtoverlay=goodix,<param>=<val>
Params: interrupt               GPIO used for interrupt (default 4)
        reset                   GPIO used for reset (default 17)


Name:   googlevoicehat-soundcard
Info:   Configures the Google voiceHAT soundcard
Load:   dtoverlay=googlevoicehat-soundcard
Params: <None>


Name:   gpio-fan
Info:   Configure a GPIO pin to control a cooling fan.
Load:   dtoverlay=gpio-fan,<param>=<val>
Params: gpiopin                 GPIO used to control the fan (default 12)
        temp                    Temperature at which the fan switches on, in
                                millicelcius (default 55000)


Name:   gpio-ir
Info:   Use GPIO pin as rc-core style infrared receiver input. The rc-core-
        based gpio_ir_recv driver maps received keys directly to a
        /dev/input/event* device, all decoding is done by the kernel - LIRC is
        not required! The key mapping and other decoding parameters can be
        configured by "ir-keytable" tool.
Load:   dtoverlay=gpio-ir,<param>=<val>
Params: gpio_pin                Input pin number. Default is 18.

        gpio_pull               Desired pull-up/down state (off, down, up)
                                Default is "up".

        invert                  "1" = invert the input (active-low signalling).
                                "0" = non-inverted input (active-high
                                signalling). Default is "1".

        rc-map-name             Default rc keymap (can also be changed by
                                ir-keytable), defaults to "rc-rc6-mce"


Name:   gpio-ir-tx
Info:   Use GPIO pin as bit-banged infrared transmitter output.
        This is an alternative to "pwm-ir-tx". gpio-ir-tx doesn't require
        a PWM so it can be used together with onboard analog audio.
Load:   dtoverlay=gpio-ir-tx,<param>=<val>
Params: gpio_pin                Output GPIO (default 18)

        invert                  "1" = invert the output (make it active-low).
                                Default is "0" (active-high).


Name:   gpio-key
Info:   This is a generic overlay for activating GPIO keypresses using
        the gpio-keys library and this dtoverlay. Multiple keys can be
        set up using multiple calls to the overlay for configuring
        additional buttons or joysticks. You can see available keycodes
        at https://github.com/torvalds/linux/blob/v4.12/include/uapi/
        linux/input-event-codes.h#L64
Load:   dtoverlay=gpio-key,<param>=<val>
Params: gpio                    GPIO pin to trigger on (default 3)
        active_low              When this is 1 (active low), a falling
                                edge generates a key down event and a
                                rising edge generates a key up event.
                                When this is 0 (active high), this is
                                reversed. The default is 1 (active low)
        gpio_pull               Desired pull-up/down state (off, down, up)
                                Default is "up". Note that the default pin
                                (GPIO3) has an external pullup
        label                   Set a label for the key
        keycode                 Set the key code for the button


Name:   gpio-no-bank0-irq
Info:   Use this overlay to disable GPIO interrupts for GPIOs in bank 0 (0-27),
        which can be useful for UIO drivers.
        N.B. Using this overlay will trigger a kernel WARN during booting, but
        this can safely be ignored - the system should work as expected.
Load:   dtoverlay=gpio-no-bank0-irq
Params: <None>


Name:   gpio-no-irq
Info:   Use this overlay to disable all GPIO interrupts, which can be useful
        for user-space GPIO edge detection systems.
Load:   dtoverlay=gpio-no-irq
Params: <None>


Name:   gpio-poweroff
Info:   Drives a GPIO high or low on poweroff (including halt). Enabling this
        overlay will prevent the ability to boot by driving GPIO3 low.
Load:   dtoverlay=gpio-poweroff,<param>=<val>
Params: gpiopin                 GPIO for signalling (default 26)

        active_low              Set if the power control device requires a
                                high->low transition to trigger a power-down.
                                Note that this will require the support of a
                                custom dt-blob.bin to prevent a power-down
                                during the boot process, and that a reboot
                                will also cause the pin to go low.
        input                   Set if the gpio pin should be configured as
                                an input.
        export                  Set to export the configured pin to sysfs
        timeout_ms              Specify (in ms) how long the kernel waits for
                                power-down before issuing a WARN (default 3000).


Name:   gpio-shutdown
Info:   Initiates a shutdown when GPIO pin changes. The given GPIO pin
        is configured as an input key that generates KEY_POWER events.
        This event is handled by systemd-logind by initiating a
        shutdown. Systemd versions older than 225 need an udev rule
        enable listening to the input device:

                ACTION!="REMOVE", SUBSYSTEM=="input", KERNEL=="event*", \
                        SUBSYSTEMS=="platform", DRIVERS=="gpio-keys", \
                        ATTRS{keys}=="116", TAG+="power-switch"

        This overlay only handles shutdown. After shutdown, the system
        can be powered up again by driving GPIO3 low. The default
        configuration uses GPIO3 with a pullup, so if you connect a
        button between GPIO3 and GND (pin 5 and 6 on the 40-pin header),
        you get a shutdown and power-up button.
Load:   dtoverlay=gpio-shutdown,<param>=<val>
Params: gpio_pin                GPIO pin to trigger on (default 3)

        active_low              When this is 1 (active low), a falling
                                edge generates a key down event and a
                                rising edge generates a key up event.
                                When this is 0 (active high), this is
                                reversed. The default is 1 (active low).

        gpio_pull               Desired pull-up/down state (off, down, up)
                                Default is "up".

                                Note that the default pin (GPIO3) has an
                                external pullup.

        debounce                Specify the debounce interval in milliseconds
                                (default 100)


Name:   hd44780-lcd
Info:   Configures an HD44780 compatible LCD display. Uses 4 gpio pins for
        data, 2 gpio pins for enable and register select and 1 optional pin
        for enabling/disabling the backlight display.
Load:   dtoverlay=hd44780-lcd,<param>=<val>
Params: pin_d4                  GPIO pin for data pin D4 (default 6)

        pin_d5                  GPIO pin for data pin D5 (default 13)

        pin_d6                  GPIO pin for data pin D6 (default 19)

        pin_d7                  GPIO pin for data pin D7 (default 26)

        pin_en                  GPIO pin for "Enable" (default 21)

        pin_rs                  GPIO pin for "Register Select" (default 20)

        pin_bl                  Optional pin for enabling/disabling the
                                display backlight. (default disabled)

        display_height          Height of the display in characters

        display_width           Width of the display in characters


Name:   hdmi-backlight-hwhack-gpio
Info:   Devicetree overlay for GPIO based backlight on/off capability.
        Use this if you have one of those HDMI displays whose backlight cannot
        be controlled via DPMS over HDMI and plan to do a little soldering to
        use an RPi gpio pin for on/off switching. See:
        https://www.waveshare.com/wiki/7inch_HDMI_LCD_(C)#Backlight_Control
Load:   dtoverlay=hdmi-backlight-hwhack-gpio,<param>=<val>
Params: gpio_pin                GPIO pin used (default 17)
        active_low              Set this to 1 if the display backlight is
                                switched on when the wire goes low.
                                Leave the default (value 0) if the backlight
                                expects a high to switch it on.


Name:   hifiberry-amp
Info:   Configures the HifiBerry Amp and Amp+ audio cards
Load:   dtoverlay=hifiberry-amp
Params: <None>


Name:   hifiberry-dac
Info:   Configures the HifiBerry DAC audio card
Load:   dtoverlay=hifiberry-dac
Params: <None>


Name:   hifiberry-dacplus
Info:   Configures the HifiBerry DAC+ audio card
Load:   dtoverlay=hifiberry-dacplus,<param>=<val>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=hifiberry-dacplus,24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24dB_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)
        slave                   Force DAC+ Pro into slave mode, using Pi as
                                master for bit clock and frame clock.
        leds_off                If set to 'true' the onboard indicator LEDs
                                are switched off at all times.


Name:   hifiberry-dacplusadc
Info:   Configures the HifiBerry DAC+ADC audio card
Load:   dtoverlay=hifiberry-dacplusadc,<param>=<val>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=hifiberry-dacplus,24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24dB_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)
        slave                   Force DAC+ Pro into slave mode, using Pi as
                                master for bit clock and frame clock.
        leds_off                If set to 'true' the onboard indicator LEDs
                                are switched off at all times.


Name:   hifiberry-dacplusadcpro
Info:   Configures the HifiBerry DAC+ADC PRO audio card
Load:   dtoverlay=hifiberry-dacplusadcpro,<param>=<val>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=hifiberry-dacplusadcpro,24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24dB_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)
        slave                   Force DAC+ADC Pro into slave mode, using Pi as
                                master for bit clock and frame clock.
        leds_off                If set to 'true' the onboard indicator LEDs
                                are switched off at all times.


Name:   hifiberry-dacplusdsp
Info:   Configures the HifiBerry DAC+DSP audio card
Load:   dtoverlay=hifiberry-dacplusdsp
Params: <None>


Name:   hifiberry-dacplushd
Info:   Configures the HifiBerry DAC+ HD audio card
Load:   dtoverlay=hifiberry-dacplushd
Params: <None>


Name:   hifiberry-digi
Info:   Configures the HifiBerry Digi and Digi+ audio card
Load:   dtoverlay=hifiberry-digi
Params: <None>


Name:   hifiberry-digi-pro
Info:   Configures the HifiBerry Digi+ Pro audio card
Load:   dtoverlay=hifiberry-digi-pro
Params: <None>


Name:   hy28a
Info:   HY28A - 2.8" TFT LCD Display Module by HAOYU Electronics
        Default values match Texy's display shield
Load:   dtoverlay=hy28a,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}

        xohms                   Touchpanel sensitivity (X-plate resistance)

        resetgpio               GPIO used to reset controller

        ledgpio                 GPIO used to control backlight


Name:   hy28b
Info:   HY28B - 2.8" TFT LCD Display Module by HAOYU Electronics
        Default values match Texy's display shield
Load:   dtoverlay=hy28b,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}

        xohms                   Touchpanel sensitivity (X-plate resistance)

        resetgpio               GPIO used to reset controller

        ledgpio                 GPIO used to control backlight


Name:   hy28b-2017
Info:   HY28B 2017 version - 2.8" TFT LCD Display Module by HAOYU Electronics
        Default values match Texy's display shield
Load:   dtoverlay=hy28b-2017,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}

        xohms                   Touchpanel sensitivity (X-plate resistance)

        resetgpio               GPIO used to reset controller

        ledgpio                 GPIO used to control backlight


Name:   i-sabre-q2m
Info:   Configures the Audiophonics I-SABRE Q2M DAC
Load:   dtoverlay=i-sabre-q2m
Params: <None>


Name:   i2c-bcm2708
Info:   Fall back to the i2c_bcm2708 driver for the i2c_arm bus.
Load:   dtoverlay=i2c-bcm2708
Params: <None>


Name:   i2c-gpio
Info:   Adds support for software i2c controller on gpio pins
Load:   dtoverlay=i2c-gpio,<param>=<val>
Params: i2c_gpio_sda            GPIO used for I2C data (default "23")

        i2c_gpio_scl            GPIO used for I2C clock (default "24")

        i2c_gpio_delay_us       Clock delay in microseconds
                                (default "2" = ~100kHz)

        bus                     Set to a unique, non-zero value if wanting
                                multiple i2c-gpio busses. If set, will be used
                                as the preferred bus number (/dev/i2c-<n>). If
                                not set, the default value is 0, but the bus
                                number will be dynamically assigned - probably
                                3.


Name:   i2c-mux
Info:   Adds support for a number of I2C bus multiplexers on i2c_arm
Load:   dtoverlay=i2c-mux,<param>=<val>
Params: pca9542                 Select the NXP PCA9542 device

        pca9545                 Select the NXP PCA9545 device

        pca9548                 Select the NXP PCA9548 device

        addr                    Change I2C address of the device (default 0x70)


[ The i2c-mux-pca9548a overlay has been deleted. See i2c-mux. ]


Name:   i2c-pwm-pca9685a
Info:   Adds support for an NXP PCA9685A I2C PWM controller on i2c_arm
Load:   dtoverlay=i2c-pwm-pca9685a,<param>=<val>
Params: addr                    I2C address of PCA9685A (default 0x40)


Name:   i2c-rtc
Info:   Adds support for a number of I2C Real Time Clock devices
Load:   dtoverlay=i2c-rtc,<param>=<val>
Params: abx80x                  Select one of the ABx80x family:
                                  AB0801, AB0803, AB0804, AB0805,
                                  AB1801, AB1803, AB1804, AB1805

        ds1307                  Select the DS1307 device

        ds1339                  Select the DS1339 device

        ds3231                  Select the DS3231 device

        m41t62                  Select the M41T62 device

        mcp7940x                Select the MCP7940x device

        mcp7941x                Select the MCP7941x device

        pcf2127                 Select the PCF2127 device

        pcf2129                 Select the PCF2129 device

        pcf8523                 Select the PCF8523 device

        pcf85363                Select the PCF85363 device

        pcf8563                 Select the PCF8563 device

        rv3028                  Select the Micro Crystal RV3028 device

        addr                    Sets the address for the RTC. Note that the
                                device must be configured to use the specified
                                address.

        trickle-diode-type      Diode type for trickle charge - "standard" or
                                "schottky" (ABx80x only)

        trickle-resistor-ohms   Resistor value for trickle charge (DS1339,
                                ABx80x, RV3028)

        wakeup-source           Specify that the RTC can be used as a wakeup
                                source

        backup-switchover-mode  Backup power supply switch mode. Must be 0 for
                                off or 1 for Vdd < VBackup (RV3028 only)


Name:   i2c-rtc-gpio
Info:   Adds support for a number of I2C Real Time Clock devices
        using the software i2c controller
Load:   dtoverlay=i2c-rtc-gpio,<param>=<val>
Params: abx80x                  Select one of the ABx80x family:
                                  AB0801, AB0803, AB0804, AB0805,
                                  AB1801, AB1803, AB1804, AB1805

        ds1307                  Select the DS1307 device

        ds1339                  Select the DS1339 device

        ds3231                  Select the DS3231 device

        m41t62                  Select the M41T62 device

        mcp7940x                Select the MCP7940x device

        mcp7941x                Select the MCP7941x device

        pcf2127                 Select the PCF2127 device

        pcf2129                 Select the PCF2129 device

        pcf8523                 Select the PCF8523 device

        pcf8563                 Select the PCF8563 device

        rv3028                  Select the Micro Crystal RV3028 device

        addr                    Sets the address for the RTC. Note that the
                                device must be configured to use the specified
                                address.

        trickle-diode-type      Diode type for trickle charge - "standard" or
                                "schottky" (ABx80x only)

        trickle-resistor-ohms   Resistor value for trickle charge (DS1339,
                                ABx80x, RV3028)

        wakeup-source           Specify that the RTC can be used as a wakeup
                                source

        backup-switchover-mode  Backup power supply switch mode. Must be 0 for
                                off or 1 for Vdd < VBackup (RV3028 only)

        i2c_gpio_sda            GPIO used for I2C data (default "23")

        i2c_gpio_scl            GPIO used for I2C clock (default "24")

        i2c_gpio_delay_us       Clock delay in microseconds
                                (default "2" = ~100kHz)


Name:   i2c-sensor
Info:   Adds support for a number of I2C barometric pressure and temperature
        sensors on i2c_arm
Load:   dtoverlay=i2c-sensor,<param>=<val>
Params: addr                    Set the address for the BME280, BME680, BMP280,
                                DS1621, HDC100X, LM75, SHT3x or TMP102

        bme280                  Select the Bosch Sensortronic BME280
                                Valid addresses 0x76-0x77, default 0x76

        bme680                  Select the Bosch Sensortronic BME680
                                Valid addresses 0x76-0x77, default 0x76

        bmp085                  Select the Bosch Sensortronic BMP085

        bmp180                  Select the Bosch Sensortronic BMP180

        bmp280                  Select the Bosch Sensortronic BMP280
                                Valid addresses 0x76-0x77, default 0x76

        ds1621                  Select the Dallas Semiconductors DS1621 temp
                                sensor. Valid addresses 0x48-0x4f, default 0x48

        hdc100x                 Select the Texas Instruments HDC100x temp sensor
                                Valid addresses 0x40-0x43, default 0x40

        htu21                   Select the HTU21 temperature and humidity sensor

        lm75                    Select the Maxim LM75 temperature sensor
                                Valid addresses 0x48-0x4f, default 0x4f

        lm75addr                Deprecated - use addr parameter instead

        max17040                Select the Maxim Integrated MAX17040 battery
                                monitor

        sht3x                   Select the Sensiron SHT3x temperature and
                                humidity sensor. Valid addresses 0x44-0x45,
                                default 0x44

        si7020                  Select the Silicon Labs Si7013/20/21 humidity/
                                temperature sensor

        tmp102                  Select the Texas Instruments TMP102 temp sensor
                                Valid addresses 0x48-0x4b, default 0x48

        tsl4531                 Select the AMS TSL4531 digital ambient light
                                sensor

        veml6070                Select the Vishay VEML6070 ultraviolet light
                                sensor


Name:   i2c0
Info:   Change i2c0 pin usage. Not all pin combinations are usable on all
        platforms - platforms other then Compute Modules can only use this
        to disable transaction combining.
Load:   dtoverlay=i2c0,<param>=<val>
Params: pins_0_1                Use pins 0 and 1 (default)
        pins_28_29              Use pins 28 and 29
        pins_44_45              Use pins 44 and 45
        pins_46_47              Use pins 46 and 47
        combine                 Allow transactions to be combined (default
                                "yes")


Name:   i2c0-bcm2708
Info:   Deprecated, legacy version of i2c0, from which it inherits its
        parameters, just adding the explicit individual pin specifiers.
Load:   <Deprecated>
Params: sda0_pin                GPIO pin for SDA0 (deprecated - use pins_*)
        scl0_pin                GPIO pin for SCL0 (deprecated - use pins_*)


Name:   i2c1
Info:   Change i2c1 pin usage. Not all pin combinations are usable on all
        platforms - platforms other then Compute Modules can only use this
        to disable transaction combining.
Load:   dtoverlay=i2c1,<param>=<val>
Params: pins_2_3                Use pins 2 and 3 (default)
        pins_44_45              Use pins 44 and 45
        combine                 Allow transactions to be combined (default
                                "yes")


Name:   i2c1-bcm2708
Info:   Deprecated, legacy version of i2c1, from which it inherits its
        parameters, just adding the explicit individual pin specifiers.
Load:   <Deprecated>
Params: sda1_pin                GPIO pin for SDA1 (2 or 44 - default 2)
        scl1_pin                GPIO pin for SCL1 (3 or 45 - default 3)
        pin_func                Alternative pin function (4 (alt0), 6 (alt2) -
                                default 4)


Name:   i2c3
Info:   Enable the i2c3 bus
Load:   dtoverlay=i2c3,<param>
Params: pins_2_3                Use GPIOs 2 and 3
        pins_4_5                Use GPIOs 4 and 5 (default)
        baudrate                Set the baudrate for the interface (default
                                "100000")


Name:   i2c4
Info:   Enable the i2c4 bus
Load:   dtoverlay=i2c4,<param>
Params: pins_6_7                Use GPIOs 6 and 7
        pins_8_9                Use GPIOs 8 and 9 (default)
        baudrate                Set the baudrate for the interface (default
                                "100000")


Name:   i2c5
Info:   Enable the i2c5 bus
Load:   dtoverlay=i2c5,<param>
Params: pins_10_11              Use GPIOs 10 and 11
        pins_12_13              Use GPIOs 12 and 13 (default)
        baudrate                Set the baudrate for the interface (default
                                "100000")


Name:   i2c6
Info:   Enable the i2c6 bus
Load:   dtoverlay=i2c6,<param>
Params: pins_0_1                Use GPIOs 0 and 1
        pins_22_23              Use GPIOs 22 and 23 (default)
        baudrate                Set the baudrate for the interface (default
                                "100000")


Name:   i2s-gpio28-31
Info:   move I2S function block to GPIO 28 to 31
Load:   dtoverlay=i2s-gpio28-31
Params: <None>


Name:   ilitek251x
Info:   Enables I2C connected Ilitek 251x multiple touch controller using
        GPIO 4 (pin 7 on GPIO header) for interrupt.
Load:   dtoverlay=ilitek251x,<param>=<val>
Params: interrupt               GPIO used for interrupt (default 4)
        sizex                   Touchscreen size x, horizontal resolution of
                                touchscreen (in pixels)
        sizey                   Touchscreen size y, vertical resolution of
                                touchscreen (in pixels)


Name:   imx219
Info:   Sony IMX219 camera module.
        Uses Unicam 1, which is the standard camera connector on most Pi
        variants.
Load:   dtoverlay=imx219,<param>=<val>
Params: i2c_pins_0_1            Use pins 0&1 for the I2C instead of 44&45.
                                Useful on Compute Modules.

        i2c_pins_28_29          Use pins 28&29 for the I2C instead of 44&45.
                                This is required for Pi B+, 2, 0, and 0W.


Name:   iqaudio-codec
Info:   Configures the IQaudio Codec audio card
Load:   dtoverlay=iqaudio-codec
Params: <None>


Name:   iqaudio-dac
Info:   Configures the IQaudio DAC audio card
Load:   dtoverlay=iqaudio-dac,<param>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=iqaudio-dac,24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24db_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)


Name:   iqaudio-dacplus
Info:   Configures the IQaudio DAC+ audio card
Load:   dtoverlay=iqaudio-dacplus,<param>=<val>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=iqaudio-dacplus,24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24db_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)
        auto_mute_amp           If specified, unmute/mute the IQaudIO amp when
                                starting/stopping audio playback.
        unmute_amp              If specified, unmute the IQaudIO amp once when
                                the DAC driver module loads.


Name:   iqaudio-digi-wm8804-audio
Info:   Configures the IQAudIO Digi WM8804 audio card
Load:   dtoverlay=iqaudio-digi-wm8804-audio,<param>=<val>
Params: card_name               Override the default, "IQAudIODigi", card name.
        dai_name                Override the default, "IQAudIO Digi", dai name.
        dai_stream_name         Override the default, "IQAudIO Digi HiFi",
                                dai stream name.


Name:   irs1125
Info:   Infineon irs1125 TOF camera module.
        Uses Unicam 1, which is the standard camera connector on most Pi
        variants.
Load:   dtoverlay=irs1125,<param>=<val>
Params: i2c_pins_0_1            Use pins 0&1 for the I2C instead of 44&45.
                                Useful on Compute Modules.

        i2c_pins_28_29          Use pins 28&29 for the I2C instead of 44&45.
                                This is required for Pi B+, 2, 0, and 0W.


Name:   jedec-spi-nor
Info:   Adds support for JEDEC-compliant SPI NOR flash devices.  (Note: The
        "jedec,spi-nor" kernel driver was formerly known as "m25p80".)
Load:   dtoverlay=jedec-spi-nor,<param>=<val>
Params: flash-spi<n>-<m>        Enables flash device on SPI<n>, CS#<m>.
        flash-fastr-spi<n>-<m>  Enables flash device with fast read capability
                                on SPI<n>, CS#<m>.


Name:   justboom-both
Info:   Simultaneous usage of an justboom-dac and justboom-digi based
        card
Load:   dtoverlay=justboom-both,<param>=<val>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=justboom-dac,24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24dB_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)


Name:   justboom-dac
Info:   Configures the JustBoom DAC HAT, Amp HAT, DAC Zero and Amp Zero audio
        cards
Load:   dtoverlay=justboom-dac,<param>=<val>
Params: 24db_digital_gain       Allow gain to be applied via the PCM512x codec
                                Digital volume control. Enable with
                                "dtoverlay=justboom-dac,24db_digital_gain"
                                (The default behaviour is that the Digital
                                volume control is limited to a maximum of
                                0dB. ie. it can attenuate but not provide
                                gain. For most users, this will be desired
                                as it will prevent clipping. By appending
                                the 24dB_digital_gain parameter, the Digital
                                volume control will allow up to 24dB of
                                gain. If this parameter is enabled, it is the
                                responsibility of the user to ensure that
                                the Digital volume control is set to a value
                                that does not result in clipping/distortion!)


Name:   justboom-digi
Info:   Configures the JustBoom Digi HAT and Digi Zero audio cards
Load:   dtoverlay=justboom-digi
Params: <None>


Name:   lirc-rpi
Info:   This overlay has been deprecated and removed - see gpio-ir
Load:   <Deprecated>


Name:   ltc294x
Info:   Adds support for the ltc294x family of battery gauges
Load:   dtoverlay=ltc294x,<param>=<val>
Params: ltc2941                 Select the ltc2941 device

        ltc2942                 Select the ltc2942 device

        ltc2943                 Select the ltc2943 device

        ltc2944                 Select the ltc2944 device

        resistor-sense          The sense resistor value in milli-ohms.
                                Can be a 32-bit negative value when the battery
                                has been connected to the wrong end of the
                                resistor.

        prescaler-exponent      Range and accuracy of the gauge. The value is
                                programmed into the chip only if it differs
                                from the current setting.
                                For LTC2941 only:
                                - Default value is 128
                                - the exponent is in the range 0-7 (default 7)
                                See the datasheet for more information.


Name:   max98357a
Info:   Configures the Maxim MAX98357A I2S DAC
Load:   dtoverlay=max98357a,<param>=<val>
Params: no-sdmode               Driver does not manage the state of the DAC's
                                SD_MODE pin (i.e. chip is always on).
        sdmode-pin              integer, GPIO pin connected to the SD_MODE input
                                of the DAC (default GPIO4 if parameter omitted).


Name:   mbed-dac
Info:   Configures the mbed AudioCODEC (TLV320AIC23B)
Load:   dtoverlay=mbed-dac
Params: <None>


Name:   mcp23017
Info:   Configures the MCP23017 I2C GPIO expander
Load:   dtoverlay=mcp23017,<param>=<val>
Params: gpiopin                 Gpio pin connected to the INTA output of the
                                MCP23017 (default: 4)

        addr                    I2C address of the MCP23017 (default: 0x20)

        mcp23008                Configure an MCP23008 instead.
        noints                  Disable the interrupt GPIO line.


Name:   mcp23s17
Info:   Configures the MCP23S08/17 SPI GPIO expanders.
        If devices are present on SPI1 or SPI2, those interfaces must be enabled
        with one of the spi1-1/2/3cs and/or spi2-1/2/3cs overlays.
        If interrupts are enabled for a device on a given CS# on a SPI bus, that
        device must be the only one present on that SPI bus/CS#.
Load:   dtoverlay=mcp23s17,<param>=<val>
Params: s08-spi<n>-<m>-present  4-bit integer, bitmap indicating MCP23S08
                                devices present on SPI<n>, CS#<m>

        s17-spi<n>-<m>-present  8-bit integer, bitmap indicating MCP23S17
                                devices present on SPI<n>, CS#<m>

        s08-spi<n>-<m>-int-gpio integer, enables interrupts on a single
                                MCP23S08 device on SPI<n>, CS#<m>, specifies
                                the GPIO pin to which INT output of MCP23S08
                                is connected.

        s17-spi<n>-<m>-int-gpio integer, enables mirrored interrupts on a
                                single MCP23S17 device on SPI<n>, CS#<m>,
                                specifies the GPIO pin to which either INTA
                                or INTB output of MCP23S17 is connected.


Name:   mcp2515-can0
Info:   Configures the MCP2515 CAN controller on spi0.0
Load:   dtoverlay=mcp2515-can0,<param>=<val>
Params: oscillator              Clock frequency for the CAN controller (Hz)

        spimaxfrequency         Maximum SPI frequence (Hz)

        interrupt               GPIO for interrupt signal


Name:   mcp2515-can1
Info:   Configures the MCP2515 CAN controller on spi0.1
Load:   dtoverlay=mcp2515-can1,<param>=<val>
Params: oscillator              Clock frequency for the CAN controller (Hz)

        spimaxfrequency         Maximum SPI frequence (Hz)

        interrupt               GPIO for interrupt signal


Name:   mcp3008
Info:   Configures MCP3008 A/D converters
        For devices on spi1 or spi2, the interfaces should be enabled
        with one of the spi1-1/2/3cs and/or spi2-1/2/3cs overlays.
Load:   dtoverlay=mcp3008,<param>[=<val>]
Params: spi<n>-<m>-present      boolean, configure device at spi<n>, cs<m>
        spi<n>-<m>-speed        integer, set the spi bus speed for this device


Name:   mcp3202
Info:   Configures MCP3202 A/D converters
        For devices on spi1 or spi2, the interfaces should be enabled
        with one of the spi1-1/2/3cs and/or spi2-1/2/3cs overlays.
Load:   dtoverlay=mcp3202,<param>[=<val>]
Params: spi<n>-<m>-present      boolean, configure device at spi<n>, cs<m>
        spi<n>-<m>-speed        integer, set the spi bus speed for this device


Name:   mcp342x
Info:   Overlay for activation of Microchip MCP3421-3428 ADCs over I2C
Load:   dtoverlay=mcp342x,<param>=<val>
Params: addr                    I2C bus address of device, for devices with
                                addresses that are configurable, e.g. by
                                hardware links (default=0x68)
        mcp3421                 The device is an MCP3421
        mcp3422                 The device is an MCP3422
        mcp3423                 The device is an MCP3423
        mcp3424                 The device is an MCP3424
        mcp3425                 The device is an MCP3425
        mcp3426                 The device is an MCP3426
        mcp3427                 The device is an MCP3427
        mcp3428                 The device is an MCP3428


Name:   media-center
Info:   Media Center HAT - 2.83" Touch Display + extras by Pi Supply
Load:   dtoverlay=media-center,<param>=<val>
Params: speed                   Display SPI bus speed
        rotate                  Display rotation {0,90,180,270}
        fps                     Delay between frame updates
        xohms                   Touchpanel sensitivity (X-plate resistance)
        swapxy                  Swap x and y axis
        backlight               Change backlight GPIO pin {e.g. 12, 18}
        gpio_out_pin            GPIO for output (default "17")
        gpio_in_pin             GPIO for input (default "18")
        gpio_in_pull            Pull up/down/off on the input pin
                                (default "down")
        sense                   Override the IR receive auto-detection logic:
                                 "0" = force active-high
                                 "1" = force active-low
                                 "-1" = use auto-detection
                                (default "-1")
        softcarrier             Turn the software carrier "on" or "off"
                                (default "on")
        invert                  "on" = invert the output pin (default "off")
        debug                   "on" = enable additional debug messages
                                (default "off")


Name:   merus-amp
Info:   Configures the merus-amp audio card
Load:   dtoverlay=merus-amp
Params: <None>


Name:   midi-uart0
Info:   Configures UART0 (ttyAMA0) so that a requested 38.4kbaud actually gets
        31.25kbaud, the frequency required for MIDI
Load:   dtoverlay=midi-uart0
Params: <None>


Name:   midi-uart1
Info:   Configures UART1 (ttyS0) so that a requested 38.4kbaud actually gets
        31.25kbaud, the frequency required for MIDI
Load:   dtoverlay=midi-uart1
Params: <None>


Name:   miniuart-bt
Info:   Switch the onboard Bluetooth function on Pi 3B, 3B+, 3A+, 4B and Zero W
        to use the mini-UART (ttyS0) and restore UART0/ttyAMA0 over GPIOs 14 &
        15. Note that this may reduce the maximum usable baudrate.
        N.B. It is also necessary to edit /lib/systemd/system/hciuart.service
        and replace ttyAMA0 with ttyS0, unless using Raspbian or another
        distribution with udev rules that create /dev/serial0 and /dev/serial1,
        in which case use /dev/serial1 instead because it will always be
        correct. Furthermore, you must also set core_freq and core_freq_min to
        the same value in config.txt or the miniuart will not work.
Load:   dtoverlay=miniuart-bt
Params: <None>


Name:   mmc
Info:   Selects the bcm2835-mmc SD/MMC driver, optionally with overclock
Load:   dtoverlay=mmc,<param>=<val>
Params: overclock_50            Clock (in MHz) to use when the MMC framework
                                requests 50MHz


Name:   mpu6050
Info:   Overlay for i2c connected mpu6050 imu
Load:   dtoverlay=mpu6050,<param>=<val>
Params: interrupt               GPIO pin for interrupt (default 4)


Name:   mz61581
Info:   MZ61581 display by Tontec
Load:   dtoverlay=mz61581,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        txbuflen                Transmit buffer length (default 32768)

        debug                   Debug output level {0-7}

        xohms                   Touchpanel sensitivity (X-plate resistance)


Name:   ov5647
Info:   Omnivision OV5647 camera module.
        Uses Unicam 1, which is the standard camera connector on most Pi
        variants.
Load:   dtoverlay=ov5647,<param>=<val>
Params: i2c_pins_0_1            Use pins 0&1 for the I2C instead of 44&45.
                                Useful on Compute Modules.

        i2c_pins_28_29          Use pins 28&29 for the I2C instead of 44&45.
                                This is required for Pi B+, 2, 0, and 0W.


Name:   papirus
Info:   PaPiRus ePaper Screen by Pi Supply (both HAT and pHAT)
Load:   dtoverlay=papirus,<param>=<val>
Params: panel                   Display panel (required):
                                1.44": e1144cs021
                                2.0":  e2200cs021
                                2.7":  e2271cs021

        speed                   Display SPI bus speed


[ The pcf2127-rtc overlay has been deleted. See i2c-rtc. ]


[ The pcf8523-rtc overlay has been deleted. See i2c-rtc. ]


[ The pcf8563-rtc overlay has been deleted. See i2c-rtc. ]


Name:   pi3-act-led
Info:   This overlay has been renamed act-led, keeping pi3-act-led as an alias
        for backwards compatibility.
Load:   <Deprecated>


Name:   pi3-disable-bt
Info:   This overlay has been renamed disable-bt, keeping pi3-disable-bt as an
        alias for backwards compatibility.
Load:   <Deprecated>


Name:   pi3-disable-wifi
Info:   This overlay has been renamed disable-wifi, keeping pi3-disable-wifi as
        an alias for backwards compatibility.
Load:   <Deprecated>


Name:   pi3-miniuart-bt
Info:   This overlay has been renamed miniuart-bt, keeping pi3-miniuart-bt as
        an alias for backwards compatibility.
Load:   <Deprecated>


Name:   pibell
Info:   Configures the pibell audio card.
Load:   dtoverlay=pibell,<param>=<val>
Params: alsaname                Set the name as it appears in ALSA (default
                                "PiBell")


Name:   piglow
Info:   Configures the PiGlow by pimoroni.com
Load:   dtoverlay=piglow
Params: <None>


Name:   piscreen
Info:   PiScreen display by OzzMaker.com
Load:   dtoverlay=piscreen,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}

        xohms                   Touchpanel sensitivity (X-plate resistance)


Name:   piscreen2r
Info:   PiScreen 2 with resistive TP display by OzzMaker.com
Load:   dtoverlay=piscreen2r,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}

        xohms                   Touchpanel sensitivity (X-plate resistance)


Name:   pisound
Info:   Configures the Blokas Labs pisound card
Load:   dtoverlay=pisound
Params: <None>


Name:   pitft22
Info:   Adafruit PiTFT 2.2" screen
Load:   dtoverlay=pitft22,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}


Name:   pitft28-capacitive
Info:   Adafruit PiTFT 2.8" capacitive touch screen
Load:   dtoverlay=pitft28-capacitive,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}

        touch-sizex             Touchscreen size x (default 240)

        touch-sizey             Touchscreen size y (default 320)

        touch-invx              Touchscreen inverted x axis

        touch-invy              Touchscreen inverted y axis

        touch-swapxy            Touchscreen swapped x y axis


Name:   pitft28-resistive
Info:   Adafruit PiTFT 2.8" resistive touch screen
Load:   dtoverlay=pitft28-resistive,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}


Name:   pitft35-resistive
Info:   Adafruit PiTFT 3.5" resistive touch screen
Load:   dtoverlay=pitft35-resistive,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}


Name:   pps-gpio
Info:   Configures the pps-gpio (pulse-per-second time signal via GPIO).
Load:   dtoverlay=pps-gpio,<param>=<val>
Params: gpiopin                 Input GPIO (default "18")
        assert_falling_edge     When present, assert is indicated by a falling
                                edge, rather than by a rising edge (default
                                off)
        capture_clear           Generate clear events on the trailing edge
                                (default off)


Name:   pwm
Info:   Configures a single PWM channel
        Legal pin,function combinations for each channel:
          PWM0: 12,4(Alt0) 18,2(Alt5) 40,4(Alt0)            52,5(Alt1)
          PWM1: 13,4(Alt0) 19,2(Alt5) 41,4(Alt0) 45,4(Alt0) 53,5(Alt1)
        N.B.:
          1) Pin 18 is the only one available on all platforms, and
             it is the one used by the I2S audio interface.
             Pins 12 and 13 might be better choices on an A+, B+ or Pi2.
          2) The onboard analogue audio output uses both PWM channels.
          3) So be careful mixing audio and PWM.
          4) Currently the clock must have been enabled and configured
             by other means.
Load:   dtoverlay=pwm,<param>=<val>
Params: pin                     Output pin (default 18) - see table
        func                    Pin function (default 2 = Alt5) - see above
        clock                   PWM clock frequency (informational)


Name:   pwm-2chan
Info:   Configures both PWM channels
        Legal pin,function combinations for each channel:
          PWM0: 12,4(Alt0) 18,2(Alt5) 40,4(Alt0)            52,5(Alt1)
          PWM1: 13,4(Alt0) 19,2(Alt5) 41,4(Alt0) 45,4(Alt0) 53,5(Alt1)
        N.B.:
          1) Pin 18 is the only one available on all platforms, and
             it is the one used by the I2S audio interface.
             Pins 12 and 13 might be better choices on an A+, B+ or Pi2.
          2) The onboard analogue audio output uses both PWM channels.
          3) So be careful mixing audio and PWM.
          4) Currently the clock must have been enabled and configured
             by other means.
Load:   dtoverlay=pwm-2chan,<param>=<val>
Params: pin                     Output pin (default 18) - see table
        pin2                    Output pin for other channel (default 19)
        func                    Pin function (default 2 = Alt5) - see above
        func2                   Function for pin2 (default 2 = Alt5)
        clock                   PWM clock frequency (informational)


Name:   pwm-ir-tx
Info:   Use GPIO pin as pwm-assisted infrared transmitter output.
        This is an alternative to "gpio-ir-tx". pwm-ir-tx makes use
        of PWM0 to reduce the CPU load during transmission compared to
        gpio-ir-tx which uses bit-banging.
        Legal pin,function combinations are:
          12,4(Alt0) 18,2(Alt5) 40,4(Alt0) 52,5(Alt1)
Load:   dtoverlay=pwm-ir-tx,<param>=<val>
Params: gpio_pin                Output GPIO (default 18)

        func                    Pin function (default 2 = Alt5)


Name:   qca7000
Info:   I2SE's Evaluation Board for PLC Stamp micro
Load:   dtoverlay=qca7000,<param>=<val>
Params: int_pin                 GPIO pin for interrupt signal (default 23)

        speed                   SPI bus speed (default 12 MHz)


Name:   rotary-encoder
Info:   Overlay for GPIO connected rotary encoder.
Load:   dtoverlay=rotary-encoder,<param>=<val>
Params: pin_a                   GPIO connected to rotary encoder channel A
                                (default 4).
        pin_b                   GPIO connected to rotary encoder channel B
                                (default 17).
        relative_axis           register a relative axis rather than an
                                absolute one. Relative axis will only
                                generate +1/-1 events on the input device,
                                hence no steps need to be passed.
        linux_axis              the input subsystem axis to map to this
                                rotary encoder. Defaults to 0 (ABS_X / REL_X)
        rollover                Automatic rollover when the rotary value
                                becomes greater than the specified steps or
                                smaller than 0. For absolute axis only.
        steps-per-period        Number of steps (stable states) per period.
                                The values have the following meaning:
                                1: Full-period mode (default)
                                2: Half-period mode
                                4: Quarter-period mode
        steps                   Number of steps in a full turnaround of the
                                encoder. Only relevant for absolute axis.
                                Defaults to 24 which is a typical value for
                                such devices.
        wakeup                  Boolean, rotary encoder can wake up the
                                system.
        encoding                String, the method used to encode steps.
                                Supported are "gray" (the default and more
                                common) and "binary".


Name:   rpi-backlight
Info:   Raspberry Pi official display backlight driver
Load:   dtoverlay=rpi-backlight
Params: <None>


Name:   rpi-cirrus-wm5102
Info:   Configures the Cirrus Logic Audio Card
Load:   dtoverlay=rpi-cirrus-wm5102
Params: <None>


Name:   rpi-dac
Info:   Configures the RPi DAC audio card
Load:   dtoverlay=rpi-dac
Params: <None>


Name:   rpi-display
Info:   RPi-Display - 2.8" Touch Display by Watterott
Load:   dtoverlay=rpi-display,<param>=<val>
Params: speed                   Display SPI bus speed
        rotate                  Display rotation {0,90,180,270}
        fps                     Delay between frame updates
        debug                   Debug output level {0-7}
        xohms                   Touchpanel sensitivity (X-plate resistance)
        swapxy                  Swap x and y axis
        backlight               Change backlight GPIO pin {e.g. 12, 18}


Name:   rpi-ft5406
Info:   Official Raspberry Pi display touchscreen
Load:   dtoverlay=rpi-ft5406,<param>=<val>
Params: touchscreen-size-x      Touchscreen X resolution (default 800)
        touchscreen-size-y      Touchscreen Y resolution (default 600);
        touchscreen-inverted-x  Invert touchscreen X coordinates (default 0);
        touchscreen-inverted-y  Invert touchscreen Y coordinates (default 0);
        touchscreen-swapped-x-y Swap X and Y cordinates (default 0);


Name:   rpi-poe
Info:   Raspberry Pi PoE HAT fan
Load:   dtoverlay=rpi-poe,<param>[=<val>]
Params: poe_fan_temp0           Temperature (in millicelcius) at which the fan
                                turns on (default 50000)
        poe_fan_temp0_hyst      Temperature delta (in millicelcius) at which
                                the fan turns off (default 5000)
        poe_fan_temp1           Temperature (in millicelcius) at which the fan
                                speeds up (default 55000)
        poe_fan_temp1_hyst      Temperature delta (in millicelcius) at which
                                the fan slows down (default 5000)


Name:   rpi-proto
Info:   Configures the RPi Proto audio card
Load:   dtoverlay=rpi-proto
Params: <None>


Name:   rpi-sense
Info:   Raspberry Pi Sense HAT
Load:   dtoverlay=rpi-sense
Params: <None>


Name:   rpi-tv
Info:   Raspberry Pi TV HAT
Load:   dtoverlay=rpi-tv
Params: <None>


Name:   rra-digidac1-wm8741-audio
Info:   Configures the Red Rocks Audio DigiDAC1 soundcard
Load:   dtoverlay=rra-digidac1-wm8741-audio
Params: <None>


Name:   sc16is750-i2c
Info:   Overlay for the NXP SC16IS750 UART with I2C Interface
        Enables the chip on I2C1 at 0x48 (or the "addr" parameter value). To
        select another address, please refer to table 10 in reference manual.
Load:   dtoverlay=sc16is750-i2c,<param>=<val>
Params: int_pin                 GPIO used for IRQ (default 24)
        addr                    Address (default 0x48)
        xtal                    On-board crystal frequency (default 14745600)


Name:   sc16is752-i2c
Info:   Overlay for the NXP SC16IS752 dual UART with I2C Interface
        Enables the chip on I2C1 at 0x48 (or the "addr" parameter value). To
        select another address, please refer to table 10 in reference manual.
Load:   dtoverlay=sc16is752-i2c,<param>=<val>
Params: int_pin                 GPIO used for IRQ (default 24)
        addr                    Address (default 0x48)
        xtal                    On-board crystal frequency (default 14745600)


Name:   sc16is752-spi1
Info:   Overlay for the NXP SC16IS752 Dual UART with SPI Interface
        Enables the chip on SPI1.
        N.B.: spi1 is only accessible on devices with a 40pin header, eg:
              A+, B+, Zero and PI2 B; as well as the Compute Module.

Load:   dtoverlay=sc16is752-spi1,<param>=<val>
Params: int_pin                 GPIO used for IRQ (default 24)


Name:   sdhost
Info:   Selects the bcm2835-sdhost SD/MMC driver, optionally with overclock.
        N.B. This overlay is designed for situations where the mmc driver is
        the default, so it disables the other (mmc) interface - this will kill
        WiFi on a Pi3. If this isn't what you want, either use the sdtweak
        overlay or the new sd_* dtparams of the base DTBs.
Load:   dtoverlay=sdhost,<param>=<val>
Params: overclock_50            Clock (in MHz) to use when the MMC framework
                                requests 50MHz

        force_pio               Disable DMA support (default off)

        pio_limit               Number of blocks above which to use DMA
                                (default 1)

        debug                   Enable debug output (default off)


Name:   sdio
Info:   Selects the bcm2835-sdhost SD/MMC driver, optionally with overclock,
        and enables SDIO via GPIOs 22-27. An example of use in 1-bit mode is
        "dtoverlay=sdio,bus_width=1,gpios_22_25"
Load:   dtoverlay=sdio,<param>=<val>
Params: sdio_overclock          SDIO Clock (in MHz) to use when the MMC
                                framework requests 50MHz

        poll_once               Disable SDIO-device polling every second
                                (default on: polling once at boot-time)

        bus_width               Set the SDIO host bus width (default 4 bits)

        gpios_22_25             Select GPIOs 22-25 for 1-bit mode. Must be used
                                with bus_width=1. This replaces the sdio-1bit
                                overlay, which is now deprecated.

        gpios_34_37             Select GPIOs 34-37 for 1-bit mode. Must be used
                                with bus_width=1.

        gpios_34_39             Select GPIOs 34-39 for 4-bit mode. Must be used
                                with bus_width=4 (the default).


Name:   sdio-1bit
Info:   This overlay is now deprecated. Use
        "dtoverlay=sdio,bus_width=1,gpios_22_25" instead.
Load:   <Deprecated>


Name:   sdtweak
Info:   Tunes the bcm2835-sdhost SD/MMC driver
        N.B. This functionality is now available via the sd_* dtparams in the
        base DTB.
Load:   dtoverlay=sdtweak,<param>=<val>
Params: overclock_50            Clock (in MHz) to use when the MMC framework
                                requests 50MHz

        force_pio               Disable DMA support (default off)

        pio_limit               Number of blocks above which to use DMA
                                (default 1)

        debug                   Enable debug output (default off)

        poll_once               Looks for a card once after booting. Useful
                                for network booting scenarios to avoid the
                                overhead of continuous polling. N.B. Using
                                this option restricts the system to using a
                                single card per boot (or none at all).
                                (default off)

        enable                  Set to off to completely disable the interface
                                (default on)


Name:   sh1106-spi
Info:   Overlay for SH1106 OLED via SPI using fbtft staging driver.
Load:   dtoverlay=sh1106-spi,<param>=<val>
Params: speed                   SPI bus speed (default 4000000)
        rotate                  Display rotation (0, 90, 180 or 270; default 0)
        fps                     Delay between frame updates (default 25)
        debug                   Debug output level (0-7; default 0)
        dc_pin                  GPIO pin for D/C (default 24)
        reset_pin               GPIO pin for RESET (default 25)
        height                  Display height (32 or 64; default 64)


Name:   smi
Info:   Enables the Secondary Memory Interface peripheral. Uses GPIOs 2-25!
Load:   dtoverlay=smi
Params: <None>


Name:   smi-dev
Info:   Enables the userspace interface for the SMI driver
Load:   dtoverlay=smi-dev
Params: <None>


Name:   smi-nand
Info:   Enables access to NAND flash via the SMI interface
Load:   dtoverlay=smi-nand
Params: <None>


Name:   spi-gpio35-39
Info:   Move SPI function block to GPIO 35 to 39
Load:   dtoverlay=spi-gpio35-39
Params: <None>


Name:   spi-gpio40-45
Info:   Move SPI function block to GPIOs 40 to 45
Load:   dtoverlay=spi-gpio40-45
Params: <None>


Name:   spi-rtc
Info:   Adds support for a number of SPI Real Time Clock devices
Load:   dtoverlay=spi-rtc,<param>=<val>
Params: pcf2123                 Select the PCF2123 device


Name:   spi0-cs
Info:   Allows the (software) CS pins for SPI0 to be changed
Load:   dtoverlay=spi0-cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 8)
        cs1_pin                 GPIO pin for CS1 (default 7)


Name:   spi0-hw-cs
Info:   Re-enables hardware CS/CE (chip selects) for SPI0
Load:   dtoverlay=spi0-hw-cs
Params: <None>


Name:   spi1-1cs
Info:   Enables spi1 with a single chip select (CS) line and associated spidev
        dev node. The gpio pin number for the CS line and spidev device node
        creation are configurable.
        N.B.: spi1 is only accessible on devices with a 40pin header, eg:
              A+, B+, Zero and PI2 B; as well as the Compute Module.
Load:   dtoverlay=spi1-1cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
        cs0_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev1.0 (default
                                is 'okay' or enabled).


Name:   spi1-2cs
Info:   Enables spi1 with two chip select (CS) lines and associated spidev
        dev nodes. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
        N.B.: spi1 is only accessible on devices with a 40pin header, eg:
              A+, B+, Zero and PI2 B; as well as the Compute Module.
Load:   dtoverlay=spi1-2cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
        cs1_pin                 GPIO pin for CS1 (default 17 - BCM SPI1_CE1).
        cs0_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev1.0 (default
                                is 'okay' or enabled).
        cs1_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev1.1 (default
                                is 'okay' or enabled).


Name:   spi1-3cs
Info:   Enables spi1 with three chip select (CS) lines and associated spidev
        dev nodes. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
        N.B.: spi1 is only accessible on devices with a 40pin header, eg:
              A+, B+, Zero and PI2 B; as well as the Compute Module.
Load:   dtoverlay=spi1-3cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 18 - BCM SPI1_CE0).
        cs1_pin                 GPIO pin for CS1 (default 17 - BCM SPI1_CE1).
        cs2_pin                 GPIO pin for CS2 (default 16 - BCM SPI1_CE2).
        cs0_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev1.0 (default
                                is 'okay' or enabled).
        cs1_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev1.1 (default
                                is 'okay' or enabled).
        cs2_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev1.2 (default
                                is 'okay' or enabled).


Name:   spi2-1cs
Info:   Enables spi2 with a single chip select (CS) line and associated spidev
        dev node. The gpio pin number for the CS line and spidev device node
        creation are configurable.
        N.B.: spi2 is only accessible with the Compute Module.
Load:   dtoverlay=spi2-1cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
        cs0_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev2.0 (default
                                is 'okay' or enabled).


Name:   spi2-2cs
Info:   Enables spi2 with two chip select (CS) lines and associated spidev
        dev nodes. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
        N.B.: spi2 is only accessible with the Compute Module.
Load:   dtoverlay=spi2-2cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
        cs1_pin                 GPIO pin for CS1 (default 44 - BCM SPI2_CE1).
        cs0_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev2.0 (default
                                is 'okay' or enabled).
        cs1_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev2.1 (default
                                is 'okay' or enabled).


Name:   spi2-3cs
Info:   Enables spi2 with three chip select (CS) lines and associated spidev
        dev nodes. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
        N.B.: spi2 is only accessible with the Compute Module.
Load:   dtoverlay=spi2-3cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 43 - BCM SPI2_CE0).
        cs1_pin                 GPIO pin for CS1 (default 44 - BCM SPI2_CE1).
        cs2_pin                 GPIO pin for CS2 (default 45 - BCM SPI2_CE2).
        cs0_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev2.0 (default
                                is 'okay' or enabled).
        cs1_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev2.1 (default
                                is 'okay' or enabled).
        cs2_spidev              Set to 'disabled' to stop the creation of a
                                userspace device node /dev/spidev2.2 (default
                                is 'okay' or enabled).


Name:   spi3-1cs
Info:   Enables spi3 with a single chip select (CS) line and associated spidev
        dev node. The gpio pin number for the CS line and spidev device node
        creation are configurable.
Load:   dtoverlay=spi3-1cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 0 - BCM SPI3_CE0).
        cs0_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev3.0 (default
                                is 'on' or enabled).


Name:   spi3-2cs
Info:   Enables spi3 with two chip select (CS) lines and associated spidev
        dev nodes. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
Load:   dtoverlay=spi3-2cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 0 - BCM SPI3_CE0).
        cs1_pin                 GPIO pin for CS1 (default 24 - BCM SPI3_CE1).
        cs0_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev3.0 (default
                                is 'on' or enabled).
        cs1_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev3.1 (default
                                is 'on' or enabled).


Name:   spi4-1cs
Info:   Enables spi4 with a single chip select (CS) line and associated spidev
        dev node. The gpio pin number for the CS line and spidev device node
        creation are configurable.
Load:   dtoverlay=spi4-1cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 4 - BCM SPI4_CE0).
        cs0_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev4.0 (default
                                is 'on' or enabled).


Name:   spi4-2cs
Info:   Enables spi4 with two chip select (CS) lines and associated spidev
        dev nodes. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
Load:   dtoverlay=spi4-2cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 4 - BCM SPI4_CE0).
        cs1_pin                 GPIO pin for CS1 (default 25 - BCM SPI4_CE1).
        cs0_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev4.0 (default
                                is 'on' or enabled).
        cs1_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev4.1 (default
                                is 'on' or enabled).


Name:   spi5-1cs
Info:   Enables spi5 with a single chip select (CS) line and associated spidev
        dev node. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
Load:   dtoverlay=spi5-1cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 12 - BCM SPI5_CE0).
        cs0_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev5.0 (default
                                is 'on' or enabled).


Name:   spi5-2cs
Info:   Enables spi5 with two chip select (CS) lines and associated spidev
        dev nodes. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
Load:   dtoverlay=spi5-2cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 12 - BCM SPI5_CE0).
        cs1_pin                 GPIO pin for CS1 (default 26 - BCM SPI5_CE1).
        cs0_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev5.0 (default
                                is 'on' or enabled).
        cs1_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev5.1 (default
                                is 'on' or enabled).


Name:   spi6-1cs
Info:   Enables spi6 with a single chip select (CS) line and associated spidev
        dev node. The gpio pin number for the CS line and spidev device node
        creation are configurable.
Load:   dtoverlay=spi6-1cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 18 - BCM SPI6_CE0).
        cs0_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev6.0 (default
                                is 'on' or enabled).


Name:   spi6-2cs
Info:   Enables spi6 with two chip select (CS) lines and associated spidev
        dev nodes. The gpio pin numbers for the CS lines and spidev device node
        creation are configurable.
Load:   dtoverlay=spi6-2cs,<param>=<val>
Params: cs0_pin                 GPIO pin for CS0 (default 18 - BCM SPI6_CE0).
        cs1_pin                 GPIO pin for CS1 (default 27 - BCM SPI6_CE1).
        cs0_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev6.0 (default
                                is 'on' or enabled).
        cs1_spidev              Set to 'off' to prevent the creation of a
                                userspace device node /dev/spidev6.1 (default
                                is 'on' or enabled).


Name:   ssd1306
Info:   Overlay for activation of SSD1306 over I2C OLED display framebuffer.
Load:   dtoverlay=ssd1306,<param>=<val>
Params: address                 Location in display memory of first character.
                                (default=0)
        width                   Width of display. (default=128)
        height                  Height of display. (default=64)
        offset                  virtual channel a. (default=0)
        normal                  Has no effect on displays tested. (default=not
                                set)
        sequential              Set this if every other scan line is missing.
                                (default=not set)
        remapped                Set this if display is garbled. (default=not
                                set)
        inverted                Set this if display is inverted and mirrored.
                                (default=not set)

        Examples:
        Typical usage for 128x64 display: dtoverlay=ssd1306,inverted

        Typical usage for 128x32 display: dtoverlay=ssd1306,inverted,sequential

        i2c_baudrate=400000 will speed up the display.

        i2c_baudrate=1000000 seems to work even though it's not officially
        supported by the hardware, and is faster still.

        For more information refer to the device datasheet at:
        https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf


Name:   ssd1306-spi
Info:   Overlay for SSD1306 OLED via SPI using fbtft staging driver.
Load:   dtoverlay=ssd1306-spi,<param>=<val>
Params: speed                   SPI bus speed (default 10000000)
        rotate                  Display rotation (0, 90, 180 or 270; default 0)
        fps                     Delay between frame updates (default 25)
        debug                   Debug output level (0-7; default 0)
        dc_pin                  GPIO pin for D/C (default 24)
        reset_pin               GPIO pin for RESET (default 25)
        height                  Display height (32 or 64; default 64)


Name:   ssd1351-spi
Info:   Overlay for SSD1351 OLED via SPI using fbtft staging driver.
Load:   dtoverlay=ssd1351-spi,<param>=<val>
Params: speed                   SPI bus speed (default 4500000)
        rotate                  Display rotation (0, 90, 180 or 270; default 0)
        fps                     Delay between frame updates (default 25)
        debug                   Debug output level (0-7; default 0)
        dc_pin                  GPIO pin for D/C (default 24)
        reset_pin               GPIO pin for RESET (default 25)


Name:   superaudioboard
Info:   Configures the SuperAudioBoard sound card
Load:   dtoverlay=superaudioboard,<param>=<val>
Params: gpiopin                 GPIO pin for codec reset


Name:   sx150x
Info:   Configures the Semtech SX150X I2C GPIO expanders.
Load:   dtoverlay=sx150x,<param>=<val>
Params: sx150<x>-<n>-<m>        Enables SX150X device on I2C#<n> with slave
                                address <m>. <x> may be 1-9. <n> may be 0 or 1.
                                Permissible values of <m> (which is denoted in
                                hex) depend on the device variant. For SX1501,
                                SX1502, SX1504 and SX1505, <m> may be 20 or 21.
                                For SX1503 and SX1506, <m> may be 20. For
                                SX1507 and SX1509, <m> may be 3E, 3F, 70 or 71.
                                For SX1508, <m> may be 20, 21, 22 or 23.

        sx150<x>-<n>-<m>-int-gpio
                                Integer, enables interrupts on SX150X device on
                                I2C#<n> with slave address <m>, specifies
                                the GPIO pin to which NINT output of SX150X is
                                connected.


Name:   tc358743
Info:   Toshiba TC358743 HDMI to CSI-2 bridge chip.
        Uses Unicam 1, which is the standard camera connector on most Pi
        variants.
Load:   dtoverlay=tc358743,<param>=<val>
Params: 4lane                   Use 4 lanes (only applicable to Compute Modules
                                CAM1 connector).

        link-frequency          Set the link frequency. Only values of 297000000
                                (574Mbit/s) and 486000000 (972Mbit/s - default)
                                are supported by the driver.

        i2c_pins_0_1            Use pins 0&1 for the I2C instead of 44&45.
                                Useful on Compute Modules.

        i2c_pins_28_29          Use pins 28&29 for the I2C instead of 44&45.
                                This is required for Pi B+, 2, 0, and 0W.


Name:   tc358743-audio
Info:   Used in combination with the tc358743-fast overlay to route the audio
        from the TC358743 over I2S to the Pi.
        Wiring is LRCK/WFS to GPIO 19, BCK/SCK to GPIO 18, and DATA/SD to GPIO
        20.
Load:   dtoverlay=tc358743-audio,<param>=<val>
Params: card-name               Override the default, "tc358743", card name.


Name:   tinylcd35
Info:   3.5" Color TFT Display by www.tinylcd.com
        Options: Touch, RTC, keypad
Load:   dtoverlay=tinylcd35,<param>=<val>
Params: speed                   Display SPI bus speed

        rotate                  Display rotation {0,90,180,270}

        fps                     Delay between frame updates

        debug                   Debug output level {0-7}

        touch                   Enable touch panel

        touchgpio               Touch controller IRQ GPIO

        xohms                   Touchpanel: Resistance of X-plate in ohms

        rtc-pcf                 PCF8563 Real Time Clock

        rtc-ds                  DS1307 Real Time Clock

        keypad                  Enable keypad

        Examples:
            Display with touchpanel, PCF8563 RTC and keypad:
                dtoverlay=tinylcd35,touch,rtc-pcf,keypad
            Old touch display:
                dtoverlay=tinylcd35,touch,touchgpio=3


Name:   tpm-slb9670
Info:   Enables support for Infineon SLB9670 Trusted Platform Module add-on
        boards, which can be used as a secure key storage and hwrng,
        available as "Iridium SLB9670" by Infineon and "LetsTrust TPM" by pi3g.
Load:   dtoverlay=tpm-slb9670
Params: <None>


Name:   uart0
Info:   Change the pin usage of uart0
Load:   dtoverlay=uart0,<param>=<val>
Params: txd0_pin                GPIO pin for TXD0 (14, 32 or 36 - default 14)

        rxd0_pin                GPIO pin for RXD0 (15, 33 or 37 - default 15)

        pin_func                Alternative pin function - 4(Alt0) for 14&15,
                                7(Alt3) for 32&33, 6(Alt2) for 36&37


Name:   uart1
Info:   Change the pin usage of uart1
Load:   dtoverlay=uart1,<param>=<val>
Params: txd1_pin                GPIO pin for TXD1 (14, 32 or 40 - default 14)

        rxd1_pin                GPIO pin for RXD1 (15, 33 or 41 - default 15)


Name:   uart2
Info:   Enable uart 2 on GPIOs 0-3
Load:   dtoverlay=uart2,<param>
Params: ctsrts                  Enable CTS/RTS on GPIOs 2-3 (default off)


Name:   uart3
Info:   Enable uart 3 on GPIOs 4-7
Load:   dtoverlay=uart3,<param>
Params: ctsrts                  Enable CTS/RTS on GPIOs 6-7 (default off)


Name:   uart4
Info:   Enable uart 4 on GPIOs 8-11
Load:   dtoverlay=uart4,<param>
Params: ctsrts                  Enable CTS/RTS on GPIOs 10-11 (default off)


Name:   uart5
Info:   Enable uart 5 on GPIOs 12-15
Load:   dtoverlay=uart5,<param>
Params: ctsrts                  Enable CTS/RTS on GPIOs 14-15 (default off)


Name:   udrc
Info:   Configures the NW Digital Radio UDRC Hat
Load:   dtoverlay=udrc,<param>=<val>
Params: alsaname                Name of the ALSA audio device (default "udrc")


Name:   upstream
Info:   Allow usage of downstream .dtb with upstream kernel. Comprises the
        vc4-kms-v3d and dwc2 overlays.
Load:   dtoverlay=upstream
Params: <None>


Name:   upstream-aux-interrupt
Info:   This overlay has been deprecated and removed because it is no longer
        necessary.
Load:   <Deprecated>


Name:   vc4-fkms-v3d
Info:   Enable Eric Anholt's DRM VC4 V3D driver on top of the dispmanx
        display stack.
Load:   dtoverlay=vc4-fkms-v3d,<param>
Params: cma-256                 CMA is 256MB (needs 1GB)
        cma-192                 CMA is 192MB (needs 1GB)
        cma-128                 CMA is 128MB
        cma-96                  CMA is 96MB
        cma-64                  CMA is 64MB


Name:   vc4-kms-kippah-7inch
Info:   Enable the Adafruit DPI Kippah with the 7" Ontat panel attached.
        Requires vc4-kms-v3d to be loaded.
Load:   dtoverlay=vc4-kms-kippah-7inch
Params: <None>


Name:   vc4-kms-v3d
Info:   Enable Eric Anholt's DRM VC4 HDMI/HVS/V3D driver. Running startx or
        booting to GUI while this overlay is in use will cause interesting
        lockups.
Load:   dtoverlay=vc4-kms-v3d,<param>
Params: cma-256                 CMA is 256MB (needs 1GB)
        cma-192                 CMA is 192MB (needs 1GB)
        cma-128                 CMA is 128MB
        cma-96                  CMA is 96MB
        cma-64                  CMA is 64MB
        audio                   Enable or disable audio over HDMI (default "on")


Name:   vga666
Info:   Overlay for the Fen Logic VGA666 board
        This uses GPIOs 2-21 (so no I2C), and activates the output 2-3 seconds
        after the kernel has started.
Load:   dtoverlay=vga666
Params: <None>


Name:   w1-gpio
Info:   Configures the w1-gpio Onewire interface module.
        Use this overlay if you *don't* need a GPIO to drive an external pullup.
Load:   dtoverlay=w1-gpio,<param>=<val>
Params: gpiopin                 GPIO for I/O (default "4")
        pullup                  Now enabled by default (ignored)


Name:   w1-gpio-pullup
Info:   Configures the w1-gpio Onewire interface module.
        Use this overlay if you *do* need a GPIO to drive an external pullup.
Load:   dtoverlay=w1-gpio-pullup,<param>=<val>
Params: gpiopin                 GPIO for I/O (default "4")
        extpullup               GPIO for external pullup (default "5")
        pullup                  Now enabled by default (ignored)


Name:   w5500
Info:   Overlay for the Wiznet W5500 Ethernet Controller on SPI0
Load:   dtoverlay=w5500,<param>=<val>
Params: int_pin                 GPIO used for INT (default 25)

        speed                   SPI bus speed (default 30000000)

        cs                      SPI bus Chip Select (default 0)


Name:   wittypi
Info:   Configures the wittypi RTC module.
Load:   dtoverlay=wittypi,<param>=<val>
Params: led_gpio                GPIO for LED (default "17")
        led_trigger             Choose which activity the LED tracks (default
                                "default-on")


Troubleshooting
===============

If you are experiencing problems that you think are DT-related, enable DT
diagnostic output by adding this to /boot/config.txt:

    dtdebug=on

and rebooting. Then run:

    sudo vcdbg log msg

and look for relevant messages.

Further reading
===============

This is only meant to be a quick introduction to the subject of Device Tree on
Raspberry Pi. There is a more complete explanation here:

http://www.raspberrypi.org/documentation/configuration/device-tree.md