19983822cSFabien Parent// SPDX-License-Identifier: GPL-2.0 29983822cSFabien Parent/* 39983822cSFabien Parent * Copyright (c) 2019 BayLibre, SAS. 49983822cSFabien Parent * Author: Fabien Parent <fparent@baylibre.com> 59983822cSFabien Parent */ 69983822cSFabien Parent 79983822cSFabien Parent#include <dt-bindings/gpio/gpio.h> 89983822cSFabien Parent 99983822cSFabien Parent/ { 109983822cSFabien Parent aliases { 119983822cSFabien Parent serial0 = &uart0; 12b3f5758fSBartosz Golaszewski ethernet0 = ðernet; 139983822cSFabien Parent }; 149983822cSFabien Parent 159983822cSFabien Parent chosen { 169983822cSFabien Parent stdout-path = "serial0:921600n8"; 179983822cSFabien Parent }; 189983822cSFabien Parent 199983822cSFabien Parent firmware { 209983822cSFabien Parent optee: optee@4fd00000 { 219983822cSFabien Parent compatible = "linaro,optee-tz"; 229983822cSFabien Parent method = "smc"; 239983822cSFabien Parent }; 249983822cSFabien Parent }; 259983822cSFabien Parent 269983822cSFabien Parent gpio-keys { 279983822cSFabien Parent compatible = "gpio-keys"; 289983822cSFabien Parent input-name = "gpio-keys"; 299983822cSFabien Parent pinctrl-names = "default"; 309983822cSFabien Parent pinctrl-0 = <&gpio_keys_default>; 319983822cSFabien Parent 329983822cSFabien Parent volume-up { 339983822cSFabien Parent gpios = <&pio 42 GPIO_ACTIVE_LOW>; 349983822cSFabien Parent label = "volume_up"; 359983822cSFabien Parent linux,code = <115>; 369983822cSFabien Parent wakeup-source; 379983822cSFabien Parent debounce-interval = <15>; 389983822cSFabien Parent }; 399983822cSFabien Parent 409983822cSFabien Parent volume-down { 419983822cSFabien Parent gpios = <&pio 43 GPIO_ACTIVE_LOW>; 429983822cSFabien Parent label = "volume_down"; 439983822cSFabien Parent linux,code = <114>; 449983822cSFabien Parent wakeup-source; 459983822cSFabien Parent debounce-interval = <15>; 469983822cSFabien Parent }; 479983822cSFabien Parent }; 489983822cSFabien Parent}; 499983822cSFabien Parent 509983822cSFabien Parent&i2c0 { 519983822cSFabien Parent clock-div = <2>; 529983822cSFabien Parent pinctrl-names = "default"; 539983822cSFabien Parent pinctrl-0 = <&i2c0_pins_a>; 549983822cSFabien Parent status = "okay"; 559983822cSFabien Parent 569983822cSFabien Parent tca6416: gpio@20 { 579983822cSFabien Parent compatible = "ti,tca6416"; 589983822cSFabien Parent reg = <0x20>; 59e2a8fa1eSKrzysztof Kozlowski reset-gpios = <&pio 65 GPIO_ACTIVE_HIGH>; 609983822cSFabien Parent pinctrl-names = "default"; 619983822cSFabien Parent pinctrl-0 = <&tca6416_pins>; 629983822cSFabien Parent 639983822cSFabien Parent gpio-controller; 649983822cSFabien Parent #gpio-cells = <2>; 659983822cSFabien Parent 6687e218aeSKrzysztof Kozlowski eint20-mux-sel0-hog { 679983822cSFabien Parent gpio-hog; 689983822cSFabien Parent gpios = <0 0>; 699983822cSFabien Parent input; 709983822cSFabien Parent line-name = "eint20_mux_sel0"; 719983822cSFabien Parent }; 729983822cSFabien Parent 7387e218aeSKrzysztof Kozlowski expcon-mux-sel1-hog { 749983822cSFabien Parent gpio-hog; 759983822cSFabien Parent gpios = <1 0>; 769983822cSFabien Parent input; 779983822cSFabien Parent line-name = "expcon_mux_sel1"; 789983822cSFabien Parent }; 799983822cSFabien Parent 8087e218aeSKrzysztof Kozlowski mrg-di-mux-sel2-hog { 819983822cSFabien Parent gpio-hog; 829983822cSFabien Parent gpios = <2 0>; 839983822cSFabien Parent input; 849983822cSFabien Parent line-name = "mrg_di_mux_sel2"; 859983822cSFabien Parent }; 869983822cSFabien Parent 8787e218aeSKrzysztof Kozlowski sd-sdio-mux-sel3-hog { 889983822cSFabien Parent gpio-hog; 899983822cSFabien Parent gpios = <3 0>; 909983822cSFabien Parent input; 919983822cSFabien Parent line-name = "sd_sdio_mux_sel3"; 929983822cSFabien Parent }; 939983822cSFabien Parent 9487e218aeSKrzysztof Kozlowski sd-sdio-mux-ctrl7-hog { 959983822cSFabien Parent gpio-hog; 969983822cSFabien Parent gpios = <7 0>; 979983822cSFabien Parent output-low; 989983822cSFabien Parent line-name = "sd_sdio_mux_ctrl7"; 999983822cSFabien Parent }; 1009983822cSFabien Parent 10187e218aeSKrzysztof Kozlowski hw-id0-hog { 1029983822cSFabien Parent gpio-hog; 1039983822cSFabien Parent gpios = <8 0>; 1049983822cSFabien Parent input; 1059983822cSFabien Parent line-name = "hw_id0"; 1069983822cSFabien Parent }; 1079983822cSFabien Parent 10887e218aeSKrzysztof Kozlowski hw-id1-hog { 1099983822cSFabien Parent gpio-hog; 1109983822cSFabien Parent gpios = <9 0>; 1119983822cSFabien Parent input; 1129983822cSFabien Parent line-name = "hw_id1"; 1139983822cSFabien Parent }; 1149983822cSFabien Parent 11587e218aeSKrzysztof Kozlowski hw-id2-hog { 1169983822cSFabien Parent gpio-hog; 1179983822cSFabien Parent gpios = <10 0>; 1189983822cSFabien Parent input; 1199983822cSFabien Parent line-name = "hw_id2"; 1209983822cSFabien Parent }; 1219983822cSFabien Parent 12287e218aeSKrzysztof Kozlowski fg-int-n-hog { 1239983822cSFabien Parent gpio-hog; 1249983822cSFabien Parent gpios = <11 0>; 1259983822cSFabien Parent input; 1269983822cSFabien Parent line-name = "fg_int_n"; 1279983822cSFabien Parent }; 1289983822cSFabien Parent 12987e218aeSKrzysztof Kozlowski usba-pwr-en-hog { 1309983822cSFabien Parent gpio-hog; 1319983822cSFabien Parent gpios = <12 0>; 1329983822cSFabien Parent output-high; 1339983822cSFabien Parent line-name = "usba_pwr_en"; 1349983822cSFabien Parent }; 1359983822cSFabien Parent 13687e218aeSKrzysztof Kozlowski wifi-3v3-pg-hog { 1379983822cSFabien Parent gpio-hog; 1389983822cSFabien Parent gpios = <13 0>; 1399983822cSFabien Parent input; 1409983822cSFabien Parent line-name = "wifi_3v3_pg"; 1419983822cSFabien Parent }; 1429983822cSFabien Parent 14387e218aeSKrzysztof Kozlowski cam-rst-hog { 1449983822cSFabien Parent gpio-hog; 1459983822cSFabien Parent gpios = <14 0>; 1469983822cSFabien Parent output-low; 1479983822cSFabien Parent line-name = "cam_rst"; 1489983822cSFabien Parent }; 1499983822cSFabien Parent 15087e218aeSKrzysztof Kozlowski cam-pwdn-hog { 1519983822cSFabien Parent gpio-hog; 1529983822cSFabien Parent gpios = <15 0>; 1539983822cSFabien Parent output-low; 1549983822cSFabien Parent line-name = "cam_pwdn"; 1559983822cSFabien Parent }; 1569983822cSFabien Parent }; 1579983822cSFabien Parent}; 1589983822cSFabien Parent 1599983822cSFabien Parent&i2c2 { 1609983822cSFabien Parent clock-div = <2>; 1619983822cSFabien Parent pinctrl-names = "default"; 1629983822cSFabien Parent pinctrl-0 = <&i2c2_pins_a>; 1639983822cSFabien Parent status = "okay"; 1649983822cSFabien Parent}; 1659983822cSFabien Parent 1669983822cSFabien Parent&uart0 { 1679983822cSFabien Parent status = "okay"; 1689983822cSFabien Parent}; 1699983822cSFabien Parent 1704e4ad686SBartosz Golaszewskiðernet { 1714e4ad686SBartosz Golaszewski pinctrl-names = "default"; 1724e4ad686SBartosz Golaszewski pinctrl-0 = <ðernet_pins_default>; 1734e4ad686SBartosz Golaszewski phy-handle = <ð_phy>; 1744e4ad686SBartosz Golaszewski phy-mode = "rmii"; 1754e4ad686SBartosz Golaszewski mac-address = [00 00 00 00 00 00]; 1764e4ad686SBartosz Golaszewski status = "okay"; 1774e4ad686SBartosz Golaszewski 1784e4ad686SBartosz Golaszewski mdio { 1794e4ad686SBartosz Golaszewski #address-cells = <1>; 1804e4ad686SBartosz Golaszewski #size-cells = <0>; 1814e4ad686SBartosz Golaszewski 1824e4ad686SBartosz Golaszewski eth_phy: ethernet-phy@0 { 1834e4ad686SBartosz Golaszewski reg = <0>; 1844e4ad686SBartosz Golaszewski }; 1854e4ad686SBartosz Golaszewski }; 1864e4ad686SBartosz Golaszewski}; 1874e4ad686SBartosz Golaszewski 1889983822cSFabien Parent&usb0 { 1899983822cSFabien Parent status = "okay"; 1909983822cSFabien Parent dr_mode = "peripheral"; 191*86c5ed12SChunfeng Yun usb-role-switch; 1929983822cSFabien Parent 1939983822cSFabien Parent usb_con: connector { 1949983822cSFabien Parent compatible = "usb-c-connector"; 1959983822cSFabien Parent label = "USB-C"; 1969983822cSFabien Parent }; 1979983822cSFabien Parent}; 1989983822cSFabien Parent 1995fae2710SFabien Parent&usb_phy { 2009983822cSFabien Parent status = "okay"; 2019983822cSFabien Parent}; 2029983822cSFabien Parent 2039983822cSFabien Parent&pio { 2049983822cSFabien Parent gpio_keys_default: gpiodefault { 2059983822cSFabien Parent pins_cmd_dat { 2069983822cSFabien Parent pinmux = <MT8516_PIN_42_KPCOL0__FUNC_GPIO42>, 2079983822cSFabien Parent <MT8516_PIN_43_KPCOL1__FUNC_GPIO43>; 2089983822cSFabien Parent bias-pull-up; 2099983822cSFabien Parent input-enable; 2109983822cSFabien Parent }; 2119983822cSFabien Parent }; 2129983822cSFabien Parent 2139983822cSFabien Parent i2c0_pins_a: i2c0@0 { 2149983822cSFabien Parent pins1 { 2159983822cSFabien Parent pinmux = <MT8516_PIN_58_SDA0__FUNC_SDA0_0>, 2169983822cSFabien Parent <MT8516_PIN_59_SCL0__FUNC_SCL0_0>; 2179983822cSFabien Parent bias-disable; 2189983822cSFabien Parent }; 2199983822cSFabien Parent }; 2209983822cSFabien Parent 2219983822cSFabien Parent i2c2_pins_a: i2c2@0 { 2229983822cSFabien Parent pins1 { 2239983822cSFabien Parent pinmux = <MT8516_PIN_60_SDA2__FUNC_SDA2_0>, 2249983822cSFabien Parent <MT8516_PIN_61_SCL2__FUNC_SCL2_0>; 2259983822cSFabien Parent bias-disable; 2269983822cSFabien Parent }; 2279983822cSFabien Parent }; 2289983822cSFabien Parent 2299983822cSFabien Parent tca6416_pins: pinmux_tca6416_pins { 2309983822cSFabien Parent gpio_mux_rst_n_pin { 2319983822cSFabien Parent pinmux = <MT8516_PIN_65_UTXD1__FUNC_GPIO65>; 2329983822cSFabien Parent output-high; 2339983822cSFabien Parent }; 2349983822cSFabien Parent 2359983822cSFabien Parent gpio_mux_int_n_pin { 2369983822cSFabien Parent pinmux = <MT8516_PIN_64_URXD1__FUNC_GPIO64>; 2379983822cSFabien Parent input-enable; 2389983822cSFabien Parent bias-pull-up; 2399983822cSFabien Parent }; 2409983822cSFabien Parent }; 2417c20f7f3SBartosz Golaszewski 2427c20f7f3SBartosz Golaszewski ethernet_pins_default: ethernet { 2437c20f7f3SBartosz Golaszewski pins_ethernet { 2447c20f7f3SBartosz Golaszewski pinmux = <MT8516_PIN_0_EINT0__FUNC_EXT_TXD0>, 2457c20f7f3SBartosz Golaszewski <MT8516_PIN_1_EINT1__FUNC_EXT_TXD1>, 2467c20f7f3SBartosz Golaszewski <MT8516_PIN_5_EINT5__FUNC_EXT_RXER>, 2477c20f7f3SBartosz Golaszewski <MT8516_PIN_6_EINT6__FUNC_EXT_RXC>, 2487c20f7f3SBartosz Golaszewski <MT8516_PIN_7_EINT7__FUNC_EXT_RXDV>, 2497c20f7f3SBartosz Golaszewski <MT8516_PIN_8_EINT8__FUNC_EXT_RXD0>, 2507c20f7f3SBartosz Golaszewski <MT8516_PIN_9_EINT9__FUNC_EXT_RXD1>, 2517c20f7f3SBartosz Golaszewski <MT8516_PIN_12_EINT12__FUNC_EXT_TXEN>, 2527c20f7f3SBartosz Golaszewski <MT8516_PIN_38_MRG_DI__FUNC_EXT_MDIO>, 2537c20f7f3SBartosz Golaszewski <MT8516_PIN_39_MRG_DO__FUNC_EXT_MDC>; 2547c20f7f3SBartosz Golaszewski }; 2557c20f7f3SBartosz Golaszewski }; 2569983822cSFabien Parent}; 257