| // SPDX-License-Identifier: (GPL-2.0+ OR MIT) |
| /* |
| * Google Veyron Fievel Rev 0+ board device tree source |
| * |
| * Copyright 2016 Google, Inc |
| */ |
| |
| /dts-v1/; |
| #include "rk3288-veyron.dtsi" |
| #include "rk3288-veyron-analog-audio.dtsi" |
| |
| / { |
| model = "Google Fievel"; |
| compatible = "google,veyron-fievel-rev8", "google,veyron-fievel-rev7", |
| "google,veyron-fievel-rev6", "google,veyron-fievel-rev5", |
| "google,veyron-fievel-rev4", "google,veyron-fievel-rev3", |
| "google,veyron-fievel-rev2", "google,veyron-fievel-rev1", |
| "google,veyron-fievel-rev0", "google,veyron-fievel", |
| "google,veyron", "rockchip,rk3288"; |
| |
| /delete-node/ bt-activity; |
| |
| vccsys: vccsys { |
| compatible = "regulator-fixed"; |
| regulator-name = "vccsys"; |
| regulator-boot-on; |
| regulator-always-on; |
| }; |
| |
| /* |
| * vcc33_pmuio and vcc33_io is sourced directly from vcc33_sys, |
| * enabled by vcc_18 |
| */ |
| vcc33_io: vcc33-io { |
| compatible = "regulator-fixed"; |
| regulator-always-on; |
| regulator-boot-on; |
| regulator-name = "vcc33_io"; |
| }; |
| |
| vcc5_host1: vcc5-host1-regulator { |
| compatible = "regulator-fixed"; |
| enable-active-high; |
| gpio = <&gpio5 RK_PC2 GPIO_ACTIVE_HIGH>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&hub_usb1_pwr_en>; |
| regulator-name = "vcc5_host1"; |
| regulator-always-on; |
| regulator-boot-on; |
| }; |
| |
| vcc5_host2: vcc5-host2-regulator { |
| compatible = "regulator-fixed"; |
| enable-active-high; |
| gpio = <&gpio5 RK_PB6 GPIO_ACTIVE_HIGH>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&hub_usb2_pwr_en>; |
| regulator-name = "vcc5_host2"; |
| regulator-always-on; |
| regulator-boot-on; |
| }; |
| |
| vcc5v_otg: vcc5v-otg-regulator { |
| compatible = "regulator-fixed"; |
| enable-active-high; |
| gpio = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&usb_otg_pwr_en>; |
| regulator-name = "vcc5_otg"; |
| regulator-always-on; |
| regulator-boot-on; |
| }; |
| |
| ext_gmac: external-gmac-clock { |
| compatible = "fixed-clock"; |
| #clock-cells = <0>; |
| clock-frequency = <125000000>; |
| clock-output-names = "ext_gmac"; |
| }; |
| }; |
| |
| &gmac { |
| status = "okay"; |
| |
| assigned-clocks = <&cru SCLK_MAC>; |
| assigned-clock-parents = <&ext_gmac>; |
| clock_in_out = "input"; |
| phy-handle = <ðphy>; |
| phy-mode = "rgmii"; |
| phy-supply = <&vcc33_lan>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&rgmii_pins>, <&phy_rst>, <&phy_pmeb>, <&phy_int>; |
| rx_delay = <0x10>; |
| tx_delay = <0x30>; |
| |
| /* |
| * Reset for the RTL8211 PHY which requires a 10-ms reset pulse (low) |
| * with a 30ms settling time. |
| */ |
| snps,reset-gpio = <&gpio4 RK_PB0 0>; |
| snps,reset-active-low; |
| snps,reset-delays-us = <0 10000 30000>; |
| wakeup-source; |
| |
| mdio0 { |
| compatible = "snps,dwmac-mdio"; |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| ethphy: ethernet-phy@1 { |
| reg = <1>; |
| }; |
| }; |
| }; |
| |
| &rk808 { |
| dvs-gpios = <&gpio7 RK_PB4 GPIO_ACTIVE_HIGH>, |
| <&gpio7 RK_PB7 GPIO_ACTIVE_HIGH>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&pmic_int_l &dvs_1 &dvs_2>; |
| |
| vcc6-supply = <&vcc33_sys>; |
| vcc10-supply = <&vcc33_sys>; |
| vcc11-supply = <&vcc_5v>; |
| vcc12-supply = <&vcc33_sys>; |
| |
| regulators { |
| /delete-node/ LDO_REG1; |
| |
| /* |
| * According to the schematic, vcc18_lcdt is for |
| * HDMI_AVDD_1V8 |
| */ |
| vcc18_lcdt: LDO_REG2 { |
| regulator-always-on; |
| regulator-boot-on; |
| regulator-min-microvolt = <1800000>; |
| regulator-max-microvolt = <1800000>; |
| regulator-name = "vdd18_lcdt"; |
| regulator-state-mem { |
| regulator-off-in-suspend; |
| }; |
| }; |
| |
| /* |
| * This is not a pwren anymore, but the real power supply, |
| * vdd10_lcd for HDMI_AVDD_1V0 |
| */ |
| vdd10_lcd: LDO_REG7 { |
| regulator-always-on; |
| regulator-boot-on; |
| regulator-min-microvolt = <1000000>; |
| regulator-max-microvolt = <1000000>; |
| regulator-name = "vdd10_lcd"; |
| regulator-state-mem { |
| regulator-off-in-suspend; |
| }; |
| }; |
| |
| /* for usb camera */ |
| vcc33_ccd: LDO_REG8 { |
| regulator-always-on; |
| regulator-boot-on; |
| regulator-min-microvolt = <3300000>; |
| regulator-max-microvolt = <3300000>; |
| regulator-name = "vcc33_ccd"; |
| regulator-state-mem { |
| regulator-off-in-suspend; |
| }; |
| }; |
| |
| vcc33_lan: SWITCH_REG2 { |
| regulator-name = "vcc33_lan"; |
| }; |
| }; |
| }; |
| |
| &sdio0 { |
| #address-cells = <1>; |
| #size-cells = <0>; |
| |
| btmrvl: btmrvl@2 { |
| compatible = "marvell,sd8897-bt"; |
| reg = <2>; |
| interrupt-parent = <&gpio4>; |
| interrupts = <RK_PD7 IRQ_TYPE_LEVEL_LOW>; |
| marvell,wakeup-pin = /bits/ 16 <13>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&bt_host_wake_l>; |
| }; |
| }; |
| |
| &vcc50_hdmi { |
| enable-active-high; |
| gpio = <&gpio5 RK_PC3 GPIO_ACTIVE_HIGH>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&vcc50_hdmi_en>; |
| }; |
| |
| &vcc_5v { |
| enable-active-high; |
| gpio = <&gpio7 RK_PC5 GPIO_ACTIVE_HIGH>; |
| pinctrl-names = "default"; |
| pinctrl-0 = <&drv_5v>; |
| }; |
| |
| &gpio0 { |
| gpio-line-names = "PMIC_SLEEP_AP", |
| "DDRIO_PWROFF", |
| "DDRIO_RETEN", |
| "TS3A227E_INT_L", |
| "PMIC_INT_L", |
| "PWR_KEY_L", |
| "HUB_USB1_nFALUT", |
| "PHY_PMEB", |
| |
| "PHY_INT", |
| "REC_MODE_L", |
| "OTP_OUT", |
| "", |
| "USB_OTG_POWER_EN", |
| "AP_WARM_RESET_H", |
| "USB_OTG_nFALUT", |
| "I2C0_SDA_PMIC", |
| |
| "I2C0_SCL_PMIC", |
| "DEVMODE_L", |
| "USB_INT"; |
| }; |
| |
| &gpio2 { |
| gpio-line-names = "CONFIG0", |
| "CONFIG1", |
| "CONFIG2", |
| "", |
| "", |
| "", |
| "", |
| "CONFIG3", |
| |
| "", |
| "EMMC_RST_L", |
| "", |
| "", |
| "BL_PWR_EN", |
| "", |
| "TOUCH_INT", |
| "TOUCH_RST", |
| |
| "I2C3_SCL_TP", |
| "I2C3_SDA_TP"; |
| }; |
| |
| &gpio3 { |
| gpio-line-names = "FLASH0_D0", |
| "FLASH0_D1", |
| "FLASH0_D2", |
| "FLASH0_D3", |
| "FLASH0_D4", |
| "FLASH0_D5", |
| "FLASH0_D6", |
| "FLASH0_D7", |
| |
| "VCC5V_GOOD_H", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| |
| "FLASH0_CS2/EMMC_CMD", |
| "", |
| "FLASH0_DQS/EMMC_CLKO", |
| "", |
| "", |
| "", |
| "", |
| "", |
| |
| "PHY_TXD2", |
| "PHY_TXD3", |
| "MAC_RXD2", |
| "MAC_RXD3", |
| "PHY_TXD0", |
| "PHY_TXD1", |
| "MAC_RXD0", |
| "MAC_RXD1"; |
| }; |
| |
| &gpio4 { |
| gpio-line-names = "MAC_MDC", |
| "MAC_RXDV", |
| "MAC_RXER", |
| "MAC_CLK", |
| "PHY_TXEN", |
| "MAC_MDIO", |
| "MAC_RXCLK", |
| "", |
| |
| "PHY_RST", |
| "PHY_TXCLK", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| |
| "UART0_RXD", |
| "UART0_TXD", |
| "UART0_CTS_L", |
| "UART0_RTS_L", |
| "SDIO0_D0", |
| "SDIO0_D1", |
| "SDIO0_D2", |
| "SDIO0_D3", |
| |
| "SDIO0_CMD", |
| "SDIO0_CLK", |
| "BT_DEV_WAKE", |
| "", |
| "WIFI_ENABLE_H", |
| "BT_ENABLE_L", |
| "WIFI_HOST_WAKE", |
| "BT_HOST_WAKE"; |
| }; |
| |
| &gpio5 { |
| gpio-line-names = "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| "", |
| |
| "", |
| "", |
| "", |
| "", |
| "USB_OTG_CTL1", |
| "HUB_USB2_CTL1", |
| "HUB_USB2_PWR_EN", |
| "HUB_USB_ILIM_SEL", |
| |
| "USB_OTG_STATUS_L", |
| "HUB_USB1_CTL1", |
| "HUB_USB1_PWR_EN", |
| "VCC50_HDMI_EN"; |
| }; |
| |
| &gpio6 { |
| gpio-line-names = "I2S0_SCLK", |
| "I2S0_LRCK_RX", |
| "I2S0_LRCK_TX", |
| "I2S0_SDI", |
| "I2S0_SDO0", |
| "HP_DET_H", |
| "", |
| "INT_CODEC", |
| |
| "I2S0_CLK", |
| "I2C2_SDA", |
| "I2C2_SCL", |
| "MICDET", |
| "", |
| "", |
| "", |
| "", |
| |
| "HUB_USB2_nFALUT", |
| "USB_OTG_ILIM_SEL"; |
| }; |
| |
| &gpio7 { |
| gpio-line-names = "LCD_BL_PWM", |
| "PWM_LOG", |
| "BL_EN", |
| "PWR_LED1", |
| "TPM_INT_H", |
| "SPK_ON", |
| "FW_WP_AP", |
| "", |
| |
| "CPU_NMI", |
| "DVSOK", |
| "", |
| "EDP_HPD", |
| "DVS1", |
| "", |
| "LCD_EN", |
| "DVS2", |
| |
| "HDMI_CEC", |
| "I2C4_SDA", |
| "I2C4_SCL", |
| "I2C5_SDA_HDMI", |
| "I2C5_SCL_HDMI", |
| "5V_DRV", |
| "UART2_RXD", |
| "UART2_TXD"; |
| }; |
| |
| &gpio8 { |
| gpio-line-names = "RAM_ID0", |
| "RAM_ID1", |
| "RAM_ID2", |
| "RAM_ID3", |
| "I2C1_SDA_TPM", |
| "I2C1_SCL_TPM", |
| "SPI2_CLK", |
| "SPI2_CS0", |
| |
| "SPI2_RXD", |
| "SPI2_TXD"; |
| }; |
| |
| &pinctrl { |
| pinctrl-names = "default", "sleep"; |
| pinctrl-0 = < |
| /* Common for sleep and wake, but no owners */ |
| &ddr0_retention |
| &ddrio_pwroff |
| &global_pwroff |
| |
| /* For usb bc1.2 */ |
| &usb_otg_ilim_sel |
| &usb_usb_ilim_sel |
| |
| /* Wake only */ |
| &bt_dev_wake_awake |
| &pwr_led1_on |
| >; |
| |
| pinctrl-1 = < |
| /* Common for sleep and wake, but no owners */ |
| &ddr0_retention |
| &ddrio_pwroff |
| &global_pwroff |
| |
| /* For usb bc1.2 */ |
| &usb_otg_ilim_sel |
| &usb_usb_ilim_sel |
| |
| /* Sleep only */ |
| &bt_dev_wake_sleep |
| &pwr_led1_blink |
| >; |
| |
| buck-5v { |
| drv_5v: drv-5v { |
| rockchip,pins = <7 RK_PC5 RK_FUNC_GPIO &pcfg_pull_none>; |
| }; |
| }; |
| |
| gmac { |
| phy_rst: phy-rst { |
| rockchip,pins = <4 RK_PB0 RK_FUNC_GPIO &pcfg_output_high>; |
| }; |
| |
| phy_pmeb: phy-pmeb { |
| rockchip,pins = <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>; |
| }; |
| |
| phy_int: phy-int { |
| rockchip,pins = <0 RK_PB0 RK_FUNC_GPIO &pcfg_pull_up>; |
| }; |
| }; |
| |
| hdmi { |
| vcc50_hdmi_en: vcc50-hdmi-en { |
| rockchip,pins = <5 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>; |
| }; |
| }; |
| |
| leds { |
| pwr_led1_on: pwr-led1-on { |
| rockchip,pins = <7 RK_PA3 RK_FUNC_GPIO &pcfg_output_low>; |
| }; |
| |
| pwr_led1_blink: pwr-led1-blink { |
| rockchip,pins = <7 RK_PA3 RK_FUNC_GPIO &pcfg_output_high>; |
| }; |
| }; |
| |
| pmic { |
| dvs_1: dvs-1 { |
| rockchip,pins = <7 RK_PB4 RK_FUNC_GPIO &pcfg_pull_down>; |
| }; |
| |
| dvs_2: dvs-2 { |
| rockchip,pins = <7 RK_PB7 RK_FUNC_GPIO &pcfg_pull_down>; |
| }; |
| }; |
| |
| usb-bc12 { |
| usb_otg_ilim_sel: usb-otg-ilim-sel { |
| rockchip,pins = <6 RK_PC1 RK_FUNC_GPIO &pcfg_output_low>; |
| }; |
| |
| usb_usb_ilim_sel: usb-usb-ilim-sel { |
| rockchip,pins = <5 RK_PB7 RK_FUNC_GPIO &pcfg_output_low>; |
| }; |
| }; |
| |
| usb-host { |
| hub_usb1_pwr_en: hub_usb1_pwr_en { |
| rockchip,pins = <5 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>; |
| }; |
| |
| hub_usb2_pwr_en: hub_usb2_pwr_en { |
| rockchip,pins = <5 RK_PB6 RK_FUNC_GPIO &pcfg_pull_none>; |
| }; |
| |
| usb_otg_pwr_en: usb_otg_pwr_en { |
| rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_none>; |
| }; |
| }; |
| }; |