123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255 |
- // SPDX-License-Identifier: GPL-2.0
- /*
- * Copyright (c) 2019 BayLibre, SAS.
- * Author: Fabien Parent <[email protected]>
- */
- #include <dt-bindings/gpio/gpio.h>
- / {
- aliases {
- serial0 = &uart0;
- ethernet0 = ðernet;
- };
- chosen {
- stdout-path = "serial0:921600n8";
- };
- firmware {
- optee: optee {
- compatible = "linaro,optee-tz";
- method = "smc";
- };
- };
- gpio-keys {
- compatible = "gpio-keys";
- pinctrl-names = "default";
- pinctrl-0 = <&gpio_keys_default>;
- key-volume-up {
- gpios = <&pio 42 GPIO_ACTIVE_LOW>;
- label = "volume_up";
- linux,code = <115>;
- wakeup-source;
- debounce-interval = <15>;
- };
- key-volume-down {
- gpios = <&pio 43 GPIO_ACTIVE_LOW>;
- label = "volume_down";
- linux,code = <114>;
- wakeup-source;
- debounce-interval = <15>;
- };
- };
- };
- &i2c0 {
- clock-div = <2>;
- pinctrl-names = "default";
- pinctrl-0 = <&i2c0_pins_a>;
- status = "okay";
- tca6416: gpio@20 {
- compatible = "ti,tca6416";
- reg = <0x20>;
- reset-gpios = <&pio 65 GPIO_ACTIVE_LOW>;
- pinctrl-names = "default";
- pinctrl-0 = <&tca6416_pins>;
- gpio-controller;
- #gpio-cells = <2>;
- eint20-mux-sel0-hog {
- gpio-hog;
- gpios = <0 0>;
- input;
- line-name = "eint20_mux_sel0";
- };
- expcon-mux-sel1-hog {
- gpio-hog;
- gpios = <1 0>;
- input;
- line-name = "expcon_mux_sel1";
- };
- mrg-di-mux-sel2-hog {
- gpio-hog;
- gpios = <2 0>;
- input;
- line-name = "mrg_di_mux_sel2";
- };
- sd-sdio-mux-sel3-hog {
- gpio-hog;
- gpios = <3 0>;
- input;
- line-name = "sd_sdio_mux_sel3";
- };
- sd-sdio-mux-ctrl7-hog {
- gpio-hog;
- gpios = <7 0>;
- output-low;
- line-name = "sd_sdio_mux_ctrl7";
- };
- hw-id0-hog {
- gpio-hog;
- gpios = <8 0>;
- input;
- line-name = "hw_id0";
- };
- hw-id1-hog {
- gpio-hog;
- gpios = <9 0>;
- input;
- line-name = "hw_id1";
- };
- hw-id2-hog {
- gpio-hog;
- gpios = <10 0>;
- input;
- line-name = "hw_id2";
- };
- fg-int-n-hog {
- gpio-hog;
- gpios = <11 0>;
- input;
- line-name = "fg_int_n";
- };
- usba-pwr-en-hog {
- gpio-hog;
- gpios = <12 0>;
- output-high;
- line-name = "usba_pwr_en";
- };
- wifi-3v3-pg-hog {
- gpio-hog;
- gpios = <13 0>;
- input;
- line-name = "wifi_3v3_pg";
- };
- cam-rst-hog {
- gpio-hog;
- gpios = <14 0>;
- output-low;
- line-name = "cam_rst";
- };
- cam-pwdn-hog {
- gpio-hog;
- gpios = <15 0>;
- output-low;
- line-name = "cam_pwdn";
- };
- };
- };
- &i2c2 {
- clock-div = <2>;
- pinctrl-names = "default";
- pinctrl-0 = <&i2c2_pins_a>;
- status = "okay";
- };
- &uart0 {
- status = "okay";
- };
- ðernet {
- pinctrl-names = "default";
- pinctrl-0 = <ðernet_pins_default>;
- phy-handle = <ð_phy>;
- phy-mode = "rmii";
- mac-address = [00 00 00 00 00 00];
- status = "okay";
- mdio {
- #address-cells = <1>;
- #size-cells = <0>;
- eth_phy: ethernet-phy@0 {
- reg = <0>;
- };
- };
- };
- &usb0 {
- status = "okay";
- dr_mode = "peripheral";
- usb-role-switch;
- usb_con: connector {
- compatible = "usb-c-connector";
- label = "USB-C";
- };
- };
- &usb_phy {
- status = "okay";
- };
- &pio {
- gpio_keys_default: gpiodefault {
- pins_cmd_dat {
- pinmux = <MT8516_PIN_42_KPCOL0__FUNC_GPIO42>,
- <MT8516_PIN_43_KPCOL1__FUNC_GPIO43>;
- bias-pull-up;
- input-enable;
- };
- };
- i2c0_pins_a: i2c0 {
- pins1 {
- pinmux = <MT8516_PIN_58_SDA0__FUNC_SDA0_0>,
- <MT8516_PIN_59_SCL0__FUNC_SCL0_0>;
- bias-disable;
- };
- };
- i2c2_pins_a: i2c2 {
- pins1 {
- pinmux = <MT8516_PIN_60_SDA2__FUNC_SDA2_0>,
- <MT8516_PIN_61_SCL2__FUNC_SCL2_0>;
- bias-disable;
- };
- };
- tca6416_pins: pinmux_tca6416_pins {
- gpio_mux_rst_n_pin {
- pinmux = <MT8516_PIN_65_UTXD1__FUNC_GPIO65>;
- output-high;
- };
- gpio_mux_int_n_pin {
- pinmux = <MT8516_PIN_64_URXD1__FUNC_GPIO64>;
- input-enable;
- bias-pull-up;
- };
- };
- ethernet_pins_default: ethernet {
- pins_ethernet {
- pinmux = <MT8516_PIN_0_EINT0__FUNC_EXT_TXD0>,
- <MT8516_PIN_1_EINT1__FUNC_EXT_TXD1>,
- <MT8516_PIN_5_EINT5__FUNC_EXT_RXER>,
- <MT8516_PIN_6_EINT6__FUNC_EXT_RXC>,
- <MT8516_PIN_7_EINT7__FUNC_EXT_RXDV>,
- <MT8516_PIN_8_EINT8__FUNC_EXT_RXD0>,
- <MT8516_PIN_9_EINT9__FUNC_EXT_RXD1>,
- <MT8516_PIN_12_EINT12__FUNC_EXT_TXEN>,
- <MT8516_PIN_38_MRG_DI__FUNC_EXT_MDIO>,
- <MT8516_PIN_39_MRG_DO__FUNC_EXT_MDC>;
- };
- };
- };
|