18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Device Tree Source for the MPC5121e based ac14xx board 48c2ecf20Sopenharmony_ci * 58c2ecf20Sopenharmony_ci * Copyright 2012 Anatolij Gustschin <agust@denx.de> 68c2ecf20Sopenharmony_ci */ 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#include "mpc5121.dtsi" 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_ci/ { 128c2ecf20Sopenharmony_ci model = "ac14xx"; 138c2ecf20Sopenharmony_ci compatible = "ifm,ac14xx", "fsl,mpc5121"; 148c2ecf20Sopenharmony_ci #address-cells = <1>; 158c2ecf20Sopenharmony_ci #size-cells = <1>; 168c2ecf20Sopenharmony_ci 178c2ecf20Sopenharmony_ci aliases { 188c2ecf20Sopenharmony_ci serial0 = &serial0; 198c2ecf20Sopenharmony_ci serial1 = &serial7; 208c2ecf20Sopenharmony_ci spi4 = &spi4; 218c2ecf20Sopenharmony_ci spi5 = &spi5; 228c2ecf20Sopenharmony_ci }; 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ci cpus { 258c2ecf20Sopenharmony_ci PowerPC,5121@0 { 268c2ecf20Sopenharmony_ci timebase-frequency = <40000000>; /* 40 MHz (csb/4) */ 278c2ecf20Sopenharmony_ci bus-frequency = <160000000>; /* 160 MHz csb bus */ 288c2ecf20Sopenharmony_ci clock-frequency = <400000000>; /* 400 MHz ppc core */ 298c2ecf20Sopenharmony_ci }; 308c2ecf20Sopenharmony_ci }; 318c2ecf20Sopenharmony_ci 328c2ecf20Sopenharmony_ci memory { 338c2ecf20Sopenharmony_ci reg = <0x00000000 0x10000000>; /* 256MB at 0 */ 348c2ecf20Sopenharmony_ci }; 358c2ecf20Sopenharmony_ci 368c2ecf20Sopenharmony_ci nfc@40000000 { 378c2ecf20Sopenharmony_ci status = "disabled"; 388c2ecf20Sopenharmony_ci }; 398c2ecf20Sopenharmony_ci 408c2ecf20Sopenharmony_ci localbus@80000020 { 418c2ecf20Sopenharmony_ci ranges = <0x0 0x0 0xfc000000 0x04000000 /* CS0: NOR flash */ 428c2ecf20Sopenharmony_ci 0x1 0x0 0xe0000000 0x00010000 /* CS1: FRAM */ 438c2ecf20Sopenharmony_ci 0x2 0x0 0xe0100000 0x00080000 /* CS2: asi1 */ 448c2ecf20Sopenharmony_ci 0x3 0x0 0xe0300000 0x00020000 /* CS3: comm */ 458c2ecf20Sopenharmony_ci 0x5 0x0 0xe0400000 0x00010000 /* CS5: safety */ 468c2ecf20Sopenharmony_ci 0x6 0x0 0xe0200000 0x00080000>; /* CS6: asi2 */ 478c2ecf20Sopenharmony_ci 488c2ecf20Sopenharmony_ci flash@0,0 { 498c2ecf20Sopenharmony_ci compatible = "cfi-flash"; 508c2ecf20Sopenharmony_ci reg = <0 0x00000000 0x04000000>; 518c2ecf20Sopenharmony_ci #address-cells = <1>; 528c2ecf20Sopenharmony_ci #size-cells = <1>; 538c2ecf20Sopenharmony_ci bank-width = <2>; 548c2ecf20Sopenharmony_ci device-width = <2>; 558c2ecf20Sopenharmony_ci 568c2ecf20Sopenharmony_ci partition@0 { 578c2ecf20Sopenharmony_ci label = "dtb-kernel-production"; 588c2ecf20Sopenharmony_ci reg = <0x00000000 0x00400000>; 598c2ecf20Sopenharmony_ci }; 608c2ecf20Sopenharmony_ci partition@1 { 618c2ecf20Sopenharmony_ci label = "filesystem-production"; 628c2ecf20Sopenharmony_ci reg = <0x00400000 0x03400000>; 638c2ecf20Sopenharmony_ci }; 648c2ecf20Sopenharmony_ci 658c2ecf20Sopenharmony_ci partition@2 { 668c2ecf20Sopenharmony_ci label = "recovery"; 678c2ecf20Sopenharmony_ci reg = <0x03800000 0x00700000>; 688c2ecf20Sopenharmony_ci }; 698c2ecf20Sopenharmony_ci 708c2ecf20Sopenharmony_ci partition@3 { 718c2ecf20Sopenharmony_ci label = "uboot-code"; 728c2ecf20Sopenharmony_ci reg = <0x03f00000 0x00040000>; 738c2ecf20Sopenharmony_ci }; 748c2ecf20Sopenharmony_ci partition@4 { 758c2ecf20Sopenharmony_ci label = "uboot-env1"; 768c2ecf20Sopenharmony_ci reg = <0x03f40000 0x00020000>; 778c2ecf20Sopenharmony_ci }; 788c2ecf20Sopenharmony_ci partition@5 { 798c2ecf20Sopenharmony_ci label = "uboot-env2"; 808c2ecf20Sopenharmony_ci reg = <0x03f60000 0x00020000>; 818c2ecf20Sopenharmony_ci }; 828c2ecf20Sopenharmony_ci }; 838c2ecf20Sopenharmony_ci 848c2ecf20Sopenharmony_ci fram@1,0 { 858c2ecf20Sopenharmony_ci compatible = "ifm,ac14xx-fram", "linux,uio-pdrv-genirq"; 868c2ecf20Sopenharmony_ci reg = <1 0x00000000 0x00010000>; 878c2ecf20Sopenharmony_ci }; 888c2ecf20Sopenharmony_ci 898c2ecf20Sopenharmony_ci asi@2,0 { 908c2ecf20Sopenharmony_ci /* masters mapping: CS, CS offset, size */ 918c2ecf20Sopenharmony_ci reg = <2 0x00000000 0x00080000 928c2ecf20Sopenharmony_ci 6 0x00000000 0x00080000>; 938c2ecf20Sopenharmony_ci #address-cells = <1>; 948c2ecf20Sopenharmony_ci #size-cells = <1>; 958c2ecf20Sopenharmony_ci compatible = "ifm,ac14xx-asi-fpga"; 968c2ecf20Sopenharmony_ci gpios = < 978c2ecf20Sopenharmony_ci &gpio_pic 26 0 /* prog */ 988c2ecf20Sopenharmony_ci &gpio_pic 27 0 /* done */ 998c2ecf20Sopenharmony_ci &gpio_pic 10 0 /* reset */ 1008c2ecf20Sopenharmony_ci >; 1018c2ecf20Sopenharmony_ci 1028c2ecf20Sopenharmony_ci master@1 { 1038c2ecf20Sopenharmony_ci interrupts = <20 0x2>; 1048c2ecf20Sopenharmony_ci interrupt-parent = <&gpio_pic>; 1058c2ecf20Sopenharmony_ci chipselect = <2 0x00009000 0x00009100>; 1068c2ecf20Sopenharmony_ci label = "AS-i master 1"; 1078c2ecf20Sopenharmony_ci }; 1088c2ecf20Sopenharmony_ci 1098c2ecf20Sopenharmony_ci master@2 { 1108c2ecf20Sopenharmony_ci interrupts = <21 0x2>; 1118c2ecf20Sopenharmony_ci interrupt-parent = <&gpio_pic>; 1128c2ecf20Sopenharmony_ci chipselect = <6 0x00009000 0x00009100>; 1138c2ecf20Sopenharmony_ci label = "AS-i master 2"; 1148c2ecf20Sopenharmony_ci }; 1158c2ecf20Sopenharmony_ci }; 1168c2ecf20Sopenharmony_ci 1178c2ecf20Sopenharmony_ci netx@3,0 { 1188c2ecf20Sopenharmony_ci compatible = "ifm,netx"; 1198c2ecf20Sopenharmony_ci reg = <0x3 0x00000000 0x00020000>; 1208c2ecf20Sopenharmony_ci chipselect = <3 0x00101140 0x00203100>; 1218c2ecf20Sopenharmony_ci interrupts = <17 0x8>; 1228c2ecf20Sopenharmony_ci gpios = <&gpio_pic 15 0>; 1238c2ecf20Sopenharmony_ci }; 1248c2ecf20Sopenharmony_ci 1258c2ecf20Sopenharmony_ci safety@5,0 { 1268c2ecf20Sopenharmony_ci compatible = "ifm,safety"; 1278c2ecf20Sopenharmony_ci reg = <0x5 0x00000000 0x00010000>; 1288c2ecf20Sopenharmony_ci chipselect = <5 0x00009000 0x00009100>; 1298c2ecf20Sopenharmony_ci interrupts = <22 0x2>; 1308c2ecf20Sopenharmony_ci interrupt-parent = <&gpio_pic>; 1318c2ecf20Sopenharmony_ci gpios = < 1328c2ecf20Sopenharmony_ci &gpio_pic 12 0 /* prog */ 1338c2ecf20Sopenharmony_ci &gpio_pic 11 0 /* done */ 1348c2ecf20Sopenharmony_ci >; 1358c2ecf20Sopenharmony_ci }; 1368c2ecf20Sopenharmony_ci }; 1378c2ecf20Sopenharmony_ci 1388c2ecf20Sopenharmony_ci clocks { 1398c2ecf20Sopenharmony_ci osc { 1408c2ecf20Sopenharmony_ci clock-frequency = <25000000>; 1418c2ecf20Sopenharmony_ci }; 1428c2ecf20Sopenharmony_ci }; 1438c2ecf20Sopenharmony_ci 1448c2ecf20Sopenharmony_ci soc@80000000 { 1458c2ecf20Sopenharmony_ci bus-frequency = <80000000>; /* 80 MHz ips bus */ 1468c2ecf20Sopenharmony_ci 1478c2ecf20Sopenharmony_ci clock@f00 { 1488c2ecf20Sopenharmony_ci compatible = "fsl,mpc5121rev2-clock", "fsl,mpc5121-clock"; 1498c2ecf20Sopenharmony_ci }; 1508c2ecf20Sopenharmony_ci 1518c2ecf20Sopenharmony_ci /* 1528c2ecf20Sopenharmony_ci * GPIO PIC: 1538c2ecf20Sopenharmony_ci * interrupts cell = <pin nr, sense> 1548c2ecf20Sopenharmony_ci * sense == 8: Level, low assertion 1558c2ecf20Sopenharmony_ci * sense == 2: Edge, high-to-low change 1568c2ecf20Sopenharmony_ci */ 1578c2ecf20Sopenharmony_ci gpio_pic: gpio@1100 { 1588c2ecf20Sopenharmony_ci gpio-controller; 1598c2ecf20Sopenharmony_ci #gpio-cells = <2>; 1608c2ecf20Sopenharmony_ci interrupt-controller; 1618c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 1628c2ecf20Sopenharmony_ci }; 1638c2ecf20Sopenharmony_ci 1648c2ecf20Sopenharmony_ci sdhc@1500 { 1658c2ecf20Sopenharmony_ci cd-gpios = <&gpio_pic 23 0>; /* card detect */ 1668c2ecf20Sopenharmony_ci wp-gpios = <&gpio_pic 24 0>; /* write protect */ 1678c2ecf20Sopenharmony_ci wp-inverted; /* WP active high */ 1688c2ecf20Sopenharmony_ci }; 1698c2ecf20Sopenharmony_ci 1708c2ecf20Sopenharmony_ci i2c@1700 { 1718c2ecf20Sopenharmony_ci /* use Fast-mode */ 1728c2ecf20Sopenharmony_ci clock-frequency = <400000>; 1738c2ecf20Sopenharmony_ci 1748c2ecf20Sopenharmony_ci at24@30 { 1758c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 1768c2ecf20Sopenharmony_ci reg = <0x30>; 1778c2ecf20Sopenharmony_ci }; 1788c2ecf20Sopenharmony_ci 1798c2ecf20Sopenharmony_ci at24@31 { 1808c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 1818c2ecf20Sopenharmony_ci reg = <0x31>; 1828c2ecf20Sopenharmony_ci }; 1838c2ecf20Sopenharmony_ci 1848c2ecf20Sopenharmony_ci temp@48 { 1858c2ecf20Sopenharmony_ci compatible = "ad,ad7414"; 1868c2ecf20Sopenharmony_ci reg = <0x48>; 1878c2ecf20Sopenharmony_ci }; 1888c2ecf20Sopenharmony_ci 1898c2ecf20Sopenharmony_ci at24@50 { 1908c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 1918c2ecf20Sopenharmony_ci reg = <0x50>; 1928c2ecf20Sopenharmony_ci }; 1938c2ecf20Sopenharmony_ci 1948c2ecf20Sopenharmony_ci at24@51 { 1958c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 1968c2ecf20Sopenharmony_ci reg = <0x51>; 1978c2ecf20Sopenharmony_ci }; 1988c2ecf20Sopenharmony_ci 1998c2ecf20Sopenharmony_ci at24@52 { 2008c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 2018c2ecf20Sopenharmony_ci reg = <0x52>; 2028c2ecf20Sopenharmony_ci }; 2038c2ecf20Sopenharmony_ci 2048c2ecf20Sopenharmony_ci at24@53 { 2058c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 2068c2ecf20Sopenharmony_ci reg = <0x53>; 2078c2ecf20Sopenharmony_ci }; 2088c2ecf20Sopenharmony_ci 2098c2ecf20Sopenharmony_ci at24@54 { 2108c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 2118c2ecf20Sopenharmony_ci reg = <0x54>; 2128c2ecf20Sopenharmony_ci }; 2138c2ecf20Sopenharmony_ci 2148c2ecf20Sopenharmony_ci at24@55 { 2158c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 2168c2ecf20Sopenharmony_ci reg = <0x55>; 2178c2ecf20Sopenharmony_ci }; 2188c2ecf20Sopenharmony_ci 2198c2ecf20Sopenharmony_ci at24@56 { 2208c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 2218c2ecf20Sopenharmony_ci reg = <0x56>; 2228c2ecf20Sopenharmony_ci }; 2238c2ecf20Sopenharmony_ci 2248c2ecf20Sopenharmony_ci at24@57 { 2258c2ecf20Sopenharmony_ci compatible = "atmel,24c01"; 2268c2ecf20Sopenharmony_ci reg = <0x57>; 2278c2ecf20Sopenharmony_ci }; 2288c2ecf20Sopenharmony_ci 2298c2ecf20Sopenharmony_ci rtc@68 { 2308c2ecf20Sopenharmony_ci compatible = "st,m41t00"; 2318c2ecf20Sopenharmony_ci reg = <0x68>; 2328c2ecf20Sopenharmony_ci }; 2338c2ecf20Sopenharmony_ci }; 2348c2ecf20Sopenharmony_ci 2358c2ecf20Sopenharmony_ci axe_pic: axe-base@2000 { 2368c2ecf20Sopenharmony_ci compatible = "fsl,mpc5121-axe-base"; 2378c2ecf20Sopenharmony_ci reg = <0x2000 0x100>; 2388c2ecf20Sopenharmony_ci interrupts = <42 0x8>; 2398c2ecf20Sopenharmony_ci interrupt-controller; 2408c2ecf20Sopenharmony_ci #interrupt-cells = <2>; 2418c2ecf20Sopenharmony_ci }; 2428c2ecf20Sopenharmony_ci 2438c2ecf20Sopenharmony_ci axe-app { 2448c2ecf20Sopenharmony_ci compatible = "fsl,mpc5121-axe-app"; 2458c2ecf20Sopenharmony_ci interrupt-parent = <&axe_pic>; 2468c2ecf20Sopenharmony_ci interrupts = < 2478c2ecf20Sopenharmony_ci /* soft interrupts */ 2488c2ecf20Sopenharmony_ci 0 0x0 1 0x0 2 0x0 3 0x0 2498c2ecf20Sopenharmony_ci 4 0x0 5 0x0 6 0x0 7 0x0 2508c2ecf20Sopenharmony_ci /* fifo interrupts */ 2518c2ecf20Sopenharmony_ci 8 0x0 9 0x0 10 0x0 11 0x0 2528c2ecf20Sopenharmony_ci >; 2538c2ecf20Sopenharmony_ci }; 2548c2ecf20Sopenharmony_ci 2558c2ecf20Sopenharmony_ci display@2100 { 2568c2ecf20Sopenharmony_ci edid = [00 FF FF FF FF FF FF 00 14 94 00 00 00 00 00 00 2578c2ecf20Sopenharmony_ci 0A 12 01 03 80 1C 23 78 CA 88 FF 94 52 54 8E 27 2588c2ecf20Sopenharmony_ci 1E 4C 50 00 00 00 01 01 01 01 01 01 01 01 01 01 2598c2ecf20Sopenharmony_ci 01 01 01 01 01 01 FB 00 B0 14 00 DC 05 00 08 04 2608c2ecf20Sopenharmony_ci 21 00 1C 23 00 00 00 18 00 00 00 FD 00 38 3C 1F 2618c2ecf20Sopenharmony_ci 3C 01 0A 20 20 20 20 20 20 20 00 00 00 FC 00 45 2628c2ecf20Sopenharmony_ci 54 30 31 38 30 30 33 44 4D 55 0A 0A 00 00 00 10 2638c2ecf20Sopenharmony_ci 00 41 30 30 30 30 30 30 30 30 30 30 30 31 00 D5]; 2648c2ecf20Sopenharmony_ci }; 2658c2ecf20Sopenharmony_ci 2668c2ecf20Sopenharmony_ci can@2300 { 2678c2ecf20Sopenharmony_ci status = "disabled"; 2688c2ecf20Sopenharmony_ci }; 2698c2ecf20Sopenharmony_ci 2708c2ecf20Sopenharmony_ci can@2380 { 2718c2ecf20Sopenharmony_ci status = "disabled"; 2728c2ecf20Sopenharmony_ci }; 2738c2ecf20Sopenharmony_ci 2748c2ecf20Sopenharmony_ci viu@2400 { 2758c2ecf20Sopenharmony_ci status = "disabled"; 2768c2ecf20Sopenharmony_ci }; 2778c2ecf20Sopenharmony_ci 2788c2ecf20Sopenharmony_ci mdio@2800 { 2798c2ecf20Sopenharmony_ci phy0: ethernet-phy@1f { 2808c2ecf20Sopenharmony_ci compatible = "smsc,lan8700"; 2818c2ecf20Sopenharmony_ci reg = <0x1f>; 2828c2ecf20Sopenharmony_ci }; 2838c2ecf20Sopenharmony_ci }; 2848c2ecf20Sopenharmony_ci 2858c2ecf20Sopenharmony_ci enet: ethernet@2800 { 2868c2ecf20Sopenharmony_ci phy-handle = <&phy0>; 2878c2ecf20Sopenharmony_ci }; 2888c2ecf20Sopenharmony_ci 2898c2ecf20Sopenharmony_ci usb@3000 { 2908c2ecf20Sopenharmony_ci status = "disabled"; 2918c2ecf20Sopenharmony_ci }; 2928c2ecf20Sopenharmony_ci 2938c2ecf20Sopenharmony_ci usb@4000 { 2948c2ecf20Sopenharmony_ci status = "disabled"; 2958c2ecf20Sopenharmony_ci }; 2968c2ecf20Sopenharmony_ci 2978c2ecf20Sopenharmony_ci /* PSC3 serial port A, aka ttyPSC0 */ 2988c2ecf20Sopenharmony_ci serial0: psc@11300 { 2998c2ecf20Sopenharmony_ci compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc"; 3008c2ecf20Sopenharmony_ci fsl,rx-fifo-size = <512>; 3018c2ecf20Sopenharmony_ci fsl,tx-fifo-size = <512>; 3028c2ecf20Sopenharmony_ci }; 3038c2ecf20Sopenharmony_ci 3048c2ecf20Sopenharmony_ci /* PSC4 in SPI mode */ 3058c2ecf20Sopenharmony_ci spi4: psc@11400 { 3068c2ecf20Sopenharmony_ci compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc"; 3078c2ecf20Sopenharmony_ci fsl,rx-fifo-size = <768>; 3088c2ecf20Sopenharmony_ci fsl,tx-fifo-size = <768>; 3098c2ecf20Sopenharmony_ci #address-cells = <1>; 3108c2ecf20Sopenharmony_ci #size-cells = <0>; 3118c2ecf20Sopenharmony_ci num-cs = <1>; 3128c2ecf20Sopenharmony_ci cs-gpios = <&gpio_pic 25 0>; 3138c2ecf20Sopenharmony_ci 3148c2ecf20Sopenharmony_ci flash: m25p128@0 { 3158c2ecf20Sopenharmony_ci compatible = "st,m25p128"; 3168c2ecf20Sopenharmony_ci spi-max-frequency = <20000000>; 3178c2ecf20Sopenharmony_ci reg = <0>; 3188c2ecf20Sopenharmony_ci #address-cells = <1>; 3198c2ecf20Sopenharmony_ci #size-cells = <1>; 3208c2ecf20Sopenharmony_ci 3218c2ecf20Sopenharmony_ci partition@0 { 3228c2ecf20Sopenharmony_ci label = "spi-flash0"; 3238c2ecf20Sopenharmony_ci reg = <0x00000000 0x01000000>; 3248c2ecf20Sopenharmony_ci }; 3258c2ecf20Sopenharmony_ci }; 3268c2ecf20Sopenharmony_ci }; 3278c2ecf20Sopenharmony_ci 3288c2ecf20Sopenharmony_ci /* PSC5 in SPI mode */ 3298c2ecf20Sopenharmony_ci spi5: psc@11500 { 3308c2ecf20Sopenharmony_ci compatible = "fsl,mpc5121-psc-spi", "fsl,mpc5121-psc"; 3318c2ecf20Sopenharmony_ci fsl,mode = "spi-master"; 3328c2ecf20Sopenharmony_ci fsl,rx-fifo-size = <128>; 3338c2ecf20Sopenharmony_ci fsl,tx-fifo-size = <128>; 3348c2ecf20Sopenharmony_ci #address-cells = <1>; 3358c2ecf20Sopenharmony_ci #size-cells = <0>; 3368c2ecf20Sopenharmony_ci 3378c2ecf20Sopenharmony_ci lcd@0 { 3388c2ecf20Sopenharmony_ci compatible = "ilitek,ili922x"; 3398c2ecf20Sopenharmony_ci reg = <0>; 3408c2ecf20Sopenharmony_ci spi-max-frequency = <100000>; 3418c2ecf20Sopenharmony_ci spi-cpol; 3428c2ecf20Sopenharmony_ci spi-cpha; 3438c2ecf20Sopenharmony_ci }; 3448c2ecf20Sopenharmony_ci }; 3458c2ecf20Sopenharmony_ci 3468c2ecf20Sopenharmony_ci /* PSC7 serial port C, aka ttyPSC2 */ 3478c2ecf20Sopenharmony_ci serial7: psc@11700 { 3488c2ecf20Sopenharmony_ci compatible = "fsl,mpc5121-psc-uart", "fsl,mpc5121-psc"; 3498c2ecf20Sopenharmony_ci fsl,rx-fifo-size = <512>; 3508c2ecf20Sopenharmony_ci fsl,tx-fifo-size = <512>; 3518c2ecf20Sopenharmony_ci }; 3528c2ecf20Sopenharmony_ci 3538c2ecf20Sopenharmony_ci matrix_keypad@0 { 3548c2ecf20Sopenharmony_ci compatible = "gpio-matrix-keypad"; 3558c2ecf20Sopenharmony_ci debounce-delay-ms = <5>; 3568c2ecf20Sopenharmony_ci col-scan-delay-us = <1>; 3578c2ecf20Sopenharmony_ci gpio-activelow; 3588c2ecf20Sopenharmony_ci col-gpios-binary; 3598c2ecf20Sopenharmony_ci col-switch-delay-ms = <200>; 3608c2ecf20Sopenharmony_ci 3618c2ecf20Sopenharmony_ci col-gpios = <&gpio_pic 1 0>; /* pin1 */ 3628c2ecf20Sopenharmony_ci 3638c2ecf20Sopenharmony_ci row-gpios = <&gpio_pic 2 0 /* pin2 */ 3648c2ecf20Sopenharmony_ci &gpio_pic 3 0 /* pin3 */ 3658c2ecf20Sopenharmony_ci &gpio_pic 4 0>; /* pin4 */ 3668c2ecf20Sopenharmony_ci 3678c2ecf20Sopenharmony_ci linux,keymap = <0x0000006e /* FN LEFT */ 3688c2ecf20Sopenharmony_ci 0x01000067 /* UP */ 3698c2ecf20Sopenharmony_ci 0x02000066 /* FN RIGHT */ 3708c2ecf20Sopenharmony_ci 0x00010069 /* LEFT */ 3718c2ecf20Sopenharmony_ci 0x0101006a /* DOWN */ 3728c2ecf20Sopenharmony_ci 0x0201006c>; /* RIGHT */ 3738c2ecf20Sopenharmony_ci }; 3748c2ecf20Sopenharmony_ci }; 3758c2ecf20Sopenharmony_ci 3768c2ecf20Sopenharmony_ci leds { 3778c2ecf20Sopenharmony_ci compatible = "gpio-leds"; 3788c2ecf20Sopenharmony_ci 3798c2ecf20Sopenharmony_ci backlight { 3808c2ecf20Sopenharmony_ci label = "backlight"; 3818c2ecf20Sopenharmony_ci gpios = <&gpio_pic 0 0>; 3828c2ecf20Sopenharmony_ci default-state = "keep"; 3838c2ecf20Sopenharmony_ci }; 3848c2ecf20Sopenharmony_ci green { 3858c2ecf20Sopenharmony_ci label = "green"; 3868c2ecf20Sopenharmony_ci gpios = <&gpio_pic 18 0>; 3878c2ecf20Sopenharmony_ci default-state = "keep"; 3888c2ecf20Sopenharmony_ci }; 3898c2ecf20Sopenharmony_ci red { 3908c2ecf20Sopenharmony_ci label = "red"; 3918c2ecf20Sopenharmony_ci gpios = <&gpio_pic 19 0>; 3928c2ecf20Sopenharmony_ci default-state = "keep"; 3938c2ecf20Sopenharmony_ci }; 3948c2ecf20Sopenharmony_ci }; 3958c2ecf20Sopenharmony_ci}; 396