mirror of
https://github.com/hardkernel/linux.git
synced 2026-06-06 02:50:49 +09:00
arm64: dts: rockchip: add support for Firefly ROC-RK3399-PC-PLUS
ROC-RK3399-PC-PLUS is the board inside the portable Firefly Station P1 Geek PC. As a redesign after the ROC-RK3399-PC, it uses DC-12V as power input and spares a USB 3 host port. It is also equipped with a USB WiFi chip and audio codec without the mezzanine board. - Rockchip RK3399 SoC - 4GB LPDDR4 RAM - 16MB SPI-Flash - eMMC slot - TF card slot - USB 3.0 Port x 1, USB 2.0 Port x 1, TypeC Port x 1 - HDMI - Gigabit Ethernet - WiFi: RTL8723DU - Audio: ES8388 - Key: Recovery - LED: WORK, DIY - IR Signed-off-by: Kongxin Deng <dkx@t-chip.com.cn> Signed-off-by: Levin Du <djw@t-chip.com.cn> Link: https://lore.kernel.org/r/20210628035402.16812-3-djw@t-chip.com.cn Signed-off-by: Heiko Stuebner <heiko@sntech.de>
This commit is contained in:
@@ -43,6 +43,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-pinebook-pro.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-puma-haikou.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-mezzanine.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-roc-pc-plus.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-pi-4a.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-pi-4b.dtb
|
||||
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-rock-pi-4c.dtb
|
||||
|
||||
218
arch/arm64/boot/dts/rockchip/rk3399-roc-pc-plus.dts
Normal file
218
arch/arm64/boot/dts/rockchip/rk3399-roc-pc-plus.dts
Normal file
@@ -0,0 +1,218 @@
|
||||
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
||||
/*
|
||||
* Copyright (c) 2017 T-Chip Intelligent Technology Co., Ltd
|
||||
*/
|
||||
|
||||
/dts-v1/;
|
||||
#include "rk3399-roc-pc.dtsi"
|
||||
|
||||
/*
|
||||
* Notice:
|
||||
* 1. rk3399-roc-pc-plus is powered by dc_12v directly.
|
||||
* 2. rk3399-roc-pc-plus has only vcc_bus_typec0 in schematic, which is coresponding
|
||||
* to vcc_vbus_typec1 in rk3399-roc-pc.
|
||||
* For simplicity, reserve the node name of vcc_vbus_typec1.
|
||||
* 3. vcc5v0_host is actually 2 regulators (host0, 1) controlled by the same gpio.
|
||||
*/
|
||||
|
||||
/delete-node/ &fusb1;
|
||||
/delete-node/ &hub_rst;
|
||||
/delete-node/ &mp8859;
|
||||
/delete-node/ &vcc_sys_en;
|
||||
/delete-node/ &vcc_vbus_typec0;
|
||||
/delete-node/ &yellow_led;
|
||||
|
||||
/ {
|
||||
model = "Firefly ROC-RK3399-PC-PLUS Board";
|
||||
compatible = "firefly,roc-rk3399-pc-plus", "rockchip,rk3399";
|
||||
|
||||
dc_12v: dc-12v {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "dc_12v";
|
||||
regulator-always-on;
|
||||
regulator-boot-on;
|
||||
regulator-min-microvolt = <12000000>;
|
||||
regulator-max-microvolt = <12000000>;
|
||||
};
|
||||
|
||||
es8388-sound {
|
||||
compatible = "simple-audio-card";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hp_det_pin>;
|
||||
simple-audio-card,name = "rockchip,es8388-codec";
|
||||
simple-audio-card,format = "i2s";
|
||||
simple-audio-card,mclk-fs = <256>;
|
||||
simple-audio-card,widgets =
|
||||
"Microphone", "Mic Jack",
|
||||
"Headphone", "Headphones";
|
||||
simple-audio-card,routing =
|
||||
"LINPUT1", "Mic Jack",
|
||||
"Headphone Amp INL", "LOUT2",
|
||||
"Headphone Amp INR", "ROUT2",
|
||||
"Headphones", "Headphone Amp OUTL",
|
||||
"Headphones", "Headphone Amp OUTR";
|
||||
simple-audio-card,hp-det-gpio = <&gpio2 RK_PA6 GPIO_ACTIVE_HIGH>;
|
||||
simple-audio-card,aux-devs = <&headphones_amp>;
|
||||
simple-audio-card,pin-switches = "Headphones";
|
||||
|
||||
simple-audio-card,codec {
|
||||
sound-dai = <&es8388>;
|
||||
};
|
||||
|
||||
simple-audio-card,cpu {
|
||||
sound-dai = <&i2s1>;
|
||||
};
|
||||
};
|
||||
|
||||
gpio-fan {
|
||||
#cooling-cells = <2>;
|
||||
compatible = "gpio-fan";
|
||||
gpio-fan,speed-map = <0 0 3000 1>;
|
||||
gpios = <&gpio1 RK_PA1 GPIO_ACTIVE_HIGH>;
|
||||
};
|
||||
|
||||
/delete-node/ gpio-keys;
|
||||
|
||||
/* not amplifier, used as switcher only */
|
||||
headphones_amp: headphones-amp {
|
||||
compatible = "simple-audio-amplifier";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&ear_ctl_pin>;
|
||||
enable-gpios = <&gpio0 RK_PA2 GPIO_ACTIVE_HIGH>;
|
||||
sound-name-prefix = "Headphone Amp";
|
||||
VCC-supply = <&vcca3v0_codec>;
|
||||
};
|
||||
|
||||
ir-receiver {
|
||||
linux,rc-map-name = "rc-khadas";
|
||||
};
|
||||
|
||||
leds {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&work_led_pin>, <&diy_led_pin>;
|
||||
};
|
||||
};
|
||||
|
||||
&fusb0 {
|
||||
vbus-supply = <&vcc_vbus_typec1>;
|
||||
};
|
||||
|
||||
&i2c0 {
|
||||
hym8563: hym8563@51 {
|
||||
compatible = "haoyu,hym8563";
|
||||
reg = <0x51>;
|
||||
interrupt-parent = <&gpio0>;
|
||||
interrupts = <RK_PA5 IRQ_TYPE_EDGE_FALLING>;
|
||||
#clock-cells = <0>;
|
||||
clock-frequency = <32768>;
|
||||
clock-output-names = "xin32k";
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&hym8563_int>;
|
||||
};
|
||||
};
|
||||
|
||||
&i2c1 {
|
||||
es8388: es8388@11 {
|
||||
compatible = "everest,es8388";
|
||||
reg = <0x11>;
|
||||
clock-names = "mclk";
|
||||
clocks = <&cru SCLK_I2S_8CH_OUT>;
|
||||
#sound-dai-cells = <0>;
|
||||
};
|
||||
};
|
||||
|
||||
/* <4 RK_PA0 1 &pcfg_pull_none> is used as i2s_8ch_mclk_pin */
|
||||
&i2s0_8ch_bus {
|
||||
rockchip,pins =
|
||||
<3 RK_PD0 1 &pcfg_pull_none>,
|
||||
<3 RK_PD1 1 &pcfg_pull_none>,
|
||||
<3 RK_PD2 1 &pcfg_pull_none>,
|
||||
<3 RK_PD3 1 &pcfg_pull_none>,
|
||||
<3 RK_PD4 1 &pcfg_pull_none>,
|
||||
<3 RK_PD5 1 &pcfg_pull_none>,
|
||||
<3 RK_PD6 1 &pcfg_pull_none>,
|
||||
<3 RK_PD7 1 &pcfg_pull_none>;
|
||||
};
|
||||
|
||||
&i2s1 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&i2s_8ch_mclk_pin>, <&i2s1_2ch_bus>;
|
||||
rockchip,playback-channels = <2>;
|
||||
rockchip,capture-channels = <2>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&pinctrl {
|
||||
es8388 {
|
||||
ear_ctl_pin: ear-ctl-pin {
|
||||
rockchip,pins = <0 RK_PA2 RK_FUNC_GPIO &pcfg_output_high>;
|
||||
};
|
||||
|
||||
hp_det_pin: hp-det-pin {
|
||||
rockchip,pins = <2 RK_PA6 RK_FUNC_GPIO &pcfg_pull_down>;
|
||||
};
|
||||
};
|
||||
|
||||
hym8563 {
|
||||
hym8563_int: hym8563-int {
|
||||
rockchip,pins = <0 RK_PA5 RK_FUNC_GPIO &pcfg_pull_up>;
|
||||
};
|
||||
};
|
||||
|
||||
i2s1 {
|
||||
i2s_8ch_mclk_pin: i2s-8ch-mclk-pin {
|
||||
rockchip,pins = <4 RK_PA0 1 &pcfg_pull_none>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
&u2phy0 {
|
||||
status = "okay";
|
||||
|
||||
u2phy0_otg: otg-port {
|
||||
phy-supply = <&vcc_vbus_typec1>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
u2phy0_host: host-port {
|
||||
phy-supply = <&vcc5v0_host>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&u2phy1 {
|
||||
status = "okay";
|
||||
|
||||
u2phy1_otg: otg-port {
|
||||
phy-supply = <&vcc5v0_host>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
u2phy1_host: host-port {
|
||||
phy-supply = <&vcc5v0_host>;
|
||||
status = "okay";
|
||||
};
|
||||
};
|
||||
|
||||
&uart0 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_0 {
|
||||
dr_mode = "host";
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
&vcc_sys {
|
||||
/* vcc_sys is fixed, not controlled by any gpio */
|
||||
/delete-property/ gpio;
|
||||
/delete-property/ pinctrl-names;
|
||||
/delete-property/ pinctrl-0;
|
||||
};
|
||||
|
||||
&vcc5v0_host {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&vcc5v0_host_en>;
|
||||
};
|
||||
Reference in New Issue
Block a user