New boards: Radxa Rock Pi E, NanoPi M4B
More fixed indices for mmc nodes; removal of obsolete amba bus nodes; nand-flash-controller nodes for px30 and rk3308; rk3399 pcie ranges fix; board-level fixes for Helios64, NanoPi and Rock960; more sound support for rock64 and rockpro64 and cleanups to make dt-bindings happier. -----BEGIN PGP SIGNATURE----- iQFEBAABCAAuFiEE7v+35S2Q1vLNA3Lx86Z5yZzRHYEFAmAd2RcQHGhlaWtvQHNu dGVjaC5kZQAKCRDzpnnJnNEdge1kCAC0ospmQfbTke3+mJ+P2pTNakz6l30CDbzm EDNsE2t9g4PrMt4FgsdT1kPa3J5lFLvzNvPSIbIIMT4a5D/8DDyGY9WwJTu+a5EC YNcU5gcU2ugxCcFhy2FXHxYVe1MAsczF5jyiMcE+ONsCX0s18k1zzK22K/Xfd71g sv6G8NcuzcF5GxFbAPZu73laMGOEq6INLBKTvumB3GgrvEZOOstalKNwJPRuanZd HydXJf8H9zXmxk096brRl7LmksPi/zh6Tykhb53//jsf0Dffh9fd7fNnKkSe91nU M5yzALy9ln4saFu6TgNIVOPh3fbQcyfU9ItvhtgeDy/QDvnmOjQm =sbHZ -----END PGP SIGNATURE----- Merge tag 'v5.12-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip into arm/dt New boards: Radxa Rock Pi E, NanoPi M4B More fixed indices for mmc nodes; removal of obsolete amba bus nodes; nand-flash-controller nodes for px30 and rk3308; rk3399 pcie ranges fix; board-level fixes for Helios64, NanoPi and Rock960; more sound support for rock64 and rockpro64 and cleanups to make dt-bindings happier. * tag 'v5.12-rockchip-dts64-1' of git://git.kernel.org/pub/scm/linux/kernel/git/mmind/linux-rockchip: (24 commits) arm64: dts: rockchip: more user friendly name of sound nodes arm64: dts: rockchip: rename pinctrl nodename to gmac2io for nanopi-r2s board arm64: dts: rockchip: assign a fixed index to mmc devices on rk3368 boards arm64: dts: rockchip: assign a fixed index to mmc devices on rk3308 boards arm64: dts: rockchip: assign a fixed index to mmc devices on px30 boards arm64: dts: rockchip: cleanup cpu_thermal node of rk3399-rock960.dts arm64: dts: rockchip: Remove bogus "amba" bus nodes arm64: dts: rockchip: Light "sys" LED on NanoPi R2S arm64: dts: rockchip: fix ranges property format for rk3399 pcie node arm64: dts: rockchip: Rely on SoC external pull up on pmic-int-l on Helios64 arm64: dts: rockchip: Add NanoPi M4B board arm64: dts: rockchip: Move ep-gpios property to nanopc-t4 from nanopi4 arm64: dts: rockchip: Add NFC node for PX30 SoC arm64: dts: rockchip: Add NFC node for RK3308 SoC arm64: dts: rockchip: rk3328: Add Radxa ROCK Pi E dt-bindings: arm: rockchip: Add Radxa ROCK Pi E arm64: dts: rockchip: rk3328: Add clock_in_out property to gmac2phy node arm64: dts: rockchip: rename thermal subnodes for rk3399 arm64: dts: rockchip: rename thermal subnodes for rk3368 arm64: dts: rockchip: add SPDIF node for rk3399-rockpro64 ... Link: https://lore.kernel.org/r/12699743.uLZWGnKmhe@phil Signed-off-by: Arnd Bergmann <arnd@arndb.de>
This commit is contained in:
Коммит
889231c6c8
|
@ -467,6 +467,11 @@ properties:
|
|||
- const: radxa,rockpi4
|
||||
- const: rockchip,rk3399
|
||||
|
||||
- description: Radxa ROCK Pi E
|
||||
items:
|
||||
- const: radxa,rockpi-e
|
||||
- const: rockchip,rk3328
|
||||
|
||||
- description: Radxa ROCK Pi N8
|
||||
items:
|
||||
- const: radxa,rockpi-n8
|
||||
|
|
|
@ -11,6 +11,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-a1.dtb
|
|||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-evb.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-nanopi-r2s.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-rock64.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-rock-pi-e.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3328-roc-cc.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-evb-act8846.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3368-geekbox.dtb
|
||||
|
@ -33,6 +34,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-kobol-helios64.dtb
|
|||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-leez-p710.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopc-t4.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-m4.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-m4b.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-nanopi-neo4.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-orangepi.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinebook-pro.dtb
|
||||
|
|
|
@ -25,6 +25,9 @@
|
|||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c2;
|
||||
i2c3 = &i2c3;
|
||||
mmc0 = &sdmmc;
|
||||
mmc1 = &sdio;
|
||||
mmc2 = &emmc;
|
||||
serial0 = &uart0;
|
||||
serial1 = &uart1;
|
||||
serial2 = &uart2;
|
||||
|
@ -703,22 +706,15 @@
|
|||
clock-names = "pclk", "timer";
|
||||
};
|
||||
|
||||
amba: bus {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
dmac: dmac@ff240000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff240000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC>;
|
||||
clock-names = "apb_pclk";
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
dmac: dmac@ff240000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff240000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC>;
|
||||
clock-names = "apb_pclk";
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
|
||||
tsadc: tsadc@ff280000 {
|
||||
|
@ -973,6 +969,21 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
nfc: nand-controller@ff3b0000 {
|
||||
compatible = "rockchip,px30-nfc";
|
||||
reg = <0x0 0xff3b0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 57 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&cru HCLK_NANDC>, <&cru SCLK_NANDC>;
|
||||
clock-names = "ahb", "nfc";
|
||||
assigned-clocks = <&cru SCLK_NANDC>;
|
||||
assigned-clock-rates = <150000000>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&flash_ale &flash_bus8 &flash_cle &flash_cs0
|
||||
&flash_rdn &flash_rdy &flash_wrn &flash_dqs>;
|
||||
power-domains = <&power PX30_PD_MMC_NAND>;
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
gpu: gpu@ff400000 {
|
||||
compatible = "rockchip,px30-mali", "arm,mali-bifrost";
|
||||
reg = <0x0 0xff400000 0x0 0x4000>;
|
||||
|
@ -1107,102 +1118,102 @@
|
|||
};
|
||||
|
||||
qos_gmac: qos@ff518000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff518000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_gpu: qos@ff520000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff520000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_sdmmc: qos@ff52c000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff52c000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_emmc: qos@ff538000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff538000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_nand: qos@ff538080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff538080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_sdio: qos@ff538100 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff538100 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_sfc: qos@ff538180 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff538180 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_usb_host: qos@ff540000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff540000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_usb_otg: qos@ff540080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff540080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp_128: qos@ff548000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp_rd: qos@ff548080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp_wr: qos@ff548100 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548100 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp_m1: qos@ff548180 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548180 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vip: qos@ff548200 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff548200 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_rga_rd: qos@ff550000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff550000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_rga_wr: qos@ff550080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff550080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vop_m0: qos@ff550100 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff550100 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vop_m1: qos@ff550180 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff550180 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vpu: qos@ff558000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff558000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vpu_r128: qos@ff558080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,px30-qos", "syscon";
|
||||
reg = <0x0 0xff558080 0x0 0x20>;
|
||||
};
|
||||
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c2;
|
||||
i2c3 = &i2c3;
|
||||
mmc0 = &sdmmc;
|
||||
mmc1 = &emmc;
|
||||
mmc2 = &sdio;
|
||||
serial0 = &uart0;
|
||||
serial1 = &uart1;
|
||||
serial2 = &uart2;
|
||||
|
@ -513,33 +516,26 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
amba: bus {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
dmac0: dma-controller@ff2c0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff2c0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC0>;
|
||||
clock-names = "apb_pclk";
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
|
||||
dmac0: dma-controller@ff2c0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff2c0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC0>;
|
||||
clock-names = "apb_pclk";
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
|
||||
dmac1: dma-controller@ff2d0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff2d0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC1>;
|
||||
clock-names = "apb_pclk";
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
dmac1: dma-controller@ff2d0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff2d0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC1>;
|
||||
clock-names = "apb_pclk";
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
|
||||
i2s_2ch_0: i2s@ff350000 {
|
||||
|
@ -629,6 +625,21 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
nfc: nand-controller@ff4b0000 {
|
||||
compatible = "rockchip,rk3308-nfc",
|
||||
"rockchip,rv1108-nfc";
|
||||
reg = <0x0 0xff4b0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 81 IRQ_TYPE_LEVEL_HIGH>;
|
||||
clocks = <&cru HCLK_NANDC>, <&cru SCLK_NANDC>;
|
||||
clock-names = "ahb", "nfc";
|
||||
assigned-clocks = <&cru SCLK_NANDC>;
|
||||
assigned-clock-rates = <150000000>;
|
||||
pinctrl-0 = <&flash_ale &flash_bus8 &flash_cle &flash_csn0
|
||||
&flash_rdn &flash_rdy &flash_wrn>;
|
||||
pinctrl-names = "default";
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
cru: clock-controller@ff500000 {
|
||||
compatible = "rockchip,rk3308-cru";
|
||||
reg = <0x0 0xff500000 0x0 0x1000>;
|
||||
|
|
|
@ -50,6 +50,7 @@
|
|||
sys_led: led-1 {
|
||||
gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
|
||||
label = "nanopi-r2s:red:sys";
|
||||
default-state = "on";
|
||||
};
|
||||
|
||||
wan_led: led-2 {
|
||||
|
@ -280,7 +281,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
ethernet-phy {
|
||||
gmac2io {
|
||||
eth_phy_reset_pin: eth-phy-reset-pin {
|
||||
rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||
};
|
||||
|
|
|
@ -0,0 +1,382 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* (C) Copyright 2020 Chen-Yu Tsai <wens@csie.org>
|
||||
*
|
||||
* Based on ./rk3328-rock64.dts, which is
|
||||
*
|
||||
* Copyright (c) 2017 PINE64
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
|
||||
#include <dt-bindings/gpio/gpio.h>
|
||||
#include <dt-bindings/input/input.h>
|
||||
#include <dt-bindings/leds/common.h>
|
||||
#include <dt-bindings/pinctrl/rockchip.h>
|
||||
|
||||
#include "rk3328.dtsi"
|
||||
|
||||
/ {
|
||||
model = "Radxa ROCK Pi E";
|
||||
compatible = "radxa,rockpi-e", "rockchip,rk3328";
|
||||
|
||||
chosen {
|
||||
stdout-path = "serial2:1500000n8";
|
||||
};
|
||||
|
||||
adc-keys {
|
||||
compatible = "adc-keys";
|
||||
io-channels = <&saradc 0>;
|
||||
io-channel-names = "buttons";
|
||||
keyup-threshold-microvolt = <1750000>;
|
||||
|
||||
/* This button is unpopulated out of the factory. */
|
||||
button-recovery {
|
||||
label = "Recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <10000>;
|
||||
};
|
||||
};
|
||||
|
||||
gmac_clkin: external-gmac-clock {
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <125000000>;
|
||||
clock-output-names = "gmac_clkin";
|
||||
#clock-cells = <0>;
|
||||
};
|
||||
|
||||
leds {
|
||||
compatible = "gpio-leds";
|
||||
pinctrl-0 = <&led_pin>;
|
||||
pinctrl-names = "default";
|
||||
|
||||
led-0 {
|
||||
color = <LED_COLOR_ID_BLUE>;
|
||||
gpios = <&gpio3 RK_PA5 GPIO_ACTIVE_LOW>;
|
||||
linux,default-trigger = "heartbeat";
|
||||
};
|
||||
};
|
||||
|
||||
vcc_sd: sdmmc-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
gpio = <&gpio0 RK_PD6 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdmmc0m1_pin>;
|
||||
regulator-name = "vcc_sd";
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc_io>;
|
||||
};
|
||||
|
||||
vcc_host_5v: vcc-host-5v-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
gpio = <&gpio3 RK_PA7 GPIO_ACTIVE_HIGH>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&usb30_host_drv>;
|
||||
enable-active-high;
|
||||
regulator-name = "vcc_host_5v";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc_sys>;
|
||||
};
|
||||
|
||||
vcc_sys: vcc-sys {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc_sys";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <5000000>;
|
||||
regulator-max-microvolt = <5000000>;
|
||||
};
|
||||
|
||||
vcc_wifi: vcc-wifi-regulator {
|
||||
compatible = "regulator-fixed";
|
||||
gpio = <&gpio0 RK_PA0 GPIO_ACTIVE_LOW>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&wifi_en>;
|
||||
regulator-name = "vcc_wifi";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
vin-supply = <&vcc_io>;
|
||||
};
|
||||
};
|
||||
|
||||
&analog_sound {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&codec {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
&cpu1 {
|
||||
cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
&cpu2 {
|
||||
cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
&cpu3 {
|
||||
cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
&emmc {
|
||||
bus-width = <8>;
|
||||
cap-mmc-highspeed;
|
||||
mmc-ddr-1_8v;
|
||||
mmc-hs200-1_8v;
|
||||
non-removable;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&emmc_clk>, <&emmc_cmd>, <&emmc_bus8>;
|
||||
vmmc-supply = <&vcc_io>;
|
||||
vqmmc-supply = <&vcc18_emmc>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&gmac2io {
|
||||
assigned-clocks = <&cru SCLK_MAC2IO>, <&cru SCLK_MAC2IO_EXT>;
|
||||
assigned-clock-parents = <&gmac_clkin>, <&gmac_clkin>;
|
||||
clock_in_out = "input";
|
||||
phy-handle = <&rtl8211e>;
|
||||
phy-mode = "rgmii";
|
||||
phy-supply = <&vcc_io>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&rgmiim1_pins>;
|
||||
snps,aal;
|
||||
snps,rxpbl = <0x4>;
|
||||
snps,txpbl = <0x4>;
|
||||
tx_delay = <0x26>;
|
||||
rx_delay = <0x11>;
|
||||
status = "okay";
|
||||
|
||||
mdio {
|
||||
compatible = "snps,dwmac-mdio";
|
||||
#address-cells = <1>;
|
||||
#size-cells = <0>;
|
||||
|
||||
rtl8211e: ethernet-phy@1 {
|
||||
reg = <1>;
|
||||
pinctrl-0 = <ð_phy_int_pin>, <ð_phy_reset_pin>;
|
||||
pinctrl-names = "default";
|
||||
interrupt-parent = <&gpio1>;
|
||||
interrupts = <24 IRQ_TYPE_LEVEL_LOW>;
|
||||
reset-assert-us = <10000>;
|
||||
reset-deassert-us = <50000>;
|
||||
reset-gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&gmac2phy {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&fephyled_linkm1>, <&fephyled_rxm1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
status = "okay";
|
||||
|
||||
rk805: pmic@18 {
|
||||
compatible = "rockchip,rk805";
|
||||
reg = <0x18>;
|
||||
interrupt-parent = <&gpio2>;
|
||||
interrupts = <6 IRQ_TYPE_LEVEL_LOW>;
|
||||
#clock-cells = <1>;
|
||||
clock-output-names = "xin32k", "rk805-clkout2";
|
||||
gpio-controller;
|
||||
#gpio-cells = <2>;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&pmic_int_l>;
|
||||
rockchip,system-power-controller;
|
||||
wakeup-source;
|
||||
|
||||
vcc1-supply = <&vcc_sys>;
|
||||
vcc2-supply = <&vcc_sys>;
|
||||
vcc3-supply = <&vcc_sys>;
|
||||
vcc4-supply = <&vcc_sys>;
|
||||
vcc5-supply = <&vcc_io>;
|
||||
vcc6-supply = <&vcc_sys>;
|
||||
|
||||
regulators {
|
||||
vdd_log: DCDC_REG1 {
|
||||
regulator-name = "vdd_log";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <712500>;
|
||||
regulator-max-microvolt = <1450000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1000000>;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_arm: DCDC_REG2 {
|
||||
regulator-name = "vdd_arm";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <712500>;
|
||||
regulator-max-microvolt = <1450000>;
|
||||
regulator-ramp-delay = <12500>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <950000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_ddr: DCDC_REG3 {
|
||||
regulator-name = "vcc_ddr";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_io: DCDC_REG4 {
|
||||
regulator-name = "vcc_io";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <3300000>;
|
||||
regulator-max-microvolt = <3300000>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <3300000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc_18: LDO_REG1 {
|
||||
regulator-name = "vcc_18";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
};
|
||||
};
|
||||
|
||||
vcc18_emmc: LDO_REG2 {
|
||||
regulator-name = "vcc18_emmc";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1800000>;
|
||||
regulator-max-microvolt = <1800000>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1800000>;
|
||||
};
|
||||
};
|
||||
|
||||
vdd_10: LDO_REG3 {
|
||||
regulator-name = "vdd_10";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <1000000>;
|
||||
regulator-max-microvolt = <1000000>;
|
||||
|
||||
regulator-state-mem {
|
||||
regulator-on-in-suspend;
|
||||
regulator-suspend-microvolt = <1000000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&i2s1 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&io_domains {
|
||||
pmuio-supply = <&vcc_io>;
|
||||
vccio1-supply = <&vcc_io>;
|
||||
vccio2-supply = <&vcc18_emmc>;
|
||||
vccio3-supply = <&vcc_io>;
|
||||
vccio4-supply = <&vcc_io>;
|
||||
vccio5-supply = <&vcc_io>;
|
||||
vccio6-supply = <&vcc_io>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
ephy {
|
||||
eth_phy_int_pin: eth-phy-int-pin {
|
||||
rockchip,pins = <1 RK_PD0 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||
};
|
||||
|
||||
eth_phy_reset_pin: eth-phy-reset-pin {
|
||||
rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||
};
|
||||
};
|
||||
|
||||
leds {
|
||||
led_pin: led-pin {
|
||||
rockchip,pins = <3 RK_PA5 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
pmic {
|
||||
pmic_int_l: pmic-int-l {
|
||||
rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
usb3 {
|
||||
usb30_host_drv: usb30-host-drv {
|
||||
rockchip,pins = <3 RK_PA7 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
wifi {
|
||||
wifi_en: wifi-en {
|
||||
rockchip,pins = <0 RK_PA0 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&sdmmc {
|
||||
bus-width = <4>;
|
||||
cap-sd-highspeed;
|
||||
disable-wp;
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&sdmmc0_clk>, <&sdmmc0_cmd>, <&sdmmc0_dectn>, <&sdmmc0_bus4>;
|
||||
vmmc-supply = <&vcc_sd>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&saradc {
|
||||
vref-supply = <&vcc_18>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&tsadc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&u2phy_host {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&uart2 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usb_host0_ehci {
|
||||
status = "okay";
|
||||
};
|
|
@ -84,34 +84,32 @@
|
|||
};
|
||||
};
|
||||
|
||||
sound {
|
||||
compatible = "audio-graph-card";
|
||||
label = "rockchip,rk3328";
|
||||
dais = <&i2s1_p0
|
||||
&spdif_p0>;
|
||||
};
|
||||
spdif_sound: spdif-sound {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,name = "SPDIF";
|
||||
|
||||
spdif-dit {
|
||||
compatible = "linux,spdif-dit";
|
||||
#sound-dai-cells = <0>;
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&spdif>;
|
||||
};
|
||||
|
||||
port {
|
||||
dit_p0_0: endpoint {
|
||||
remote-endpoint = <&spdif_p0_0>;
|
||||
};
|
||||
simple-audio-card,codec {
|
||||
sound-dai = <&spdif_dit>;
|
||||
};
|
||||
};
|
||||
|
||||
spdif_dit: spdif-dit {
|
||||
compatible = "linux,spdif-dit";
|
||||
#sound-dai-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
&analog_sound {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&codec {
|
||||
mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
|
||||
status = "okay";
|
||||
|
||||
port@0 {
|
||||
codec_p0_0: endpoint {
|
||||
remote-endpoint = <&i2s1_p0_0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&cpu0 {
|
||||
|
@ -163,6 +161,10 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmi_sound {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&hdmiphy {
|
||||
status = "okay";
|
||||
};
|
||||
|
@ -278,16 +280,12 @@
|
|||
};
|
||||
};
|
||||
|
||||
&i2s0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&i2s1 {
|
||||
status = "okay";
|
||||
|
||||
i2s1_p0: port {
|
||||
i2s1_p0_0: endpoint {
|
||||
dai-format = "i2s";
|
||||
mclk-fs = <256>;
|
||||
remote-endpoint = <&codec_p0_0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&io_domains {
|
||||
|
@ -337,12 +335,6 @@
|
|||
&spdif {
|
||||
pinctrl-0 = <&spdifm0_tx>;
|
||||
status = "okay";
|
||||
|
||||
spdif_p0: port {
|
||||
spdif_p0_0: endpoint {
|
||||
remote-endpoint = <&dit_p0_0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&spi0 {
|
||||
|
|
|
@ -27,6 +27,9 @@
|
|||
i2c1 = &i2c1;
|
||||
i2c2 = &i2c2;
|
||||
i2c3 = &i2c3;
|
||||
mmc0 = &sdmmc;
|
||||
mmc1 = &sdio;
|
||||
mmc2 = &emmc;
|
||||
ethernet0 = &gmac2io;
|
||||
ethernet1 = &gmac2phy;
|
||||
};
|
||||
|
@ -142,24 +145,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
amba: bus {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
dmac: dmac@ff1f0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff1f0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC>;
|
||||
clock-names = "apb_pclk";
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
};
|
||||
|
||||
analog_sound: analog-sound {
|
||||
compatible = "simple-audio-card";
|
||||
simple-audio-card,format = "i2s";
|
||||
|
@ -504,6 +489,17 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
dmac: dmac@ff1f0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff1f0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC>;
|
||||
clock-names = "apb_pclk";
|
||||
#dma-cells = <1>;
|
||||
};
|
||||
|
||||
thermal-zones {
|
||||
soc_thermal: soc-thermal {
|
||||
polling-delay-passive = <20>;
|
||||
|
@ -928,6 +924,7 @@
|
|||
phy-mode = "rmii";
|
||||
phy-handle = <&phy>;
|
||||
snps,txpbl = <0x4>;
|
||||
clock_in_out = "output";
|
||||
status = "disabled";
|
||||
|
||||
mdio {
|
||||
|
|
|
@ -25,6 +25,9 @@
|
|||
i2c3 = &i2c3;
|
||||
i2c4 = &i2c4;
|
||||
i2c5 = &i2c5;
|
||||
mmc0 = &sdmmc;
|
||||
mmc1 = &sdio0;
|
||||
mmc2 = &emmc;
|
||||
serial0 = &uart0;
|
||||
serial1 = &uart1;
|
||||
serial2 = &uart2;
|
||||
|
@ -136,37 +139,6 @@
|
|||
};
|
||||
};
|
||||
|
||||
amba: bus {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
dmac_peri: dma-controller@ff250000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff250000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#dma-cells = <1>;
|
||||
arm,pl330-broken-no-flushp;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC_PERI>;
|
||||
clock-names = "apb_pclk";
|
||||
};
|
||||
|
||||
dmac_bus: dma-controller@ff600000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff600000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#dma-cells = <1>;
|
||||
arm,pl330-broken-no-flushp;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC_BUS>;
|
||||
clock-names = "apb_pclk";
|
||||
};
|
||||
};
|
||||
|
||||
arm-pmu {
|
||||
compatible = "arm,armv8-pmuv3";
|
||||
interrupts = <GIC_SPI 112 IRQ_TYPE_LEVEL_HIGH>,
|
||||
|
@ -399,8 +371,20 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
dmac_peri: dma-controller@ff250000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff250000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 2 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 3 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#dma-cells = <1>;
|
||||
arm,pl330-broken-no-flushp;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC_PERI>;
|
||||
clock-names = "apb_pclk";
|
||||
};
|
||||
|
||||
thermal-zones {
|
||||
cpu {
|
||||
cpu_thermal: cpu-thermal {
|
||||
polling-delay-passive = <100>; /* milliseconds */
|
||||
polling-delay = <5000>; /* milliseconds */
|
||||
|
||||
|
@ -444,7 +428,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
gpu {
|
||||
gpu_thermal: gpu-thermal {
|
||||
polling-delay-passive = <100>; /* milliseconds */
|
||||
polling-delay = <5000>; /* milliseconds */
|
||||
|
||||
|
@ -532,6 +516,18 @@
|
|||
status = "disabled";
|
||||
};
|
||||
|
||||
dmac_bus: dma-controller@ff600000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff600000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>,
|
||||
<GIC_SPI 1 IRQ_TYPE_LEVEL_HIGH>;
|
||||
#dma-cells = <1>;
|
||||
arm,pl330-broken-no-flushp;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC_BUS>;
|
||||
clock-names = "apb_pclk";
|
||||
};
|
||||
|
||||
i2c0: i2c@ff650000 {
|
||||
compatible = "rockchip,rk3368-i2c", "rockchip,rk3288-i2c";
|
||||
reg = <0x0 0xff650000 0x0 0x1000>;
|
||||
|
|
|
@ -331,7 +331,7 @@
|
|||
|
||||
pmic {
|
||||
pmic_int_l: pmic-int-l {
|
||||
rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
|
||||
|
|
|
@ -95,6 +95,7 @@
|
|||
};
|
||||
|
||||
&pcie0 {
|
||||
ep-gpios = <&gpio2 RK_PA4 GPIO_ACTIVE_HIGH>;
|
||||
num-lanes = <4>;
|
||||
vpcie3v3-supply = <&vcc3v3_sys>;
|
||||
};
|
||||
|
|
|
@ -0,0 +1,52 @@
|
|||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* FriendlyElec NanoPi M4B board device tree source
|
||||
*
|
||||
* Copyright (c) 2020 Chen-Yu Tsai <wens@csie.org>
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "rk3399-nanopi-m4.dts"
|
||||
|
||||
/ {
|
||||
model = "FriendlyElec NanoPi M4B";
|
||||
compatible = "friendlyarm,nanopi-m4b", "rockchip,rk3399";
|
||||
|
||||
adc-keys {
|
||||
compatible = "adc-keys";
|
||||
io-channels = <&saradc 1>;
|
||||
io-channel-names = "buttons";
|
||||
keyup-threshold-microvolt = <1500000>;
|
||||
poll-interval = <100>;
|
||||
|
||||
recovery {
|
||||
label = "Recovery";
|
||||
linux,code = <KEY_VENDOR>;
|
||||
press-threshold-microvolt = <18000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* No USB type-C PD power manager */
|
||||
/delete-node/ &fusb0;
|
||||
|
||||
&i2c4 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
&u2phy0_host {
|
||||
phy-supply = <&vcc5v0_usb2>;
|
||||
};
|
||||
|
||||
&u2phy0_otg {
|
||||
phy-supply = <&vbus_typec>;
|
||||
};
|
||||
|
||||
&u2phy1_otg {
|
||||
phy-supply = <&vcc5v0_usb1>;
|
||||
};
|
||||
|
||||
&vbus_typec {
|
||||
enable-active-high;
|
||||
gpios = <&gpio4 RK_PD2 GPIO_ACTIVE_HIGH>;
|
||||
};
|
|
@ -504,7 +504,6 @@
|
|||
};
|
||||
|
||||
&pcie0 {
|
||||
ep-gpios = <&gpio2 RK_PA4 GPIO_ACTIVE_HIGH>;
|
||||
max-link-speed = <2>;
|
||||
num-lanes = <2>;
|
||||
vpcie0v9-supply = <&vcca0v9_s3>;
|
||||
|
|
|
@ -63,6 +63,20 @@
|
|||
|
||||
};
|
||||
|
||||
&cpu_alert0 {
|
||||
temperature = <65000>;
|
||||
};
|
||||
|
||||
&cpu_thermal {
|
||||
sustainable-power = <1550>;
|
||||
|
||||
cooling-maps {
|
||||
map0 {
|
||||
trip = <&cpu_alert1>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&pcie0 {
|
||||
ep-gpios = <&gpio2 RK_PA2 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
@ -125,45 +139,6 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&thermal_zones {
|
||||
cpu_thermal: cpu {
|
||||
polling-delay-passive = <100>;
|
||||
polling-delay = <1000>;
|
||||
thermal-sensors = <&tsadc 0>;
|
||||
sustainable-power = <1550>;
|
||||
|
||||
trips {
|
||||
cpu_alert0: cpu_alert0 {
|
||||
temperature = <65000>;
|
||||
hysteresis = <2000>;
|
||||
type = "passive";
|
||||
};
|
||||
|
||||
cpu_alert1: cpu_alert1 {
|
||||
temperature = <75000>;
|
||||
hysteresis = <2000>;
|
||||
type = "passive";
|
||||
};
|
||||
|
||||
cpu_crit: cpu_crit {
|
||||
temperature = <95000>;
|
||||
hysteresis = <2000>;
|
||||
type = "critical";
|
||||
};
|
||||
};
|
||||
|
||||
cooling-maps {
|
||||
map0 {
|
||||
|
||||
trip = <&cpu_alert1>;
|
||||
cooling-device =
|
||||
<&cpu_b0 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>,
|
||||
<&cpu_b1 THERMAL_NO_LIMIT THERMAL_NO_LIMIT>;
|
||||
};
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_0 {
|
||||
dr_mode = "otg";
|
||||
};
|
||||
|
|
|
@ -72,10 +72,27 @@
|
|||
|
||||
sound {
|
||||
compatible = "audio-graph-card";
|
||||
label = "rockchip,rk3399";
|
||||
label = "Analog";
|
||||
dais = <&i2s1_p0>;
|
||||
};
|
||||
|
||||
sound-dit {
|
||||
compatible = "audio-graph-card";
|
||||
label = "SPDIF";
|
||||
dais = <&spdif_p0>;
|
||||
};
|
||||
|
||||
spdif-dit {
|
||||
compatible = "linux,spdif-dit";
|
||||
#sound-dai-cells = <0>;
|
||||
|
||||
port {
|
||||
dit_p0_0: endpoint {
|
||||
remote-endpoint = <&spdif_p0_0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
vcc12v_dcin: vcc12v-dcin {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vcc12v_dcin";
|
||||
|
@ -698,6 +715,16 @@
|
|||
status = "okay";
|
||||
};
|
||||
|
||||
&spdif {
|
||||
pinctrl-0 = <&spdif_bus_1>;
|
||||
|
||||
spdif_p0: port {
|
||||
spdif_p0_0: endpoint {
|
||||
remote-endpoint = <&dit_p0_0>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&spi1 {
|
||||
status = "okay";
|
||||
|
||||
|
|
|
@ -200,35 +200,6 @@
|
|||
#clock-cells = <0>;
|
||||
};
|
||||
|
||||
amba: bus {
|
||||
compatible = "simple-bus";
|
||||
#address-cells = <2>;
|
||||
#size-cells = <2>;
|
||||
ranges;
|
||||
|
||||
dmac_bus: dma-controller@ff6d0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff6d0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
<GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
#dma-cells = <1>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC0_PERILP>;
|
||||
clock-names = "apb_pclk";
|
||||
};
|
||||
|
||||
dmac_peri: dma-controller@ff6e0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff6e0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
<GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
#dma-cells = <1>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC1_PERILP>;
|
||||
clock-names = "apb_pclk";
|
||||
};
|
||||
};
|
||||
|
||||
pcie0: pcie@f8000000 {
|
||||
compatible = "rockchip,rk3399-pcie";
|
||||
reg = <0x0 0xf8000000 0x0 0x2000000>,
|
||||
|
@ -259,8 +230,8 @@
|
|||
<&pcie_phy 2>, <&pcie_phy 3>;
|
||||
phy-names = "pcie-phy-0", "pcie-phy-1",
|
||||
"pcie-phy-2", "pcie-phy-3";
|
||||
ranges = <0x83000000 0x0 0xfa000000 0x0 0xfa000000 0x0 0x1e00000
|
||||
0x81000000 0x0 0xfbe00000 0x0 0xfbe00000 0x0 0x100000>;
|
||||
ranges = <0x83000000 0x0 0xfa000000 0x0 0xfa000000 0x0 0x1e00000>,
|
||||
<0x81000000 0x0 0xfbe00000 0x0 0xfbe00000 0x0 0x100000>;
|
||||
resets = <&cru SRST_PCIE_CORE>, <&cru SRST_PCIE_MGMT>,
|
||||
<&cru SRST_PCIE_MGMT_STICKY>, <&cru SRST_PCIE_PIPE>,
|
||||
<&cru SRST_PCIE_PM>, <&cru SRST_P_PCIE>,
|
||||
|
@ -764,7 +735,7 @@
|
|||
};
|
||||
|
||||
thermal_zones: thermal-zones {
|
||||
cpu_thermal: cpu {
|
||||
cpu_thermal: cpu-thermal {
|
||||
polling-delay-passive = <100>;
|
||||
polling-delay = <1000>;
|
||||
|
||||
|
@ -808,7 +779,7 @@
|
|||
};
|
||||
};
|
||||
|
||||
gpu_thermal: gpu {
|
||||
gpu_thermal: gpu-thermal {
|
||||
polling-delay-passive = <100>;
|
||||
polling-delay = <1000>;
|
||||
|
||||
|
@ -858,127 +829,127 @@
|
|||
};
|
||||
|
||||
qos_emmc: qos@ffa58000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa58000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_gmac: qos@ffa5c000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa5c000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_pcie: qos@ffa60080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa60080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_usb_host0: qos@ffa60100 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa60100 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_usb_host1: qos@ffa60180 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa60180 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_usb_otg0: qos@ffa70000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa70000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_usb_otg1: qos@ffa70080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa70080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_sd: qos@ffa74000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa74000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_sdioaudio: qos@ffa76000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa76000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_hdcp: qos@ffa90000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa90000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_iep: qos@ffa98000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffa98000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp0_m0: qos@ffaa0000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffaa0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp0_m1: qos@ffaa0080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffaa0080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp1_m0: qos@ffaa8000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffaa8000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_isp1_m1: qos@ffaa8080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffaa8080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_rga_r: qos@ffab0000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffab0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_rga_w: qos@ffab0080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffab0080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_video_m0: qos@ffab8000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffab8000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_video_m1_r: qos@ffac0000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffac0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_video_m1_w: qos@ffac0080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffac0080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vop_big_r: qos@ffac8000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffac8000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vop_big_w: qos@ffac8080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffac8080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_vop_little: qos@ffad0000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffad0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_perihp: qos@ffad8080 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffad8080 0x0 0x20>;
|
||||
};
|
||||
|
||||
qos_gpu: qos@ffae0000 {
|
||||
compatible = "syscon";
|
||||
compatible = "rockchip,rk3399-qos", "syscon";
|
||||
reg = <0x0 0xffae0000 0x0 0x20>;
|
||||
};
|
||||
|
||||
|
@ -1351,6 +1322,28 @@
|
|||
};
|
||||
};
|
||||
|
||||
dmac_bus: dma-controller@ff6d0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff6d0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 5 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
<GIC_SPI 6 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
#dma-cells = <1>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC0_PERILP>;
|
||||
clock-names = "apb_pclk";
|
||||
};
|
||||
|
||||
dmac_peri: dma-controller@ff6e0000 {
|
||||
compatible = "arm,pl330", "arm,primecell";
|
||||
reg = <0x0 0xff6e0000 0x0 0x4000>;
|
||||
interrupts = <GIC_SPI 7 IRQ_TYPE_LEVEL_HIGH 0>,
|
||||
<GIC_SPI 8 IRQ_TYPE_LEVEL_HIGH 0>;
|
||||
#dma-cells = <1>;
|
||||
arm,pl330-periph-burst;
|
||||
clocks = <&cru ACLK_DMAC1_PERILP>;
|
||||
clock-names = "apb_pclk";
|
||||
};
|
||||
|
||||
pmucru: pmu-clock-controller@ff750000 {
|
||||
compatible = "rockchip,rk3399-pmucru";
|
||||
reg = <0x0 0xff750000 0x0 0x1000>;
|
||||
|
|
Загрузка…
Ссылка в новой задаче