1f9010b0eSMarkus Reichl// SPDX-License-Identifier: (GPL-2.0+ OR MIT) 2f9010b0eSMarkus Reichl/* 3f9010b0eSMarkus Reichl * Copyright (c) 2017 T-Chip Intelligent Technology Co., Ltd 4f9010b0eSMarkus Reichl * Copyright (c) 2019 Markus Reichl <m.reichl@fivetechno.de> 5f9010b0eSMarkus Reichl */ 6f9010b0eSMarkus Reichl 7f9010b0eSMarkus Reichl/dts-v1/; 8f9010b0eSMarkus Reichl#include "rk3399-roc-pc.dtsi" 9f9010b0eSMarkus Reichl 10f9010b0eSMarkus Reichl/ { 11f9010b0eSMarkus Reichl model = "Firefly ROC-RK3399-PC Mezzanine Board"; 12f9010b0eSMarkus Reichl compatible = "firefly,roc-rk3399-pc-mezzanine", "rockchip,rk3399"; 13f9010b0eSMarkus Reichl 14bd77d0adSJagan Teki /* MP8009 PoE PD */ 15bd77d0adSJagan Teki poe_12v: poe-12v { 16bd77d0adSJagan Teki compatible = "regulator-fixed"; 17bd77d0adSJagan Teki regulator-name = "poe_12v"; 18bd77d0adSJagan Teki regulator-always-on; 19bd77d0adSJagan Teki regulator-boot-on; 20bd77d0adSJagan Teki regulator-min-microvolt = <12000000>; 21bd77d0adSJagan Teki regulator-max-microvolt = <12000000>; 22bd77d0adSJagan Teki }; 23bd77d0adSJagan Teki 24f9010b0eSMarkus Reichl vcc3v3_ngff: vcc3v3-ngff { 25f9010b0eSMarkus Reichl compatible = "regulator-fixed"; 26f9010b0eSMarkus Reichl regulator-name = "vcc3v3_ngff"; 27f9010b0eSMarkus Reichl enable-active-high; 28f9010b0eSMarkus Reichl gpio = <&gpio4 RK_PD3 GPIO_ACTIVE_HIGH>; 29f9010b0eSMarkus Reichl pinctrl-names = "default"; 30f9010b0eSMarkus Reichl pinctrl-0 = <&vcc3v3_ngff_en>; 31f9010b0eSMarkus Reichl regulator-always-on; 32f9010b0eSMarkus Reichl regulator-boot-on; 33f9010b0eSMarkus Reichl regulator-min-microvolt = <3300000>; 34f9010b0eSMarkus Reichl regulator-max-microvolt = <3300000>; 35bd77d0adSJagan Teki vin-supply = <&sys_12v>; 36f9010b0eSMarkus Reichl }; 37f9010b0eSMarkus Reichl 38f9010b0eSMarkus Reichl vcc3v3_pcie: vcc3v3-pcie { 39f9010b0eSMarkus Reichl compatible = "regulator-fixed"; 40f9010b0eSMarkus Reichl regulator-name = "vcc3v3_pcie"; 41f9010b0eSMarkus Reichl enable-active-high; 42f9010b0eSMarkus Reichl gpio = <&gpio1 RK_PC1 GPIO_ACTIVE_HIGH>; 43f9010b0eSMarkus Reichl pinctrl-names = "default"; 44f9010b0eSMarkus Reichl pinctrl-0 = <&vcc3v3_pcie_en>; 45f9010b0eSMarkus Reichl regulator-min-microvolt = <3300000>; 46f9010b0eSMarkus Reichl regulator-max-microvolt = <3300000>; 47bd77d0adSJagan Teki vin-supply = <&sys_12v>; 48f9010b0eSMarkus Reichl }; 49f9010b0eSMarkus Reichl}; 50f9010b0eSMarkus Reichl 51bd77d0adSJagan Teki&sys_12v { 52bd77d0adSJagan Teki vin-supply = <&poe_12v>; 53bd77d0adSJagan Teki}; 54bd77d0adSJagan Teki 55f9010b0eSMarkus Reichl&pcie_phy { 56f9010b0eSMarkus Reichl status = "okay"; 57f9010b0eSMarkus Reichl}; 58f9010b0eSMarkus Reichl 59f9010b0eSMarkus Reichl&pcie0 { 60f9010b0eSMarkus Reichl ep-gpios = <&gpio4 RK_PD1 GPIO_ACTIVE_HIGH>; 61f9010b0eSMarkus Reichl num-lanes = <4>; 62f9010b0eSMarkus Reichl pinctrl-names = "default"; 63f9010b0eSMarkus Reichl pinctrl-0 = <&pcie_perst>; 64f9010b0eSMarkus Reichl vpcie3v3-supply = <&vcc3v3_pcie>; 65ec5b0af7SMarkus Reichl vpcie1v8-supply = <&vcc1v8_pmu>; 66ec5b0af7SMarkus Reichl vpcie0v9-supply = <&vcca_0v9>; 67f9010b0eSMarkus Reichl status = "okay"; 68f9010b0eSMarkus Reichl}; 69f9010b0eSMarkus Reichl 70f9010b0eSMarkus Reichl&pinctrl { 71f9010b0eSMarkus Reichl ngff { 72f9010b0eSMarkus Reichl vcc3v3_ngff_en: vcc3v3-ngff-en { 73f9010b0eSMarkus Reichl rockchip,pins = <4 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>; 74f9010b0eSMarkus Reichl }; 75f9010b0eSMarkus Reichl }; 76f9010b0eSMarkus Reichl 77f9010b0eSMarkus Reichl pcie { 78f9010b0eSMarkus Reichl vcc3v3_pcie_en: vcc3v3-pcie-en { 79f9010b0eSMarkus Reichl rockchip,pins = <1 RK_PC1 RK_FUNC_GPIO &pcfg_pull_none>; 80f9010b0eSMarkus Reichl }; 81f9010b0eSMarkus Reichl 82f9010b0eSMarkus Reichl pcie_perst: pcie-perst { 83f9010b0eSMarkus Reichl rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_none>; 84f9010b0eSMarkus Reichl }; 85f9010b0eSMarkus Reichl }; 86f9010b0eSMarkus Reichl}; 87cf3c5397SMarkus Reichl 88cf3c5397SMarkus Reichl&sdio0 { 89cf3c5397SMarkus Reichl bus-width = <4>; 90cf3c5397SMarkus Reichl cap-sd-highspeed; 91cf3c5397SMarkus Reichl cap-sdio-irq; 92cf3c5397SMarkus Reichl keep-power-in-suspend; 93cf3c5397SMarkus Reichl mmc-pwrseq = <&sdio_pwrseq>; 94cf3c5397SMarkus Reichl non-removable; 95cf3c5397SMarkus Reichl pinctrl-names = "default"; 96cf3c5397SMarkus Reichl pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>; 97cf3c5397SMarkus Reichl sd-uhs-sdr104; 98cf3c5397SMarkus Reichl vmmc-supply = <&vcc3v3_ngff>; 99cf3c5397SMarkus Reichl vqmmc-supply = <&vcc_1v8>; 100cf3c5397SMarkus Reichl status = "okay"; 101cf3c5397SMarkus Reichl}; 102cf3c5397SMarkus Reichl 103cf3c5397SMarkus Reichl&uart0 { 104cf3c5397SMarkus Reichl pinctrl-names = "default"; 105cf3c5397SMarkus Reichl pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>; 106cf3c5397SMarkus Reichl status = "okay"; 107cf3c5397SMarkus Reichl}; 108