mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2025-01-26 23:19:23 +07:00
d64420e816
Rockchip SoCs use 2 different numbering schemes. Where the gpio- controllers just count 0-31 for their 32 gpios, the underlying iomux controller splits these into 4 separate entities A-D. Device-schematics always use these iomux-values to identify pins, so to make mapping schematics to devicetree easier Andy Yan introduced named constants for the pins but so far we only used them on new additions. Using a sed-script created by Emil Renner Berthing bulk-convert the remaining raw gpio numbers into their descriptive counterparts and also gets rid of the unhelpful RK_FUNC_x -> x and RK_GPIOx -> x mappings: /rockchip,pins *=/bcheck b # to end of script :append-next-line N :check /^[^;]*$/bappend-next-line s/<RK_GPIO\([0-9]\) /<\1 /g s/<\([^ ][^ ]* *\)0 /<\1RK_PA0 /g s/<\([^ ][^ ]* *\)1 /<\1RK_PA1 /g s/<\([^ ][^ ]* *\)2 /<\1RK_PA2 /g s/<\([^ ][^ ]* *\)3 /<\1RK_PA3 /g s/<\([^ ][^ ]* *\)4 /<\1RK_PA4 /g s/<\([^ ][^ ]* *\)5 /<\1RK_PA5 /g s/<\([^ ][^ ]* *\)6 /<\1RK_PA6 /g s/<\([^ ][^ ]* *\)7 /<\1RK_PA7 /g s/<\([^ ][^ ]* *\)8 /<\1RK_PB0 /g s/<\([^ ][^ ]* *\)9 /<\1RK_PB1 /g s/<\([^ ][^ ]* *\)10 /<\1RK_PB2 /g s/<\([^ ][^ ]* *\)11 /<\1RK_PB3 /g s/<\([^ ][^ ]* *\)12 /<\1RK_PB4 /g s/<\([^ ][^ ]* *\)13 /<\1RK_PB5 /g s/<\([^ ][^ ]* *\)14 /<\1RK_PB6 /g s/<\([^ ][^ ]* *\)15 /<\1RK_PB7 /g s/<\([^ ][^ ]* *\)16 /<\1RK_PC0 /g s/<\([^ ][^ ]* *\)17 /<\1RK_PC1 /g s/<\([^ ][^ ]* *\)18 /<\1RK_PC2 /g s/<\([^ ][^ ]* *\)19 /<\1RK_PC3 /g s/<\([^ ][^ ]* *\)20 /<\1RK_PC4 /g s/<\([^ ][^ ]* *\)21 /<\1RK_PC5 /g s/<\([^ ][^ ]* *\)22 /<\1RK_PC6 /g s/<\([^ ][^ ]* *\)23 /<\1RK_PC7 /g s/<\([^ ][^ ]* *\)24 /<\1RK_PD0 /g s/<\([^ ][^ ]* *\)25 /<\1RK_PD1 /g s/<\([^ ][^ ]* *\)26 /<\1RK_PD2 /g s/<\([^ ][^ ]* *\)27 /<\1RK_PD3 /g s/<\([^ ][^ ]* *\)28 /<\1RK_PD4 /g s/<\([^ ][^ ]* *\)29 /<\1RK_PD5 /g s/<\([^ ][^ ]* *\)30 /<\1RK_PD6 /g s/<\([^ ][^ ]* *\)31 /<\1RK_PD7 /g s/<\([^ ][^ ]* *[^ ][^ ]* *\)0 /<\1RK_FUNC_GPIO /g s/<\([^ ][^ ]* *[^ ][^ ]* *\)RK_FUNC_\([1-9]\) /<\1\2 /g Suggested-by: Emil Renner Berthing <esmil@mailme.dk> Signed-off-by: Heiko Stuebner <heiko@sntech.de> Tested-by: Katsuhiro Suzuki <katsuhiro@katsuster.net> Acked-by: Robin Murphy <robin.murphy@arm.com>
278 lines
5.5 KiB
Plaintext
278 lines
5.5 KiB
Plaintext
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
/*
|
|
* Copyright (c) 2016 Andreas Färber
|
|
*/
|
|
|
|
/dts-v1/;
|
|
#include "rk3368.dtsi"
|
|
#include <dt-bindings/input/input.h>
|
|
|
|
/ {
|
|
model = "GeekBox";
|
|
compatible = "geekbuying,geekbox", "rockchip,rk3368";
|
|
|
|
chosen {
|
|
stdout-path = "serial2:115200n8";
|
|
};
|
|
|
|
memory@0 {
|
|
device_type = "memory";
|
|
reg = <0x0 0x0 0x0 0x80000000>;
|
|
};
|
|
|
|
ext_gmac: gmac-clk {
|
|
compatible = "fixed-clock";
|
|
clock-frequency = <125000000>;
|
|
clock-output-names = "ext_gmac";
|
|
#clock-cells = <0>;
|
|
};
|
|
|
|
ir: ir-receiver {
|
|
compatible = "gpio-ir-receiver";
|
|
gpios = <&gpio3 RK_PD6 GPIO_ACTIVE_LOW>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&ir_int>;
|
|
};
|
|
|
|
keys: gpio-keys {
|
|
compatible = "gpio-keys";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pwr_key>;
|
|
|
|
power {
|
|
gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_LOW>;
|
|
label = "GPIO Power";
|
|
linux,code = <KEY_POWER>;
|
|
wakeup-source;
|
|
};
|
|
};
|
|
|
|
leds: gpio-leds {
|
|
compatible = "gpio-leds";
|
|
|
|
blue {
|
|
gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_HIGH>;
|
|
label = "geekbox:blue:led";
|
|
default-state = "on";
|
|
};
|
|
|
|
red {
|
|
gpios = <&gpio2 RK_PA3 GPIO_ACTIVE_HIGH>;
|
|
label = "geekbox:red:led";
|
|
default-state = "off";
|
|
};
|
|
};
|
|
|
|
vcc_sys: vcc-sys-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc_sys";
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
};
|
|
};
|
|
|
|
&emmc {
|
|
status = "okay";
|
|
bus-width = <8>;
|
|
cap-mmc-highspeed;
|
|
clock-frequency = <150000000>;
|
|
non-removable;
|
|
vmmc-supply = <&vcc_io>;
|
|
vqmmc-supply = <&vcc18_flash>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_bus8>;
|
|
};
|
|
|
|
&gmac {
|
|
status = "okay";
|
|
phy-supply = <&vcc_lan>;
|
|
phy-mode = "rgmii";
|
|
clock_in_out = "input";
|
|
assigned-clocks = <&cru SCLK_MAC>;
|
|
assigned-clock-parents = <&ext_gmac>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&rgmii_pins>;
|
|
tx_delay = <0x30>;
|
|
rx_delay = <0x10>;
|
|
};
|
|
|
|
&i2c0 {
|
|
status = "okay";
|
|
|
|
rk808: pmic@1b {
|
|
compatible = "rockchip,rk808";
|
|
reg = <0x1b>;
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&pmic_int>, <&pmic_sleep>;
|
|
interrupt-parent = <&gpio0>;
|
|
interrupts = <RK_PA5 IRQ_TYPE_LEVEL_LOW>;
|
|
rockchip,system-power-controller;
|
|
vcc1-supply = <&vcc_sys>;
|
|
vcc2-supply = <&vcc_sys>;
|
|
vcc3-supply = <&vcc_sys>;
|
|
vcc4-supply = <&vcc_sys>;
|
|
vcc6-supply = <&vcc_sys>;
|
|
vcc7-supply = <&vcc_sys>;
|
|
vcc8-supply = <&vcc_io>;
|
|
vcc9-supply = <&vcc_sys>;
|
|
vcc10-supply = <&vcc_sys>;
|
|
vcc11-supply = <&vcc_sys>;
|
|
vcc12-supply = <&vcc_io>;
|
|
clock-output-names = "xin32k", "rk808-clkout2";
|
|
#clock-cells = <1>;
|
|
|
|
regulators {
|
|
vdd_cpu: DCDC_REG1 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <700000>;
|
|
regulator-max-microvolt = <1500000>;
|
|
regulator-name = "vdd_cpu";
|
|
};
|
|
|
|
vdd_log: DCDC_REG2 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <700000>;
|
|
regulator-max-microvolt = <1500000>;
|
|
regulator-name = "vdd_log";
|
|
};
|
|
|
|
vcc_ddr: DCDC_REG3 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-name = "vcc_ddr";
|
|
};
|
|
|
|
vcc_io: DCDC_REG4 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-name = "vcc_io";
|
|
};
|
|
|
|
vcc18_flash: LDO_REG1 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-name = "vcc18_flash";
|
|
};
|
|
|
|
vcc33_lcd: LDO_REG2 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-name = "vcc33_lcd";
|
|
};
|
|
|
|
vdd_10: LDO_REG3 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1000000>;
|
|
regulator-max-microvolt = <1000000>;
|
|
regulator-name = "vdd_10";
|
|
};
|
|
|
|
vcca_18: LDO_REG4 {
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-name = "vcca_18";
|
|
};
|
|
|
|
vccio_sd: LDO_REG5 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
regulator-name = "vccio_sd";
|
|
};
|
|
|
|
vdd10_lcd: LDO_REG6 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1000000>;
|
|
regulator-max-microvolt = <1000000>;
|
|
regulator-name = "vdd10_lcd";
|
|
};
|
|
|
|
vcc_18: LDO_REG7 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-name = "vcc_18";
|
|
};
|
|
|
|
vcc18_lcd: LDO_REG8 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <1800000>;
|
|
regulator-max-microvolt = <1800000>;
|
|
regulator-name = "vcc18_lcd";
|
|
};
|
|
|
|
vcc_sd: SWITCH_REG1 {
|
|
regulator-name = "vcc_sd";
|
|
};
|
|
|
|
vcc_lan: SWITCH_REG2 {
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
regulator-name = "vcc_lan";
|
|
};
|
|
};
|
|
};
|
|
};
|
|
|
|
&pinctrl {
|
|
ir {
|
|
ir_int: ir-int {
|
|
rockchip,pins = <3 RK_PD6 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
keys {
|
|
pwr_key: pwr-key {
|
|
rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
};
|
|
};
|
|
|
|
pmic {
|
|
pmic_sleep: pmic-sleep {
|
|
rockchip,pins = <0 RK_PA0 2 &pcfg_pull_none>;
|
|
};
|
|
|
|
pmic_int: pmic-int {
|
|
rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
};
|
|
};
|
|
};
|
|
|
|
&tsadc {
|
|
status = "okay";
|
|
rockchip,hw-tshut-mode = <0>; /* CRU */
|
|
rockchip,hw-tshut-polarity = <1>; /* high */
|
|
};
|
|
|
|
&uart2 {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_host0_ehci {
|
|
status = "okay";
|
|
};
|
|
|
|
&usb_otg {
|
|
status = "okay";
|
|
};
|
|
|
|
&wdt {
|
|
status = "okay";
|
|
};
|