3069 lines
90 KiB
Diff
3069 lines
90 KiB
Diff
From 93de290d002cac9222e016bb48d282b35c689353 Mon Sep 17 00:00:00 2001
|
|
From: Robin Murphy <robin.murphy@arm.com>
|
|
Date: Mon, 26 Oct 2020 11:17:20 +0000
|
|
Subject: [PATCH] clk: rockchip: Add appropriate arch dependencies
|
|
|
|
There's no point offering support for 32-bit platforms to users
|
|
configuring a 64-bit kernel - and vice-versa - unless they are
|
|
explicitly interested in compile-testing.
|
|
|
|
Signed-off-by: Robin Murphy <robin.murphy@arm.com>
|
|
Link: https://lore.kernel.org/r/72abb0f794b8ed77e274e8ee21c22e0bd3223dfd.1603710913.git.robin.murphy@arm.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
drivers/clk/rockchip/Kconfig | 12 +++++++++++-
|
|
1 file changed, 11 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/drivers/clk/rockchip/Kconfig b/drivers/clk/rockchip/Kconfig
|
|
index 47cd6c5de837..effd05032e85 100644
|
|
--- a/drivers/clk/rockchip/Kconfig
|
|
+++ b/drivers/clk/rockchip/Kconfig
|
|
@@ -11,67 +11,77 @@ config COMMON_CLK_ROCKCHIP
|
|
if COMMON_CLK_ROCKCHIP
|
|
config CLK_PX30
|
|
bool "Rockchip PX30 clock controller support"
|
|
+ depends on (ARM64 || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for PX30 Clock Driver.
|
|
|
|
config CLK_RV110X
|
|
bool "Rockchip RV110x clock controller support"
|
|
+ depends on (ARM || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RV110x Clock Driver.
|
|
|
|
config CLK_RK3036
|
|
bool "Rockchip RK3036 clock controller support"
|
|
+ depends on (ARM || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK3036 Clock Driver.
|
|
|
|
config CLK_RK312X
|
|
bool "Rockchip RK312x clock controller support"
|
|
+ depends on (ARM || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK312x Clock Driver.
|
|
|
|
config CLK_RK3188
|
|
bool "Rockchip RK3188 clock controller support"
|
|
+ depends on (ARM || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK3188 Clock Driver.
|
|
|
|
config CLK_RK322X
|
|
bool "Rockchip RK322x clock controller support"
|
|
+ depends on (ARM || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK322x Clock Driver.
|
|
|
|
config CLK_RK3288
|
|
bool "Rockchip RK3288 clock controller support"
|
|
- depends on ARM
|
|
+ depends on (ARM || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK3288 Clock Driver.
|
|
|
|
config CLK_RK3308
|
|
bool "Rockchip RK3308 clock controller support"
|
|
+ depends on (ARM64 || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK3308 Clock Driver.
|
|
|
|
config CLK_RK3328
|
|
bool "Rockchip RK3328 clock controller support"
|
|
+ depends on (ARM64 || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK3328 Clock Driver.
|
|
|
|
config CLK_RK3368
|
|
bool "Rockchip RK3368 clock controller support"
|
|
+ depends on (ARM64 || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK3368 Clock Driver.
|
|
|
|
config CLK_RK3399
|
|
tristate "Rockchip RK3399 clock controller support"
|
|
+ depends on (ARM64 || COMPILE_TEST)
|
|
default y
|
|
help
|
|
Build the driver for RK3399 Clock Driver.
|
|
|
|
From df8307c7c4dcf0bcf76f69a5c6b8ecb47c566de3 Mon Sep 17 00:00:00 2001
|
|
From: Xu Wang <vulab@iscas.ac.cn>
|
|
Date: Fri, 27 Nov 2020 09:05:51 +0000
|
|
Subject: [PATCH] clk: rockchip: Remove redundant null check before
|
|
clk_prepare_enable
|
|
|
|
Because clk_prepare_enable() already checked NULL clock parameter,
|
|
so the additional check is unnecessary, just remove it.
|
|
|
|
Signed-off-by: Xu Wang <vulab@iscas.ac.cn>
|
|
Acked-by: Stephen Boyd <sboyd@kernel.org>
|
|
Link: https://lore.kernel.org/r/20201127090551.50254-1-vulab@iscas.ac.cn
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
drivers/clk/rockchip/clk.c | 3 +--
|
|
1 file changed, 1 insertion(+), 2 deletions(-)
|
|
|
|
diff --git a/drivers/clk/rockchip/clk.c b/drivers/clk/rockchip/clk.c
|
|
index b443169dd408..336481bc6cc7 100644
|
|
--- a/drivers/clk/rockchip/clk.c
|
|
+++ b/drivers/clk/rockchip/clk.c
|
|
@@ -603,8 +603,7 @@ void rockchip_clk_protect_critical(const char *const clocks[],
|
|
for (i = 0; i < nclocks; i++) {
|
|
struct clk *clk = __clk_lookup(clocks[i]);
|
|
|
|
- if (clk)
|
|
- clk_prepare_enable(clk);
|
|
+ clk_prepare_enable(clk);
|
|
}
|
|
}
|
|
EXPORT_SYMBOL_GPL(rockchip_clk_protect_critical);
|
|
|
|
From 57cf1e01e2ed0c872497e718bce48b98a06ccb1d Mon Sep 17 00:00:00 2001
|
|
From: Johan Jonker <jbx6244@gmail.com>
|
|
Date: Wed, 18 Nov 2020 14:58:16 +0100
|
|
Subject: [PATCH] clk: rockchip: add CLK_SET_RATE_PARENT to sclk for rk3066a
|
|
i2s and uart clocks
|
|
|
|
Add CLK_SET_RATE_PARENT to sclk for rk3066a i2s and uart clocks,
|
|
so that the parent COMPOSITE_FRACMUX and COMPOSITE_NOMUX
|
|
also update.
|
|
|
|
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
|
|
Link: https://lore.kernel.org/r/20201118135822.9582-2-jbx6244@gmail.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
drivers/clk/rockchip/clk-rk3188.c | 28 ++++++++++++++--------------
|
|
1 file changed, 14 insertions(+), 14 deletions(-)
|
|
|
|
diff --git a/drivers/clk/rockchip/clk-rk3188.c b/drivers/clk/rockchip/clk-rk3188.c
|
|
index 730020fcc7fe..db8c588139de 100644
|
|
--- a/drivers/clk/rockchip/clk-rk3188.c
|
|
+++ b/drivers/clk/rockchip/clk-rk3188.c
|
|
@@ -255,19 +255,19 @@ static struct rockchip_clk_branch common_spdif_fracmux __initdata =
|
|
RK2928_CLKSEL_CON(5), 8, 2, MFLAGS);
|
|
|
|
static struct rockchip_clk_branch common_uart0_fracmux __initdata =
|
|
- MUX(SCLK_UART0, "sclk_uart0", mux_sclk_uart0_p, 0,
|
|
+ MUX(SCLK_UART0, "sclk_uart0", mux_sclk_uart0_p, CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(13), 8, 2, MFLAGS);
|
|
|
|
static struct rockchip_clk_branch common_uart1_fracmux __initdata =
|
|
- MUX(SCLK_UART1, "sclk_uart1", mux_sclk_uart1_p, 0,
|
|
+ MUX(SCLK_UART1, "sclk_uart1", mux_sclk_uart1_p, CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(14), 8, 2, MFLAGS);
|
|
|
|
static struct rockchip_clk_branch common_uart2_fracmux __initdata =
|
|
- MUX(SCLK_UART2, "sclk_uart2", mux_sclk_uart2_p, 0,
|
|
+ MUX(SCLK_UART2, "sclk_uart2", mux_sclk_uart2_p, CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(15), 8, 2, MFLAGS);
|
|
|
|
static struct rockchip_clk_branch common_uart3_fracmux __initdata =
|
|
- MUX(SCLK_UART3, "sclk_uart3", mux_sclk_uart3_p, 0,
|
|
+ MUX(SCLK_UART3, "sclk_uart3", mux_sclk_uart3_p, CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(16), 8, 2, MFLAGS);
|
|
|
|
static struct rockchip_clk_branch common_clk_branches[] __initdata = {
|
|
@@ -408,28 +408,28 @@ static struct rockchip_clk_branch common_clk_branches[] __initdata = {
|
|
COMPOSITE_NOMUX(0, "uart0_pre", "uart_src", 0,
|
|
RK2928_CLKSEL_CON(13), 0, 7, DFLAGS,
|
|
RK2928_CLKGATE_CON(1), 8, GFLAGS),
|
|
- COMPOSITE_FRACMUX(0, "uart0_frac", "uart0_pre", 0,
|
|
+ COMPOSITE_FRACMUX(0, "uart0_frac", "uart0_pre", CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(17), 0,
|
|
RK2928_CLKGATE_CON(1), 9, GFLAGS,
|
|
&common_uart0_fracmux),
|
|
COMPOSITE_NOMUX(0, "uart1_pre", "uart_src", 0,
|
|
RK2928_CLKSEL_CON(14), 0, 7, DFLAGS,
|
|
RK2928_CLKGATE_CON(1), 10, GFLAGS),
|
|
- COMPOSITE_FRACMUX(0, "uart1_frac", "uart1_pre", 0,
|
|
+ COMPOSITE_FRACMUX(0, "uart1_frac", "uart1_pre", CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(18), 0,
|
|
RK2928_CLKGATE_CON(1), 11, GFLAGS,
|
|
&common_uart1_fracmux),
|
|
COMPOSITE_NOMUX(0, "uart2_pre", "uart_src", 0,
|
|
RK2928_CLKSEL_CON(15), 0, 7, DFLAGS,
|
|
RK2928_CLKGATE_CON(1), 12, GFLAGS),
|
|
- COMPOSITE_FRACMUX(0, "uart2_frac", "uart2_pre", 0,
|
|
+ COMPOSITE_FRACMUX(0, "uart2_frac", "uart2_pre", CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(19), 0,
|
|
RK2928_CLKGATE_CON(1), 13, GFLAGS,
|
|
&common_uart2_fracmux),
|
|
COMPOSITE_NOMUX(0, "uart3_pre", "uart_src", 0,
|
|
RK2928_CLKSEL_CON(16), 0, 7, DFLAGS,
|
|
RK2928_CLKGATE_CON(1), 14, GFLAGS),
|
|
- COMPOSITE_FRACMUX(0, "uart3_frac", "uart3_pre", 0,
|
|
+ COMPOSITE_FRACMUX(0, "uart3_frac", "uart3_pre", CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(20), 0,
|
|
RK2928_CLKGATE_CON(1), 15, GFLAGS,
|
|
&common_uart3_fracmux),
|
|
@@ -543,15 +543,15 @@ static struct clk_div_table div_aclk_cpu_t[] = {
|
|
};
|
|
|
|
static struct rockchip_clk_branch rk3066a_i2s0_fracmux __initdata =
|
|
- MUX(SCLK_I2S0, "sclk_i2s0", mux_sclk_i2s0_p, 0,
|
|
+ MUX(SCLK_I2S0, "sclk_i2s0", mux_sclk_i2s0_p, CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(2), 8, 2, MFLAGS);
|
|
|
|
static struct rockchip_clk_branch rk3066a_i2s1_fracmux __initdata =
|
|
- MUX(SCLK_I2S1, "sclk_i2s1", mux_sclk_i2s1_p, 0,
|
|
+ MUX(SCLK_I2S1, "sclk_i2s1", mux_sclk_i2s1_p, CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(3), 8, 2, MFLAGS);
|
|
|
|
static struct rockchip_clk_branch rk3066a_i2s2_fracmux __initdata =
|
|
- MUX(SCLK_I2S2, "sclk_i2s2", mux_sclk_i2s2_p, 0,
|
|
+ MUX(SCLK_I2S2, "sclk_i2s2", mux_sclk_i2s2_p, CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(4), 8, 2, MFLAGS);
|
|
|
|
static struct rockchip_clk_branch rk3066a_clk_branches[] __initdata = {
|
|
@@ -615,21 +615,21 @@ static struct rockchip_clk_branch rk3066a_clk_branches[] __initdata = {
|
|
COMPOSITE_NOMUX(0, "i2s0_pre", "i2s_src", 0,
|
|
RK2928_CLKSEL_CON(2), 0, 7, DFLAGS,
|
|
RK2928_CLKGATE_CON(0), 7, GFLAGS),
|
|
- COMPOSITE_FRACMUX(0, "i2s0_frac", "i2s0_pre", 0,
|
|
+ COMPOSITE_FRACMUX(0, "i2s0_frac", "i2s0_pre", CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(6), 0,
|
|
RK2928_CLKGATE_CON(0), 8, GFLAGS,
|
|
&rk3066a_i2s0_fracmux),
|
|
COMPOSITE_NOMUX(0, "i2s1_pre", "i2s_src", 0,
|
|
RK2928_CLKSEL_CON(3), 0, 7, DFLAGS,
|
|
RK2928_CLKGATE_CON(0), 9, GFLAGS),
|
|
- COMPOSITE_FRACMUX(0, "i2s1_frac", "i2s1_pre", 0,
|
|
+ COMPOSITE_FRACMUX(0, "i2s1_frac", "i2s1_pre", CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(7), 0,
|
|
RK2928_CLKGATE_CON(0), 10, GFLAGS,
|
|
&rk3066a_i2s1_fracmux),
|
|
COMPOSITE_NOMUX(0, "i2s2_pre", "i2s_src", 0,
|
|
RK2928_CLKSEL_CON(4), 0, 7, DFLAGS,
|
|
RK2928_CLKGATE_CON(0), 11, GFLAGS),
|
|
- COMPOSITE_FRACMUX(0, "i2s2_frac", "i2s2_pre", 0,
|
|
+ COMPOSITE_FRACMUX(0, "i2s2_frac", "i2s2_pre", CLK_SET_RATE_PARENT,
|
|
RK2928_CLKSEL_CON(8), 0,
|
|
RK2928_CLKGATE_CON(0), 12, GFLAGS,
|
|
&rk3066a_i2s2_fracmux),
|
|
|
|
From c5be4065b3fb2d42db4e7d6d95423511dfffa596 Mon Sep 17 00:00:00 2001
|
|
From: Johan Jonker <jbx6244@gmail.com>
|
|
Date: Wed, 18 Nov 2020 14:58:17 +0100
|
|
Subject: [PATCH] clk: rockchip: fix i2s gate bits on rk3066 and rk3188
|
|
|
|
The Rockchip PX2/RK3066 uses these bits in CRU_CLKGATE7_CON:
|
|
|
|
hclk_i2s_8ch_gate_en bit 4 (dtsi: i2s0)
|
|
hclk_i2s0_2ch_gate_en bit 2 (dtsi: i2s1)
|
|
hclk_i2s1_2ch_gate_en bit 3 (dtsi: i2s2)
|
|
|
|
The Rockchip PX3/RK3188 uses this bit in CRU_CLKGATE7_CON:
|
|
|
|
hclk_i2s_2ch_gate_en bit 2 (dtsi: i2s0)
|
|
|
|
The bits got somehow mixed up in the clk-rk3188.c file.
|
|
The labels in the dtsi files are not suppose to change.
|
|
The sclk and hclk names should match for
|
|
"trace_event=clk_disable,clk_enable",
|
|
so remove GATE HCLK_I2S0 from the common clock tree and
|
|
fix the bits in the rk3066 and rk3188 clock tree.
|
|
|
|
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
|
|
Link: https://lore.kernel.org/r/20201118135822.9582-3-jbx6244@gmail.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
drivers/clk/rockchip/clk-rk3188.c | 7 ++++---
|
|
1 file changed, 4 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/drivers/clk/rockchip/clk-rk3188.c b/drivers/clk/rockchip/clk-rk3188.c
|
|
index db8c588139de..0b76ad34de00 100644
|
|
--- a/drivers/clk/rockchip/clk-rk3188.c
|
|
+++ b/drivers/clk/rockchip/clk-rk3188.c
|
|
@@ -449,7 +449,6 @@ static struct rockchip_clk_branch common_clk_branches[] __initdata = {
|
|
|
|
/* hclk_cpu gates */
|
|
GATE(HCLK_ROM, "hclk_rom", "hclk_cpu", 0, RK2928_CLKGATE_CON(5), 6, GFLAGS),
|
|
- GATE(HCLK_I2S0, "hclk_i2s0", "hclk_cpu", 0, RK2928_CLKGATE_CON(7), 2, GFLAGS),
|
|
GATE(HCLK_SPDIF, "hclk_spdif", "hclk_cpu", 0, RK2928_CLKGATE_CON(7), 1, GFLAGS),
|
|
GATE(0, "hclk_cpubus", "hclk_cpu", 0, RK2928_CLKGATE_CON(4), 8, GFLAGS),
|
|
/* hclk_ahb2apb is part of a clk branch */
|
|
@@ -634,8 +633,9 @@ static struct rockchip_clk_branch rk3066a_clk_branches[] __initdata = {
|
|
RK2928_CLKGATE_CON(0), 12, GFLAGS,
|
|
&rk3066a_i2s2_fracmux),
|
|
|
|
- GATE(HCLK_I2S1, "hclk_i2s1", "hclk_cpu", 0, RK2928_CLKGATE_CON(7), 3, GFLAGS),
|
|
- GATE(HCLK_I2S2, "hclk_i2s2", "hclk_cpu", 0, RK2928_CLKGATE_CON(7), 4, GFLAGS),
|
|
+ GATE(HCLK_I2S0, "hclk_i2s0", "hclk_cpu", 0, RK2928_CLKGATE_CON(7), 4, GFLAGS),
|
|
+ GATE(HCLK_I2S1, "hclk_i2s1", "hclk_cpu", 0, RK2928_CLKGATE_CON(7), 2, GFLAGS),
|
|
+ GATE(HCLK_I2S2, "hclk_i2s2", "hclk_cpu", 0, RK2928_CLKGATE_CON(7), 3, GFLAGS),
|
|
GATE(HCLK_CIF1, "hclk_cif1", "hclk_cpu", 0, RK2928_CLKGATE_CON(6), 6, GFLAGS),
|
|
GATE(HCLK_HDMI, "hclk_hdmi", "hclk_cpu", 0, RK2928_CLKGATE_CON(4), 14, GFLAGS),
|
|
|
|
@@ -728,6 +728,7 @@ static struct rockchip_clk_branch rk3188_clk_branches[] __initdata = {
|
|
RK2928_CLKGATE_CON(0), 10, GFLAGS,
|
|
&rk3188_i2s0_fracmux),
|
|
|
|
+ GATE(HCLK_I2S0, "hclk_i2s0", "hclk_cpu", 0, RK2928_CLKGATE_CON(7), 2, GFLAGS),
|
|
GATE(0, "hclk_imem0", "hclk_cpu", 0, RK2928_CLKGATE_CON(4), 14, GFLAGS),
|
|
GATE(0, "hclk_imem1", "hclk_cpu", 0, RK2928_CLKGATE_CON(4), 15, GFLAGS),
|
|
|
|
|
|
From bd1838a094e5113fd1c7d8c3d5e36ec49f614f08 Mon Sep 17 00:00:00 2001
|
|
From: Alexandru Stan <amstan@chromium.org>
|
|
Date: Wed, 21 Oct 2020 22:04:43 -0700
|
|
Subject: [PATCH] ARM: dts: rockchip: Remove 0 point from brightness-levels on
|
|
rk3288-veyron
|
|
|
|
The extra 0 only adds one point in the userspace visible range,
|
|
so this change is almost a noop with the current driver behavior.
|
|
|
|
We don't need the 0% point, userspace seems to handle this just fine
|
|
because it uses the bl_power property to turn off the display.
|
|
|
|
Furthermore after adding "backlight: pwm_bl: Fix interpolation" patch,
|
|
the backlight interpolation will work a little differently. So we need
|
|
to preemptively remove the 0-3 segment since otherwise we would have a
|
|
252 long interpolation that would slowly go between 0 and 3, looking
|
|
really bad in userspace. So it's almost a noop/cleanup now, but it will
|
|
be required in the future.
|
|
|
|
Signed-off-by: Alexandru Stan <amstan@chromium.org>
|
|
Reviewed-by: Douglas Anderson <dianders@chromium.org>
|
|
Acked-by: Daniel Thompson <daniel.thompson@linaro.org>
|
|
Link: https://lore.kernel.org/r/20201021220404.v3.1.I96b8d872ec51171f19274e43e96cadc092881271@changeid
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm/boot/dts/rk3288-veyron-jaq.dts | 2 +-
|
|
arch/arm/boot/dts/rk3288-veyron-minnie.dts | 2 +-
|
|
arch/arm/boot/dts/rk3288-veyron-tiger.dts | 2 +-
|
|
3 files changed, 3 insertions(+), 3 deletions(-)
|
|
|
|
diff --git a/arch/arm/boot/dts/rk3288-veyron-jaq.dts b/arch/arm/boot/dts/rk3288-veyron-jaq.dts
|
|
index af77ab20586d..4a148cf1defc 100644
|
|
--- a/arch/arm/boot/dts/rk3288-veyron-jaq.dts
|
|
+++ b/arch/arm/boot/dts/rk3288-veyron-jaq.dts
|
|
@@ -20,7 +20,7 @@ / {
|
|
|
|
&backlight {
|
|
/* Jaq panel PWM must be >= 3%, so start non-zero brightness at 8 */
|
|
- brightness-levels = <0 8 255>;
|
|
+ brightness-levels = <8 255>;
|
|
num-interpolated-steps = <247>;
|
|
};
|
|
|
|
diff --git a/arch/arm/boot/dts/rk3288-veyron-minnie.dts b/arch/arm/boot/dts/rk3288-veyron-minnie.dts
|
|
index f8b69e0a16a0..82fc6fba9999 100644
|
|
--- a/arch/arm/boot/dts/rk3288-veyron-minnie.dts
|
|
+++ b/arch/arm/boot/dts/rk3288-veyron-minnie.dts
|
|
@@ -39,7 +39,7 @@ volum_up {
|
|
|
|
&backlight {
|
|
/* Minnie panel PWM must be >= 1%, so start non-zero brightness at 3 */
|
|
- brightness-levels = <0 3 255>;
|
|
+ brightness-levels = <3 255>;
|
|
num-interpolated-steps = <252>;
|
|
};
|
|
|
|
diff --git a/arch/arm/boot/dts/rk3288-veyron-tiger.dts b/arch/arm/boot/dts/rk3288-veyron-tiger.dts
|
|
index 069f0c2c1fdf..52a84cbe7a90 100644
|
|
--- a/arch/arm/boot/dts/rk3288-veyron-tiger.dts
|
|
+++ b/arch/arm/boot/dts/rk3288-veyron-tiger.dts
|
|
@@ -23,7 +23,7 @@ / {
|
|
|
|
&backlight {
|
|
/* Tiger panel PWM must be >= 1%, so start non-zero brightness at 3 */
|
|
- brightness-levels = <0 3 255>;
|
|
+ brightness-levels = <3 255>;
|
|
num-interpolated-steps = <252>;
|
|
};
|
|
|
|
|
|
From 96e1b41524b9c3cb8b9d450521ad30b938859a31 Mon Sep 17 00:00:00 2001
|
|
From: Johan Jonker <jbx6244@gmail.com>
|
|
Date: Mon, 16 Nov 2020 16:07:56 +0100
|
|
Subject: [PATCH] ARM: dts: rockchip: rename wdt nodename to watchdog on rv1108
|
|
|
|
A test with the command below gives for example this error:
|
|
|
|
/arch/arm/boot/dts/rv1108-evb.dt.yaml:
|
|
wdt@10360000: $nodename:0: 'wdt@10360000'
|
|
does not match '^watchdog(@.*|-[0-9a-f])?$'
|
|
|
|
Fix it by renaming the wdt nodename to watchdog
|
|
in the rv1108.dtsi file.
|
|
|
|
make ARCH=arm dtbs_check
|
|
DT_SCHEMA_FILES=Documentation/devicetree/bindings/watchdog/snps,dw-wdt.yaml
|
|
|
|
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
|
|
Link: https://lore.kernel.org/r/20201116150756.14265-1-jbx6244@gmail.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm/boot/dts/rv1108.dtsi | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/arch/arm/boot/dts/rv1108.dtsi b/arch/arm/boot/dts/rv1108.dtsi
|
|
index a1a08cb9364e..e491964b1c3d 100644
|
|
--- a/arch/arm/boot/dts/rv1108.dtsi
|
|
+++ b/arch/arm/boot/dts/rv1108.dtsi
|
|
@@ -299,7 +299,7 @@ timer: timer@10350000 {
|
|
clock-names = "timer", "pclk";
|
|
};
|
|
|
|
- watchdog: wdt@10360000 {
|
|
+ watchdog: watchdog@10360000 {
|
|
compatible = "snps,dw-wdt";
|
|
reg = <0x10360000 0x100>;
|
|
interrupts = <GIC_SPI 34 IRQ_TYPE_LEVEL_HIGH>;
|
|
|
|
From f15b2a03cbc0cbfd08b0b543b7c273a6d753e631 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Mon, 30 Nov 2020 14:28:14 +0100
|
|
Subject: [PATCH] ARM: dts: rockchip: Add rtc node for VMARC SOM
|
|
|
|
Add the hym8563 rtc found on the rk3288 variant of the VMARC SOM.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201023181814.220974-2-jagan@amarulasolutions.com
|
|
[split out of the original patch, as it was a change unrelated
|
|
to the commit description]
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm/boot/dts/rk3288-vmarc-som.dtsi | 23 +++++++++++++++++++++++
|
|
1 file changed, 23 insertions(+)
|
|
|
|
diff --git a/arch/arm/boot/dts/rk3288-vmarc-som.dtsi b/arch/arm/boot/dts/rk3288-vmarc-som.dtsi
|
|
index 4a373f5aa600..da80bfd5f2d5 100644
|
|
--- a/arch/arm/boot/dts/rk3288-vmarc-som.dtsi
|
|
+++ b/arch/arm/boot/dts/rk3288-vmarc-som.dtsi
|
|
@@ -231,6 +231,23 @@ regulator-state-mem {
|
|
};
|
|
};
|
|
|
|
+&i2c1 {
|
|
+ clock-frequency = <400000>;
|
|
+ status = "okay";
|
|
+
|
|
+ hym8563: rtc@51 {
|
|
+ compatible = "haoyu,hym8563";
|
|
+ reg = <0x51>;
|
|
+ interrupt-parent = <&gpio5>;
|
|
+ interrupts = <RK_PC3 IRQ_TYPE_LEVEL_LOW>;
|
|
+ #clock-cells = <0>;
|
|
+ clock-frequency = <32768>;
|
|
+ clock-output-names = "hym8563";
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&hym8563_int>;
|
|
+ };
|
|
+};
|
|
+
|
|
&i2c5 {
|
|
status = "okay";
|
|
};
|
|
@@ -245,6 +262,12 @@ &io_domains {
|
|
};
|
|
|
|
&pinctrl {
|
|
+ hym8563 {
|
|
+ hym8563_int: hym8563-int {
|
|
+ rockchip,pins = <5 RK_PC3 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
+ };
|
|
+ };
|
|
+
|
|
pcfg_pull_none_drv_8ma: pcfg-pull-none-drv-8ma {
|
|
drive-strength = <8>;
|
|
};
|
|
|
|
From 1de943bc8e6bf152225132d3b567fadc8bc2ff33 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Fri, 23 Oct 2020 23:48:14 +0530
|
|
Subject: [PATCH] ARM: dts: rockchip: Add SDIO0 node for VMARC SOM
|
|
|
|
Rockchip RK3288 and RK3399Pro based VMARC SOM has sdio0 for
|
|
connecting WiFi/BT devices as a pluggable card via M.2 E-Key.
|
|
|
|
Add associated sdio0 nodes, properties.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201023181814.220974-2-jagan@amarulasolutions.com
|
|
[moved the unrelated rtc addition to a separate patch]
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm/boot/dts/rk3288-vmarc-som.dtsi | 17 +++++++++++++++
|
|
.../dts/rockchip-radxa-dalang-carrier.dtsi | 21 +++++++++++++++++++
|
|
.../dts/rockchip/rk3399pro-vmarc-som.dtsi | 16 ++++++++++++++
|
|
3 files changed, 54 insertions(+)
|
|
|
|
diff --git a/arch/arm/boot/dts/rk3288-vmarc-som.dtsi b/arch/arm/boot/dts/rk3288-vmarc-som.dtsi
|
|
index da80bfd5f2d5..0ae2bd150e37 100644
|
|
--- a/arch/arm/boot/dts/rk3288-vmarc-som.dtsi
|
|
+++ b/arch/arm/boot/dts/rk3288-vmarc-som.dtsi
|
|
@@ -258,6 +258,7 @@ &io_domains {
|
|
gpio1830-supply = <&vcc_18>;
|
|
gpio30-supply = <&vcc_io>;
|
|
sdcard-supply = <&vccio_sd>;
|
|
+ wifi-supply = <&vcc_wl>;
|
|
status = "okay";
|
|
};
|
|
|
|
@@ -283,6 +284,12 @@ pmic_int: pmic-int {
|
|
};
|
|
};
|
|
|
|
+ sdio-pwrseq {
|
|
+ wifi_enable_h: wifi-enable-h {
|
|
+ rockchip,pins = <4 RK_PD4 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
+ };
|
|
+ };
|
|
+
|
|
sdmmc {
|
|
sdmmc_bus4: sdmmc-bus4 {
|
|
rockchip,pins =
|
|
@@ -314,6 +321,16 @@ usb0_en_oc: usb0-en-oc {
|
|
};
|
|
};
|
|
|
|
+&sdio_pwrseq {
|
|
+ /*
|
|
+ * On the module itself this is one of these (depending
|
|
+ * on the actual card populated):
|
|
+ * - SDIO_RESET_L_WL_REG_ON
|
|
+ * - PDN (power down when low)
|
|
+ */
|
|
+ reset-gpios = <&gpio4 RK_PD4 GPIO_ACTIVE_LOW>; /* WIFI_REG_ON */
|
|
+};
|
|
+
|
|
&usbphy {
|
|
status = "okay";
|
|
};
|
|
diff --git a/arch/arm/boot/dts/rockchip-radxa-dalang-carrier.dtsi b/arch/arm/boot/dts/rockchip-radxa-dalang-carrier.dtsi
|
|
index 26b53eac4706..da1d548b7330 100644
|
|
--- a/arch/arm/boot/dts/rockchip-radxa-dalang-carrier.dtsi
|
|
+++ b/arch/arm/boot/dts/rockchip-radxa-dalang-carrier.dtsi
|
|
@@ -15,6 +15,14 @@ clkin_gmac: external-gmac-clock {
|
|
#clock-cells = <0>;
|
|
};
|
|
|
|
+ sdio_pwrseq: sdio-pwrseq {
|
|
+ compatible = "mmc-pwrseq-simple";
|
|
+ clocks = <&hym8563>;
|
|
+ clock-names = "ext_clock";
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&wifi_enable_h>;
|
|
+ };
|
|
+
|
|
vcc12v_dcin: vcc12v-dcin-regulator {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc12v_dcin";
|
|
@@ -78,6 +86,19 @@ &pwm2 {
|
|
status = "okay";
|
|
};
|
|
|
|
+&sdio0 {
|
|
+ bus-width = <4>;
|
|
+ cap-sd-highspeed;
|
|
+ cap-sdio-irq;
|
|
+ keep-power-in-suspend;
|
|
+ mmc-pwrseq = <&sdio_pwrseq>;
|
|
+ non-removable;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&sdio0_bus4 &sdio0_cmd &sdio0_clk>;
|
|
+ sd-uhs-sdr104;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&sdmmc {
|
|
bus-width = <4>;
|
|
cap-mmc-highspeed;
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi b/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi
|
|
index 5d087be04af8..7257494d2831 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399pro-vmarc-som.dtsi
|
|
@@ -353,6 +353,12 @@ pmic_int_l: pmic-int-l {
|
|
};
|
|
};
|
|
|
|
+ sdio-pwrseq {
|
|
+ wifi_enable_h: wifi-enable-h {
|
|
+ rockchip,pins = <2 RK_PD3 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
+ };
|
|
+ };
|
|
+
|
|
vbus_host {
|
|
usb1_en_oc: usb1-en-oc {
|
|
rockchip,pins = <4 RK_PD1 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
@@ -371,6 +377,16 @@ &pmu_io_domains {
|
|
pmu1830-supply = <&vcc_1v8>;
|
|
};
|
|
|
|
+&sdio_pwrseq {
|
|
+ /*
|
|
+ * On the module itself this is one of these (depending
|
|
+ * on the actual card populated):
|
|
+ * - SDIO_RESET_L_WL_REG_ON
|
|
+ * - PDN (power down when low)
|
|
+ */
|
|
+ reset-gpios = <&gpio2 RK_PD3 GPIO_ACTIVE_LOW>;
|
|
+};
|
|
+
|
|
&sdhci {
|
|
bus-width = <8>;
|
|
mmc-hs400-1_8v;
|
|
|
|
From 305d5bd60f58e8cd6dfab32816d12d02e2abc588 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:15 +0530
|
|
Subject: [PATCH] arm64: defconfig: Enable ROCKCHIP_LVDS
|
|
|
|
Now, some of the rockchip hardware platforms do enable
|
|
lvds in mainline tree.
|
|
|
|
So, enable Rockchip LVDS driver via default defconfig.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-8-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/configs/defconfig | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
|
|
index 5cfe3cf6f2ac..3ebba7dcb98f 100644
|
|
--- a/arch/arm64/configs/defconfig
|
|
+++ b/arch/arm64/configs/defconfig
|
|
@@ -646,6 +646,7 @@ CONFIG_ROCKCHIP_CDN_DP=y
|
|
CONFIG_ROCKCHIP_DW_HDMI=y
|
|
CONFIG_ROCKCHIP_DW_MIPI_DSI=y
|
|
CONFIG_ROCKCHIP_INNO_HDMI=y
|
|
+CONFIG_ROCKCHIP_LVDS=y
|
|
CONFIG_DRM_RCAR_DU=m
|
|
CONFIG_DRM_RCAR_DW_HDMI=m
|
|
CONFIG_DRM_SUN4I=m
|
|
|
|
From 5ef3bab6462c92e5c00c797f3dcef44aee443e9a Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:16 +0530
|
|
Subject: [PATCH] arm64: defconfig: Enable PHY_ROCKCHIP_INNO_DSIDPHY
|
|
|
|
In order to work LDVS, DSI in mainline tree for Rockchip based
|
|
hardware platforms, the associated PHY driver has to enable
|
|
in default defconfig.
|
|
|
|
Enable rockchip DSI phy driver.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-9-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/configs/defconfig | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
|
|
index 3ebba7dcb98f..d50826dd7d68 100644
|
|
--- a/arch/arm64/configs/defconfig
|
|
+++ b/arch/arm64/configs/defconfig
|
|
@@ -1011,6 +1011,7 @@ CONFIG_PHY_RCAR_GEN3_USB3=m
|
|
CONFIG_PHY_ROCKCHIP_EMMC=y
|
|
CONFIG_PHY_ROCKCHIP_INNO_HDMI=m
|
|
CONFIG_PHY_ROCKCHIP_INNO_USB2=y
|
|
+CONFIG_PHY_ROCKCHIP_INNO_DSIDPHY=m
|
|
CONFIG_PHY_ROCKCHIP_PCIE=m
|
|
CONFIG_PHY_ROCKCHIP_TYPEC=y
|
|
CONFIG_PHY_UNIPHIER_USB2=y
|
|
|
|
From 9270ef5be7427db50b66203333c6cf0ffb191eee Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:17 +0530
|
|
Subject: [PATCH] arm64: defconfig: Enable USB_SERIAL_CP210X
|
|
|
|
Some hardware platforms required CP20x USB to Serial converter
|
|
in order to work onboard functionalities like Bluetooth.
|
|
|
|
An example of such a platform is from Engicam's PX30 (ARM64).
|
|
|
|
Mark it as module in defconfig.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-10-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/configs/defconfig | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
|
|
index d50826dd7d68..41a2d489f0a2 100644
|
|
--- a/arch/arm64/configs/defconfig
|
|
+++ b/arch/arm64/configs/defconfig
|
|
@@ -751,6 +751,7 @@ CONFIG_USB_CHIPIDEA_UDC=y
|
|
CONFIG_USB_CHIPIDEA_HOST=y
|
|
CONFIG_USB_ISP1760=y
|
|
CONFIG_USB_SERIAL=m
|
|
+CONFIG_USB_SERIAL_CP210X=m
|
|
CONFIG_USB_SERIAL_FTDI_SIO=m
|
|
CONFIG_USB_HSIC_USB3503=y
|
|
CONFIG_NOP_USB_XCEIV=y
|
|
|
|
From 81ca19e8c044c0c9da10e67388e2da9826d93522 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Fri, 23 Oct 2020 23:48:13 +0530
|
|
Subject: [PATCH] arm64: defconfig: Enable RTC_DRV_HYM8563
|
|
|
|
RTC HYM8563 used in the ARM64 Rockchip SoC's SDIO power
|
|
sequence enablement.
|
|
|
|
Enable it as module.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201023181814.220974-1-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/configs/defconfig | 1 +
|
|
1 file changed, 1 insertion(+)
|
|
|
|
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
|
|
index 41a2d489f0a2..699c204090b8 100644
|
|
--- a/arch/arm64/configs/defconfig
|
|
+++ b/arch/arm64/configs/defconfig
|
|
@@ -816,6 +816,7 @@ CONFIG_EDAC=y
|
|
CONFIG_EDAC_GHES=y
|
|
CONFIG_RTC_CLASS=y
|
|
CONFIG_RTC_DRV_DS1307=m
|
|
+CONFIG_RTC_DRV_HYM8563=m
|
|
CONFIG_RTC_DRV_MAX77686=y
|
|
CONFIG_RTC_DRV_RK808=m
|
|
CONFIG_RTC_DRV_PCF85363=m
|
|
|
|
From b9c5dc81af0fa847fb92e0cb00ed5667d5e5ec60 Mon Sep 17 00:00:00 2001
|
|
From: Lee Jones <lee.jones@linaro.org>
|
|
Date: Tue, 3 Nov 2020 15:28:18 +0000
|
|
Subject: [PATCH] soc: rockchip: io-domain: Remove incorrect and incomplete
|
|
comment header
|
|
|
|
Fixes the following W=1 kernel build warning(s):
|
|
|
|
drivers/soc/rockchip/io-domain.c:57: warning: Cannot understand * @supplies: voltage settings matching the register bits.
|
|
|
|
Signed-off-by: Lee Jones <lee.jones@linaro.org>
|
|
Cc: Heiko Stuebner <heiko@sntech.de>
|
|
Cc: Liam Girdwood <lgirdwood@gmail.com>
|
|
Cc: Mark Brown <broonie@kernel.org>
|
|
Cc: "Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
|
|
Cc: Doug Anderson <dianders@chromium.org>
|
|
Cc: linux-rockchip@lists.infradead.org
|
|
Link: https://lore.kernel.org/r/20201103152838.1290217-6-lee.jones@linaro.org
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
drivers/soc/rockchip/io-domain.c | 3 ---
|
|
1 file changed, 3 deletions(-)
|
|
|
|
diff --git a/drivers/soc/rockchip/io-domain.c b/drivers/soc/rockchip/io-domain.c
|
|
index eece97f97ef8..d13d2d497720 100644
|
|
--- a/drivers/soc/rockchip/io-domain.c
|
|
+++ b/drivers/soc/rockchip/io-domain.c
|
|
@@ -53,9 +53,6 @@
|
|
|
|
struct rockchip_iodomain;
|
|
|
|
-/**
|
|
- * @supplies: voltage settings matching the register bits.
|
|
- */
|
|
struct rockchip_iodomain_soc_data {
|
|
int grf_offset;
|
|
const char *supply_names[MAX_SUPPLIES];
|
|
|
|
From ade714b4c3d73ce2b15553b48e688e8a48bdd507 Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <uwe@kleine-koenig.org>
|
|
Date: Wed, 14 Oct 2020 22:00:29 +0200
|
|
Subject: [PATCH] dt-bindings: vendor-prefixes: Add kobol prefix
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
The prefix is already used in arm/armada-388-helios4.dts.
|
|
|
|
Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
|
|
Acked-by: Rob Herring <robh@kernel.org>
|
|
Link: https://lore.kernel.org/r/20201014200030.845759-2-uwe@kleine-koenig.org
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
Documentation/devicetree/bindings/vendor-prefixes.yaml | 2 ++
|
|
1 file changed, 2 insertions(+)
|
|
|
|
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
|
index 2735be1a8470..259faf1b382c 100644
|
|
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
|
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
|
@@ -553,6 +553,8 @@ patternProperties:
|
|
description: Kionix, Inc.
|
|
"^kobo,.*":
|
|
description: Rakuten Kobo Inc.
|
|
+ "^kobol,.*":
|
|
+ description: Kobol Innovations Pte. Ltd.
|
|
"^koe,.*":
|
|
description: Kaohsiung Opto-Electronics Inc.
|
|
"^kontron,.*":
|
|
|
|
From 136e645cf9702547dba873c750a4a75fc493b72b Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <uwe@kleine-koenig.org>
|
|
Date: Wed, 14 Oct 2020 22:00:30 +0200
|
|
Subject: [PATCH] arm64: dts: rockchip: Add basic support for Kobol's Helios64
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
The hardware is described in detail on Kobol's wiki at
|
|
https://wiki.kobol.io/helios64/intro/.
|
|
|
|
Up to now the following peripherals are working:
|
|
|
|
- UART
|
|
- Micro-SD card
|
|
- eMMC
|
|
- ethernet port 1
|
|
- status LED
|
|
- temperature sensor on i2c bus 2
|
|
|
|
Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
|
|
Link: https://lore.kernel.org/r/20201014200030.845759-3-uwe@kleine-koenig.org
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/Makefile | 1 +
|
|
.../dts/rockchip/rk3399-kobol-helios64.dts | 372 ++++++++++++++++++
|
|
2 files changed, 373 insertions(+)
|
|
create mode 100644 arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
|
|
index 26661c7b736b..28b26a874313 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/Makefile
|
|
+++ b/arch/arm64/boot/dts/rockchip/Makefile
|
|
@@ -26,6 +26,7 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-hugsun-x99.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-khadas-edge.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-khadas-edge-captain.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3399-khadas-edge-v.dtb
|
|
+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
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
|
|
new file mode 100644
|
|
index 000000000000..2a561be724b2
|
|
--- /dev/null
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399-kobol-helios64.dts
|
|
@@ -0,0 +1,372 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+/*
|
|
+ * Copyright (c) 2020 Aditya Prayoga <aditya@kobol.io>
|
|
+ */
|
|
+
|
|
+/*
|
|
+ * The Kobol Helios64 is a board designed to operate as a NAS and optionally
|
|
+ * ships with an enclosing that can host five 2.5" hard disks.
|
|
+ *
|
|
+ * See https://wiki.kobol.io/helios64/intro/ for further details.
|
|
+ */
|
|
+
|
|
+/dts-v1/;
|
|
+#include "rk3399.dtsi"
|
|
+#include "rk3399-opp.dtsi"
|
|
+
|
|
+/ {
|
|
+ model = "Kobol Helios64";
|
|
+ compatible = "kobol,helios64", "rockchip,rk3399";
|
|
+
|
|
+ avdd_1v8_s0: avdd-1v8-s0 {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "avdd_1v8_s0";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <1800000>;
|
|
+ regulator-max-microvolt = <1800000>;
|
|
+ vin-supply = <&vcc3v3_sys_s3>;
|
|
+ };
|
|
+
|
|
+ clkin_gmac: external-gmac-clock {
|
|
+ compatible = "fixed-clock";
|
|
+ clock-frequency = <125000000>;
|
|
+ clock-output-names = "clkin_gmac";
|
|
+ #clock-cells = <0>;
|
|
+ };
|
|
+
|
|
+ leds {
|
|
+ compatible = "gpio-leds";
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&sys_grn_led_on &sys_red_led_on>;
|
|
+
|
|
+ led-0 {
|
|
+ label = "helios64:green:status";
|
|
+ gpios = <&gpio0 RK_PB4 GPIO_ACTIVE_HIGH>;
|
|
+ default-state = "on";
|
|
+ };
|
|
+
|
|
+ led-1 {
|
|
+ label = "helios64:red:fault";
|
|
+ gpios = <&gpio0 RK_PB5 GPIO_ACTIVE_HIGH>;
|
|
+ default-state = "keep";
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc1v8_sys_s0: vcc1v8-sys-s0 {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vcc1v8_sys_s0";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <1800000>;
|
|
+ regulator-max-microvolt = <1800000>;
|
|
+ vin-supply = <&vcc1v8_sys_s3>;
|
|
+ };
|
|
+
|
|
+ vcc3v0_sd: vcc3v0-sd {
|
|
+ compatible = "regulator-fixed";
|
|
+ enable-active-high;
|
|
+ gpio = <&gpio0 RK_PA1 GPIO_ACTIVE_HIGH>;
|
|
+ regulator-name = "vcc3v0_sd";
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <3000000>;
|
|
+ regulator-max-microvolt = <3000000>;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&sdmmc0_pwr_h>;
|
|
+ vin-supply = <&vcc3v3_sys_s3>;
|
|
+ };
|
|
+
|
|
+ vcc3v3_sys_s3: vcc_lan: vcc3v3-sys-s3 {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vcc3v3_sys_s3";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <3300000>;
|
|
+ regulator-max-microvolt = <3300000>;
|
|
+ vin-supply = <&vcc5v0_sys>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-on-in-suspend;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc5v0_sys: vcc5v0-sys {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vcc5v0_sys";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <5000000>;
|
|
+ regulator-max-microvolt = <5000000>;
|
|
+ vin-supply = <&vcc12v_dcin_bkup>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-on-in-suspend;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc12v_dcin: vcc12v-dcin {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vcc12v_dcin";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <12000000>;
|
|
+ regulator-max-microvolt = <12000000>;
|
|
+ };
|
|
+
|
|
+ vcc12v_dcin_bkup: vcc12v-dcin-bkup {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vcc12v_dcin_bkup";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <12000000>;
|
|
+ regulator-max-microvolt = <12000000>;
|
|
+ vin-supply = <&vcc12v_dcin>;
|
|
+ };
|
|
+};
|
|
+
|
|
+/*
|
|
+ * The system doesn't run stable with cpu freq enabled, so disallow the lower
|
|
+ * frequencies until this problem is properly understood and resolved.
|
|
+ */
|
|
+&cluster0_opp {
|
|
+ /delete-node/ opp00;
|
|
+ /delete-node/ opp01;
|
|
+ /delete-node/ opp02;
|
|
+ /delete-node/ opp03;
|
|
+ /delete-node/ opp04;
|
|
+};
|
|
+
|
|
+&cluster1_opp {
|
|
+ /delete-node/ opp00;
|
|
+ /delete-node/ opp01;
|
|
+ /delete-node/ opp02;
|
|
+ /delete-node/ opp03;
|
|
+ /delete-node/ opp04;
|
|
+ /delete-node/ opp05;
|
|
+ /delete-node/ opp06;
|
|
+};
|
|
+
|
|
+&cpu_b0 {
|
|
+ cpu-supply = <&vdd_cpu_b>;
|
|
+};
|
|
+
|
|
+&cpu_b1 {
|
|
+ cpu-supply = <&vdd_cpu_b>;
|
|
+};
|
|
+
|
|
+&cpu_l0 {
|
|
+ cpu-supply = <&vdd_cpu_l>;
|
|
+};
|
|
+
|
|
+&cpu_l1 {
|
|
+ cpu-supply = <&vdd_cpu_l>;
|
|
+};
|
|
+
|
|
+&cpu_l2 {
|
|
+ cpu-supply = <&vdd_cpu_l>;
|
|
+};
|
|
+
|
|
+&cpu_l3 {
|
|
+ cpu-supply = <&vdd_cpu_l>;
|
|
+};
|
|
+
|
|
+&emmc_phy {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&gmac {
|
|
+ assigned-clock-parents = <&clkin_gmac>;
|
|
+ assigned-clocks = <&cru SCLK_RMII_SRC>;
|
|
+ clock_in_out = "input";
|
|
+ phy-mode = "rgmii";
|
|
+ phy-supply = <&vcc_lan>;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&rgmii_pins &gphy_reset>;
|
|
+ rx_delay = <0x20>;
|
|
+ tx_delay = <0x28>;
|
|
+ snps,reset-active-low;
|
|
+ snps,reset-delays-us = <0 10000 50000>;
|
|
+ snps,reset-gpio = <&gpio3 RK_PB7 GPIO_ACTIVE_LOW>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&i2c0 {
|
|
+ clock-frequency = <400000>;
|
|
+ i2c-scl-rising-time-ns = <168>;
|
|
+ i2c-scl-falling-time-ns = <4>;
|
|
+ status = "okay";
|
|
+
|
|
+ rk808: pmic@1b {
|
|
+ compatible = "rockchip,rk808";
|
|
+ reg = <0x1b>;
|
|
+ interrupt-parent = <&gpio0>;
|
|
+ interrupts = <10 IRQ_TYPE_LEVEL_LOW>;
|
|
+ clock-output-names = "xin32k", "rk808-clkout2";
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&pmic_int_l>;
|
|
+ vcc1-supply = <&vcc5v0_sys>;
|
|
+ vcc2-supply = <&vcc5v0_sys>;
|
|
+ vcc3-supply = <&vcc5v0_sys>;
|
|
+ vcc4-supply = <&vcc5v0_sys>;
|
|
+ vcc6-supply = <&vcc5v0_sys>;
|
|
+ vcc7-supply = <&vcc5v0_sys>;
|
|
+ vcc8-supply = <&vcc3v3_sys_s3>;
|
|
+ vcc9-supply = <&vcc5v0_sys>;
|
|
+ vcc10-supply = <&vcc5v0_sys>;
|
|
+ vcc11-supply = <&vcc5v0_sys>;
|
|
+ vcc12-supply = <&vcc3v3_sys_s3>;
|
|
+ vddio-supply = <&vcc3v0_s3>;
|
|
+ wakeup-source;
|
|
+ #clock-cells = <1>;
|
|
+
|
|
+ regulators {
|
|
+ vdd_cpu_l: DCDC_REG2 {
|
|
+ regulator-name = "vdd_cpu_l";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <750000>;
|
|
+ regulator-max-microvolt = <1350000>;
|
|
+ regulator-ramp-delay = <6001>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-off-in-suspend;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc1v8_sys_s3: DCDC_REG4 {
|
|
+ regulator-name = "vcc1v8_sys_s3";
|
|
+ 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>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc_sdio_s0: LDO_REG4 {
|
|
+ regulator-name = "vcc_sdio_s0";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <1800000>;
|
|
+ regulator-max-microvolt = <3000000>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-on-in-suspend;
|
|
+ regulator-suspend-microvolt = <3000000>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc3v0_s3: LDO_REG8 {
|
|
+ regulator-name = "vcc3v0_s3";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <3000000>;
|
|
+ regulator-max-microvolt = <3000000>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-on-in-suspend;
|
|
+ regulator-suspend-microvolt = <3000000>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vdd_cpu_b: regulator@40 {
|
|
+ compatible = "silergy,syr827";
|
|
+ reg = <0x40>;
|
|
+ fcs,suspend-voltage-selector = <1>;
|
|
+ regulator-name = "vdd_cpu_b";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <712500>;
|
|
+ regulator-max-microvolt = <1500000>;
|
|
+ regulator-ramp-delay = <1000>;
|
|
+ vin-supply = <&vcc5v0_sys>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-off-in-suspend;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&i2c2 {
|
|
+ clock-frequency = <400000>;
|
|
+ i2c-scl-rising-time-ns = <160>;
|
|
+ i2c-scl-falling-time-ns = <30>;
|
|
+ status = "okay";
|
|
+
|
|
+ temp@4c {
|
|
+ compatible = "national,lm75";
|
|
+ reg = <0x4c>;
|
|
+ };
|
|
+};
|
|
+
|
|
+&io_domains {
|
|
+ audio-supply = <&vcc1v8_sys_s0>;
|
|
+ bt656-supply = <&vcc1v8_sys_s0>;
|
|
+ gpio1830-supply = <&vcc3v0_s3>;
|
|
+ sdmmc-supply = <&vcc_sdio_s0>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&pinctrl {
|
|
+ gmac {
|
|
+ gphy_reset: gphy-reset {
|
|
+ rockchip,pins = <3 RK_PB7 RK_FUNC_GPIO &pcfg_output_low>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ leds {
|
|
+ sys_grn_led_on: sys-grn-led-on {
|
|
+ rockchip,pins = <0 RK_PB4 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
+ };
|
|
+
|
|
+ sys_red_led_on: sys-red-led-on {
|
|
+ rockchip,pins = <0 RK_PB5 RK_FUNC_GPIO &pcfg_pull_down>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ pmic {
|
|
+ pmic_int_l: pmic-int-l {
|
|
+ rockchip,pins = <0 RK_PB2 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc3v0-sd {
|
|
+ sdmmc0_pwr_h: sdmmc0-pwr-h {
|
|
+ rockchip,pins = <0 RK_PA1 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&pmu_io_domains {
|
|
+ pmu1830-supply = <&vcc3v0_s3>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&sdhci {
|
|
+ bus-width = <8>;
|
|
+ mmc-hs200-1_8v;
|
|
+ non-removable;
|
|
+ vqmmc-supply = <&vcc1v8_sys_s0>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&sdmmc {
|
|
+ bus-width = <4>;
|
|
+ cap-sd-highspeed;
|
|
+ cd-gpios = <&gpio0 RK_PA7 GPIO_ACTIVE_LOW>;
|
|
+ disable-wp;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&sdmmc_clk &sdmmc_cmd &sdmmc_cd &sdmmc_bus4>;
|
|
+ vmmc-supply = <&vcc3v0_sd>;
|
|
+ vqmmc-supply = <&vcc_sdio_s0>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&uart2 {
|
|
+ status = "okay";
|
|
+};
|
|
|
|
From d7d96382a38e550f3e71a7493bb2117dae59f97e Mon Sep 17 00:00:00 2001
|
|
From: =?UTF-8?q?Uwe=20Kleine-K=C3=B6nig?= <uwe@kleine-koenig.org>
|
|
Date: Mon, 2 Nov 2020 16:06:58 +0100
|
|
Subject: [PATCH] dt-bindings: arm: rockchip: Add Kobol Helios64
|
|
MIME-Version: 1.0
|
|
Content-Type: text/plain; charset=UTF-8
|
|
Content-Transfer-Encoding: 8bit
|
|
|
|
Document the new board by Kobol introduced recently in
|
|
rockchip/rk3399-kobol-helios64.dts.
|
|
|
|
Signed-off-by: Uwe Kleine-König <uwe@kleine-koenig.org>
|
|
Acked-by: Rob Herring <robh@kernel.org>
|
|
Link: https://lore.kernel.org/r/20201102150658.167161-1-uwe@kleine-koenig.org
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
Documentation/devicetree/bindings/arm/rockchip.yaml | 5 +++++
|
|
1 file changed, 5 insertions(+)
|
|
|
|
diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml b/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
index b621752aaa65..ad1dbf349c33 100644
|
|
--- a/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
+++ b/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
@@ -381,6 +381,11 @@ properties:
|
|
- khadas,edge-v
|
|
- const: rockchip,rk3399
|
|
|
|
+ - description: Kobol Helios64
|
|
+ items:
|
|
+ - const: kobol,helios64
|
|
+ - const: rockchip,rk3399
|
|
+
|
|
- description: Mecer Xtreme Mini S6
|
|
items:
|
|
- const: mecer,xms6
|
|
|
|
From c601f0d90ef10d5eb0a75afc5c80247f3132323a Mon Sep 17 00:00:00 2001
|
|
From: Heiko Stuebner <heiko.stuebner@theobroma-systems.com>
|
|
Date: Sat, 4 Jul 2020 00:14:13 +0200
|
|
Subject: [PATCH] arm64: dts: rockchip: add adc joystick to Odroid Go Advance
|
|
|
|
Add the now usable adc-joystick node that describes the analog
|
|
joystick connected to two saradc channels from the rk3326 soc.
|
|
|
|
Signed-off-by: Heiko Stuebner <heiko.stuebner@theobroma-systems.com>
|
|
Link: https://lore.kernel.org/r/20200703221413.269800-1-heiko@sntech.de
|
|
---
|
|
.../boot/dts/rockchip/rk3326-odroid-go2.dts | 24 +++++++++++++++++++
|
|
1 file changed, 24 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts b/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts
|
|
index 337681038519..97fb93e1cc00 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3326-odroid-go2.dts
|
|
@@ -18,6 +18,30 @@ chosen {
|
|
stdout-path = "serial2:115200n8";
|
|
};
|
|
|
|
+ adc-joystick {
|
|
+ compatible = "adc-joystick";
|
|
+ io-channels = <&saradc 1>,
|
|
+ <&saradc 2>;
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ axis@0 {
|
|
+ reg = <0>;
|
|
+ abs-flat = <10>;
|
|
+ abs-fuzz = <10>;
|
|
+ abs-range = <172 772>;
|
|
+ linux,code = <ABS_X>;
|
|
+ };
|
|
+
|
|
+ axis@1 {
|
|
+ reg = <1>;
|
|
+ abs-flat = <10>;
|
|
+ abs-fuzz = <10>;
|
|
+ abs-range = <278 815>;
|
|
+ linux,code = <ABS_Y>;
|
|
+ };
|
|
+ };
|
|
+
|
|
backlight: backlight {
|
|
compatible = "pwm-backlight";
|
|
power-supply = <&vcc_bl>;
|
|
|
|
From 893d460175d5f58b6b8261e52d6f82194e272c9d Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Tue, 29 Sep 2020 14:02:11 +0530
|
|
Subject: [PATCH] dt-bindings: arm: rockchip: Add Engicam PX30.Core EDIMM2.2
|
|
Starter Kit
|
|
|
|
PX30.Core is an EDIMM SOM based on Rockchip PX30 from Engicam.
|
|
|
|
EDIMM2.2 Starter Kit is an EDIMM 2.2 Form Factor Capacitive
|
|
Evaluation Board from Engicam.
|
|
|
|
PX30.Core needs to mount on top of this Evaluation board for
|
|
creating complete PX30.Core EDIMM2.2 Starter Kit.
|
|
|
|
Add bindings for it.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Acked-by: Rob Herring <robh@kernel.org>
|
|
Link: https://lore.kernel.org/r/20200929083217.25406-2-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
Documentation/devicetree/bindings/arm/rockchip.yaml | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml b/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
index ad1dbf349c33..cef95eb26ca6 100644
|
|
--- a/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
+++ b/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
@@ -70,6 +70,12 @@ properties:
|
|
- const: elgin,rv1108-r1
|
|
- const: rockchip,rv1108
|
|
|
|
+ - description: Engicam PX30.Core EDIMM2.2 Starter Kit
|
|
+ items:
|
|
+ - const: engicam,px30-core-edimm2.2
|
|
+ - const: engicam,px30-core
|
|
+ - const: rockchip,px30
|
|
+
|
|
- description: Firefly Firefly-RK3288
|
|
items:
|
|
- enum:
|
|
|
|
From edec2b3926f851d98de012957e82e4f589befac1 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Tue, 29 Sep 2020 14:02:12 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Add Engicam EDIMM2.2 Starter Kit
|
|
|
|
Engicam EDIMM2.2 Starter Kit is an EDIMM 2.2 Form Factor Capacitive
|
|
Evaluation Board.
|
|
|
|
Genaral features:
|
|
- LCD 7" C.Touch
|
|
- microSD slot
|
|
- Ethernet 1Gb
|
|
- Wifi/BT
|
|
- 2x LVDS Full HD interfaces
|
|
- 3x USB 2.0
|
|
- 1x USB 3.0
|
|
- HDMI Out
|
|
- Mini PCIe
|
|
- MIPI CSI
|
|
- 2x CAN
|
|
- Audio Out
|
|
|
|
SOM's like PX30.Core needs to mount on top of this Evaluation board
|
|
for creating complete PX30.Core EDIMM2.2 Starter Kit.
|
|
|
|
Add support for it.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20200929083217.25406-3-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../dts/rockchip/px30-engicam-common.dtsi | 39 +++++++++++++++++++
|
|
.../dts/rockchip/px30-engicam-edimm2.2.dtsi | 7 ++++
|
|
2 files changed, 46 insertions(+)
|
|
create mode 100644 arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
create mode 100644 arch/arm64/boot/dts/rockchip/px30-engicam-edimm2.2.dtsi
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
new file mode 100644
|
|
index 000000000000..bd5bde989e8d
|
|
--- /dev/null
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
@@ -0,0 +1,39 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+/*
|
|
+ * Copyright (c) 2020 Engicam srl
|
|
+ * Copyright (c) 2020 Amarula Solutions
|
|
+ * Copyright (c) 2020 Amarula Solutions(India)
|
|
+ */
|
|
+
|
|
+/ {
|
|
+ vcc5v0_sys: vcc5v0-sys {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vcc5v0_sys"; /* +5V */
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <5000000>;
|
|
+ regulator-max-microvolt = <5000000>;
|
|
+ };
|
|
+};
|
|
+
|
|
+&gmac {
|
|
+ clock_in_out = "output";
|
|
+ phy-supply = <&vcc_3v3>; /* +3V3_SOM */
|
|
+ snps,reset-active-low;
|
|
+ snps,reset-delays-us = <0 50000 50000>;
|
|
+ snps,reset-gpio = <&gpio2 RK_PB5 GPIO_ACTIVE_HIGH>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&sdmmc {
|
|
+ cap-sd-highspeed;
|
|
+ card-detect-delay = <800>;
|
|
+ vmmc-supply = <&vcc_3v3>; /* +3V3_SOM */
|
|
+ vqmmc-supply = <&vcc_3v3>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&uart2 {
|
|
+ pinctrl-0 = <&uart2m1_xfer>;
|
|
+ status = "okay";
|
|
+};
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-edimm2.2.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-edimm2.2.dtsi
|
|
new file mode 100644
|
|
index 000000000000..cb00988953e9
|
|
--- /dev/null
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-edimm2.2.dtsi
|
|
@@ -0,0 +1,7 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+/*
|
|
+ * Copyright (c) 2020 Engicam srl
|
|
+ * Copyright (c) 2020 Amarula Solutions(India)
|
|
+ */
|
|
+
|
|
+#include "px30-engicam-common.dtsi"
|
|
|
|
From 4ddefb6af82f66601c6a4eaf1314079ec1db1ead Mon Sep 17 00:00:00 2001
|
|
From: Michael Trimarchi <michael@amarulasolutions.com>
|
|
Date: Tue, 29 Sep 2020 14:02:13 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Add Engicam PX30.Core SOM
|
|
|
|
PX30.Core is an EDIMM SOM based on Rockchip PX30 from Engicam.
|
|
|
|
General features:
|
|
- Rockchip PX30
|
|
- Up to 2GB DDR4
|
|
- eMMC 4 GB expandible
|
|
- rest of PX30 features
|
|
|
|
PX30.Core needs to mount on top of Engicam baseboards for creating
|
|
complete platform boards.
|
|
|
|
Possible baseboards are,
|
|
- EDIMM2.2
|
|
- C.TOUCH 2.0
|
|
|
|
Add support for it.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20200929083217.25406-4-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../dts/rockchip/px30-engicam-px30-core.dtsi | 232 ++++++++++++++++++
|
|
1 file changed, 232 insertions(+)
|
|
create mode 100644 arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi
|
|
new file mode 100644
|
|
index 000000000000..db22f776c68f
|
|
--- /dev/null
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi
|
|
@@ -0,0 +1,232 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+/*
|
|
+ * Copyright (c) 2020 Fuzhou Rockchip Electronics Co., Ltd
|
|
+ * Copyright (c) 2020 Engicam srl
|
|
+ * Copyright (c) 2020 Amarula Solutons
|
|
+ * Copyright (c) 2020 Amarula Solutons(India)
|
|
+ */
|
|
+
|
|
+#include <dt-bindings/gpio/gpio.h>
|
|
+#include <dt-bindings/pinctrl/rockchip.h>
|
|
+
|
|
+/ {
|
|
+ compatible = "engicam,px30-core", "rockchip,px30";
|
|
+};
|
|
+
|
|
+&cpu0 {
|
|
+ cpu-supply = <&vdd_arm>;
|
|
+};
|
|
+
|
|
+&cpu1 {
|
|
+ cpu-supply = <&vdd_arm>;
|
|
+};
|
|
+
|
|
+&cpu2 {
|
|
+ cpu-supply = <&vdd_arm>;
|
|
+};
|
|
+
|
|
+&cpu3 {
|
|
+ cpu-supply = <&vdd_arm>;
|
|
+};
|
|
+
|
|
+&emmc {
|
|
+ cap-mmc-highspeed;
|
|
+ mmc-hs200-1_8v;
|
|
+ non-removable;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&i2c0 {
|
|
+ status = "okay";
|
|
+
|
|
+ rk809: pmic@20 {
|
|
+ compatible = "rockchip,rk809";
|
|
+ reg = <0x20>;
|
|
+ interrupt-parent = <&gpio0>;
|
|
+ interrupts = <RK_PA7 IRQ_TYPE_LEVEL_LOW>;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&pmic_int>;
|
|
+ rockchip,system-power-controller;
|
|
+ wakeup-source;
|
|
+ #clock-cells = <1>;
|
|
+ clock-output-names = "rk808-clkout1", "rk808-clkout2";
|
|
+
|
|
+ vcc1-supply = <&vcc5v0_sys>;
|
|
+ vcc2-supply = <&vcc5v0_sys>;
|
|
+ vcc3-supply = <&vcc5v0_sys>;
|
|
+ vcc4-supply = <&vcc5v0_sys>;
|
|
+ vcc5-supply = <&vcc3v3_sys>;
|
|
+ vcc6-supply = <&vcc3v3_sys>;
|
|
+ vcc7-supply = <&vcc3v3_sys>;
|
|
+ vcc8-supply = <&vcc3v3_sys>;
|
|
+ vcc9-supply = <&vcc5v0_sys>;
|
|
+
|
|
+ regulators {
|
|
+ vdd_log: DCDC_REG1 {
|
|
+ regulator-name = "vdd_log";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <950000>;
|
|
+ regulator-max-microvolt = <1350000>;
|
|
+ regulator-ramp-delay = <6001>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-on-in-suspend;
|
|
+ regulator-suspend-microvolt = <950000>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vdd_arm: DCDC_REG2 {
|
|
+ regulator-name = "vdd_arm";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <950000>;
|
|
+ regulator-max-microvolt = <1350000>;
|
|
+ regulator-ramp-delay = <6001>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-off-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_3v3: DCDC_REG4 {
|
|
+ regulator-name = "vcc_3v3";
|
|
+ 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>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc3v3_sys: DCDC_REG5 {
|
|
+ regulator-name = "vcc3v3_sys";
|
|
+ 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_1v0: LDO_REG1 {
|
|
+ regulator-name = "vcc_1v0";
|
|
+ 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>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc_1v8: LDO_REG2 {
|
|
+ regulator-name = "vcc_1v8";
|
|
+ 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_1v0: LDO_REG3 {
|
|
+ regulator-name = "vdd_1v0";
|
|
+ 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>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc3v0_pmu: LDO_REG4 {
|
|
+ regulator-name = "vcc3v0_pmu";
|
|
+ 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>;
|
|
+
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vccio_sd: LDO_REG5 {
|
|
+ regulator-name = "vccio_sd";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ regulator-min-microvolt = <1800000>;
|
|
+ regulator-max-microvolt = <3300000>;
|
|
+
|
|
+ regulator-state-mem {
|
|
+ regulator-on-in-suspend;
|
|
+ regulator-suspend-microvolt = <3300000>;
|
|
+ };
|
|
+ };
|
|
+
|
|
+ vcc5v0_host: SWITCH_REG2 {
|
|
+ regulator-name = "vcc5v0_host";
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&io_domains {
|
|
+ vccio1-supply = <&vcc_3v3>;
|
|
+ vccio2-supply = <&vcc_3v3>;
|
|
+ vccio3-supply = <&vcc_3v3>;
|
|
+ vccio4-supply = <&vcc_3v3>;
|
|
+ vccio5-supply = <&vcc_3v3>;
|
|
+ vccio6-supply = <&vcc_1v8>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&pinctrl {
|
|
+ pmic {
|
|
+ pmic_int: pmic_int {
|
|
+ rockchip,pins = <0 RK_PA7 RK_FUNC_GPIO &pcfg_pull_up>;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&pmu_io_domains {
|
|
+ pmuio1-supply = <&vcc_3v3>;
|
|
+ pmuio2-supply = <&vcc_3v3>;
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&tsadc {
|
|
+ rockchip,hw-tshut-mode = <1>;
|
|
+ rockchip,hw-tshut-polarity = <1>;
|
|
+ status = "okay";
|
|
+};
|
|
|
|
From a5c4a953bb29f031ab5a49a708ef301359944edd Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Tue, 29 Sep 2020 14:02:14 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Add Engicam PX30.Core EDIMM2.2 Starter
|
|
Kit
|
|
|
|
PX30.Core is an EDIMM SOM based on Rockchip PX30 from Engicam.
|
|
|
|
EDIMM2.2 Starter Kit is an EDIMM 2.2 Form Factor Capacitive
|
|
Evaluation Board from Engicam.
|
|
|
|
PX30.Core needs to mount on top of this Evaluation board for
|
|
creating complete PX30.Core EDIMM2.2 Starter Kit.
|
|
|
|
Add support for it.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20200929083217.25406-5-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/Makefile | 1 +
|
|
.../px30-engicam-px30-core-edimm2.2.dts | 21 +++++++++++++++++++
|
|
2 files changed, 22 insertions(+)
|
|
create mode 100644 arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
|
|
index 28b26a874313..abf9dc621314 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/Makefile
|
|
+++ b/arch/arm64/boot/dts/rockchip/Makefile
|
|
@@ -1,5 +1,6 @@
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-evb.dtb
|
|
+dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-engicam-px30-core-edimm2.2.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-evb.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-roc-cc.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3318-a95x-z2.dtb
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
new file mode 100644
|
|
index 000000000000..e54d1e480daa
|
|
--- /dev/null
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
@@ -0,0 +1,21 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+/*
|
|
+ * Copyright (c) 2020 Fuzhou Rockchip Electronics Co., Ltd
|
|
+ * Copyright (c) 2020 Engicam srl
|
|
+ * Copyright (c) 2020 Amarula Solutions(India)
|
|
+ */
|
|
+
|
|
+/dts-v1/;
|
|
+#include "px30.dtsi"
|
|
+#include "px30-engicam-edimm2.2.dtsi"
|
|
+#include "px30-engicam-px30-core.dtsi"
|
|
+
|
|
+/ {
|
|
+ model = "Engicam PX30.Core EDIMM2.2 Starter Kit";
|
|
+ compatible = "engicam,px30-core-edimm2.2", "engicam,px30-core",
|
|
+ "rockchip,px30";
|
|
+
|
|
+ chosen {
|
|
+ stdout-path = "serial2:115200n8";
|
|
+ };
|
|
+};
|
|
|
|
From 91cb8ac48a887d5618ee0fd5a350f73a9245253d Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Tue, 29 Sep 2020 14:02:15 +0530
|
|
Subject: [PATCH] dt-bindings: arm: rockchip: Add Engicam PX30.Core C.TOUCH 2.0
|
|
|
|
PX30.Core is an EDIMM SOM based on Rockchip PX30 from Engicam.
|
|
|
|
C.TOUCH 2.0 is a general purpose carrier board with capacitive
|
|
touch interface support.
|
|
|
|
PX30.Core needs to mount on top of this Carrier board for creating
|
|
complete PX30.Core C.TOUCH 2.0 board.
|
|
|
|
Add bindings for it.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Acked-by: Rob Herring <robh@kernel.org>
|
|
Link: https://lore.kernel.org/r/20200929083217.25406-6-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
Documentation/devicetree/bindings/arm/rockchip.yaml | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml b/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
index cef95eb26ca6..37fd456170d2 100644
|
|
--- a/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
+++ b/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
@@ -70,6 +70,12 @@ properties:
|
|
- const: elgin,rv1108-r1
|
|
- const: rockchip,rv1108
|
|
|
|
+ - description: Engicam PX30.Core C.TOUCH 2.0
|
|
+ items:
|
|
+ - const: engicam,px30-core-ctouch2
|
|
+ - const: engicam,px30-core
|
|
+ - const: rockchip,px30
|
|
+
|
|
- description: Engicam PX30.Core EDIMM2.2 Starter Kit
|
|
items:
|
|
- const: engicam,px30-core-edimm2.2
|
|
|
|
From 9ebf52a74362a2d2b2c3dfb420e8ade811a43515 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Tue, 29 Sep 2020 14:02:16 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Add Engicam C.TOUCH 2.0
|
|
|
|
Engicam C.TOUCH 2.0 is an EDIMM compliant general purpose
|
|
carrier board with capacitive touch interface.
|
|
|
|
Genaral features:
|
|
- TFT 10.1" industrial, 1280x800 LVDS display
|
|
- Ethernet 10/100
|
|
- Wifi/BT
|
|
- USB Type A/OTG
|
|
- Audio Out
|
|
- CAN
|
|
- LVDS panel connector
|
|
|
|
SOM's like PX30.Core needs to mount on top of this Carrier board
|
|
for creating complete PX30.Core C.TOUCH 2.0 board.
|
|
|
|
Add support for it.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20200929083217.25406-7-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi | 8 ++++++++
|
|
1 file changed, 8 insertions(+)
|
|
create mode 100644 arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
new file mode 100644
|
|
index 000000000000..58425b1e559f
|
|
--- /dev/null
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
@@ -0,0 +1,8 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+/*
|
|
+ * Copyright (c) 2020 Engicam srl
|
|
+ * Copyright (c) 2020 Amarula Solutions
|
|
+ * Copyright (c) 2020 Amarula Solutions(India)
|
|
+ */
|
|
+
|
|
+#include "px30-engicam-common.dtsi"
|
|
|
|
From df1d881202ddf2b96a0c5b439871d5959393312a Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Tue, 29 Sep 2020 14:02:17 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Add Engicam PX30.Core C.TOUCH 2.0
|
|
|
|
PX30.Core is an EDIMM SOM based on Rockchip PX30 from Engicam.
|
|
|
|
C.TOUCH 2.0 is a general purpose carrier board with capacitive
|
|
touch interface support.
|
|
|
|
PX30.Core needs to mount on top of this Carrier board for creating
|
|
complete PX30.Core C.TOUCH 2.0 board.
|
|
|
|
Add support for it.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20200929083217.25406-8-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/Makefile | 1 +
|
|
.../px30-engicam-px30-core-ctouch2.dts | 22 +++++++++++++++++++
|
|
2 files changed, 23 insertions(+)
|
|
create mode 100644 arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-ctouch2.dts
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
|
|
index abf9dc621314..5a53979b7057 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/Makefile
|
|
+++ b/arch/arm64/boot/dts/rockchip/Makefile
|
|
@@ -1,5 +1,6 @@
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-evb.dtb
|
|
+dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-engicam-px30-core-ctouch2.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-engicam-px30-core-edimm2.2.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-evb.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-roc-cc.dtb
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-ctouch2.dts b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-ctouch2.dts
|
|
new file mode 100644
|
|
index 000000000000..5a0ecb8faecf
|
|
--- /dev/null
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-ctouch2.dts
|
|
@@ -0,0 +1,22 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+/*
|
|
+ * Copyright (c) 2020 Fuzhou Rockchip Electronics Co., Ltd
|
|
+ * Copyright (c) 2020 Engicam srl
|
|
+ * Copyright (c) 2020 Amarula Solutions
|
|
+ * Copyright (c) 2020 Amarula Solutions(India)
|
|
+ */
|
|
+
|
|
+/dts-v1/;
|
|
+#include "px30.dtsi"
|
|
+#include "px30-engicam-ctouch2.dtsi"
|
|
+#include "px30-engicam-px30-core.dtsi"
|
|
+
|
|
+/ {
|
|
+ model = "Engicam PX30.Core C.TOUCH 2.0";
|
|
+ compatible = "engicam,px30-core-ctouch2", "engicam,px30-core",
|
|
+ "rockchip,px30";
|
|
+
|
|
+ chosen {
|
|
+ stdout-path = "serial2:115200n8";
|
|
+ };
|
|
+};
|
|
|
|
From 3cb90f8d11317b126a800de92315ed9a0a9cf8c8 Mon Sep 17 00:00:00 2001
|
|
From: Chen-Yu Tsai <wens@csie.org>
|
|
Date: Thu, 26 Nov 2020 15:33:35 +0800
|
|
Subject: [PATCH] arm64: dts: rockchip: Enable HDMI audio on rk3328-roc-cc
|
|
|
|
The RK3328-ROC-CC already has HDMI display output enabled. Now that
|
|
audio for the HDMI controller is supported, it can be enabled as well.
|
|
|
|
Enable the simple-audio-card, and the I2S interface the audio is fed
|
|
from.
|
|
|
|
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
|
|
Link: https://lore.kernel.org/r/20201126073336.30794-3-wens@kernel.org
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts | 8 ++++++++
|
|
1 file changed, 8 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
|
|
index b76282e704de..697fce709031 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
|
|
@@ -161,6 +161,10 @@ &hdmiphy {
|
|
status = "okay";
|
|
};
|
|
|
|
+&hdmi_sound {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&i2c1 {
|
|
status = "okay";
|
|
|
|
@@ -270,6 +274,10 @@ regulator-state-mem {
|
|
};
|
|
};
|
|
|
|
+&i2s0 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&io_domains {
|
|
status = "okay";
|
|
|
|
|
|
From 68aedb4279e38d8239d1d21bd41b1b5d5e78c58c Mon Sep 17 00:00:00 2001
|
|
From: Chen-Yu Tsai <wens@csie.org>
|
|
Date: Thu, 26 Nov 2020 15:33:36 +0800
|
|
Subject: [PATCH] arm64: dts: rockchip: Enable analog audio on rk3328-roc-cc
|
|
|
|
Now that driver support for the RK3328's audio codec, and the plumbing
|
|
is defined at the SoC level, we can enable analog audio at the board
|
|
level.
|
|
|
|
Enable analog audio by enabling the codec and the I2S interface
|
|
connected and the simple-audio-card that binds them together.
|
|
|
|
Signed-off-by: Chen-Yu Tsai <wens@csie.org>
|
|
Link: https://lore.kernel.org/r/20201126073336.30794-4-wens@kernel.org
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts | 12 ++++++++++++
|
|
1 file changed, 12 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
|
|
index 697fce709031..19959bfba451 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3328-roc-cc.dts
|
|
@@ -104,6 +104,14 @@ user_led: led-1 {
|
|
};
|
|
};
|
|
|
|
+&analog_sound {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&codec {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&cpu0 {
|
|
cpu-supply = <&vdd_arm>;
|
|
};
|
|
@@ -278,6 +286,10 @@ &i2s0 {
|
|
status = "okay";
|
|
};
|
|
|
|
+&i2s1 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&io_domains {
|
|
status = "okay";
|
|
|
|
|
|
From 747e7ee30c4449248930b59ad3fc85b00755a7ae Mon Sep 17 00:00:00 2001
|
|
From: Johan Jonker <jbx6244@gmail.com>
|
|
Date: Mon, 16 Nov 2020 14:23:11 +0100
|
|
Subject: [PATCH] arm64: dts: rockchip: rename sdhci nodename to mmc on rk3399
|
|
|
|
A test with the command below gives for example this error:
|
|
|
|
/arch/arm64/boot/dts/rockchip/rk3399-evb.dt.yaml:
|
|
sdhci@fe330000: $nodename:0: 'sdhci@fe330000'
|
|
does not match '^mmc(@.*)?$'
|
|
|
|
Fix it by renaming sdhci to mmc.
|
|
|
|
make ARCH=arm64 dtbs_check
|
|
DT_SCHEMA_FILES=Documentation/devicetree/bindings/
|
|
mmc/arasan,sdhci.yaml
|
|
|
|
Signed-off-by: Johan Jonker <jbx6244@gmail.com>
|
|
Link: https://lore.kernel.org/r/20201116132311.8318-1-jbx6244@gmail.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/rk3399.dtsi | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
|
|
index 7a9a7aca86c6..865729ec867f 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
|
|
@@ -331,7 +331,7 @@ sdmmc: mmc@fe320000 {
|
|
status = "disabled";
|
|
};
|
|
|
|
- sdhci: sdhci@fe330000 {
|
|
+ sdhci: mmc@fe330000 {
|
|
compatible = "rockchip,rk3399-sdhci-5.1", "arasan,sdhci-5.1";
|
|
reg = <0x0 0xfe330000 0x0 0x10000>;
|
|
interrupts = <GIC_SPI 11 IRQ_TYPE_LEVEL_HIGH 0>;
|
|
|
|
From ffc19f1963ebb4486fb937d414d28f11c8fa75cc Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:09 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Enable USB Host, OTG on px30-enagicam
|
|
|
|
Engicam EDIMM2.2 and C.Touch 2.0 Kits support USB Host
|
|
and OTG ports.
|
|
|
|
Add support to enable USB on these kits while mounting
|
|
px30-core SOM.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-2-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../dts/rockchip/px30-engicam-common.dtsi | 24 +++++++++++++++++++
|
|
1 file changed, 24 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
index bd5bde989e8d..fbbdbb0a40af 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
@@ -33,7 +33,31 @@ &sdmmc {
|
|
status = "okay";
|
|
};
|
|
|
|
+&u2phy {
|
|
+ status = "okay";
|
|
+
|
|
+ u2phy_host: host-port {
|
|
+ status = "okay";
|
|
+ };
|
|
+
|
|
+ u2phy_otg: otg-port {
|
|
+ status = "okay";
|
|
+ };
|
|
+};
|
|
+
|
|
&uart2 {
|
|
pinctrl-0 = <&uart2m1_xfer>;
|
|
status = "okay";
|
|
};
|
|
+
|
|
+&usb20_otg {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&usb_host0_ehci {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&usb_host0_ohci {
|
|
+ status = "okay";
|
|
+};
|
|
|
|
From 88fb28b232443748f7d042edca3642af886f3db2 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:10 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Enable LVDS panel on
|
|
px30-engicam-edimm2.2
|
|
|
|
Engicam PX30.Core EDIMM2.2 developement Kit has on board 10" LVDS
|
|
panel from yes-optoelectronics.
|
|
|
|
This patch adds panel enablement nodes on respective dts(i) files.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-3-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../dts/rockchip/px30-engicam-common.dtsi | 4 ++
|
|
.../dts/rockchip/px30-engicam-edimm2.2.dtsi | 59 +++++++++++++++++++
|
|
.../dts/rockchip/px30-engicam-px30-core.dtsi | 5 ++
|
|
3 files changed, 68 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
index fbbdbb0a40af..8fdd7ff2fdf9 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
@@ -25,6 +25,10 @@ &gmac {
|
|
status = "okay";
|
|
};
|
|
|
|
+&pwm0 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&sdmmc {
|
|
cap-sd-highspeed;
|
|
card-detect-delay = <800>;
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-edimm2.2.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-edimm2.2.dtsi
|
|
index cb00988953e9..449b8eb6454e 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-edimm2.2.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-edimm2.2.dtsi
|
|
@@ -5,3 +5,62 @@
|
|
*/
|
|
|
|
#include "px30-engicam-common.dtsi"
|
|
+
|
|
+/ {
|
|
+ backlight: backlight {
|
|
+ compatible = "pwm-backlight";
|
|
+ pwms = <&pwm0 0 25000 0>;
|
|
+ };
|
|
+
|
|
+ panel {
|
|
+ compatible = "yes-optoelectronics,ytc700tlag-05-201c";
|
|
+ backlight = <&backlight>;
|
|
+ data-mapping = "vesa-24";
|
|
+ power-supply = <&vcc3v3_lcd>;
|
|
+
|
|
+ port {
|
|
+ panel_in_lvds: endpoint {
|
|
+ remote-endpoint = <&lvds_out_panel>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&display_subsystem {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&dsi_dphy {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+/* LVDS_B(secondary) */
|
|
+&lvds {
|
|
+ status = "okay";
|
|
+
|
|
+ ports {
|
|
+ port@1 {
|
|
+ reg = <1>;
|
|
+
|
|
+ lvds_out_panel: endpoint {
|
|
+ remote-endpoint = <&panel_in_lvds>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&vopb {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&vopb_mmu {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&vopl {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&vopl_mmu {
|
|
+ status = "okay";
|
|
+};
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi
|
|
index db22f776c68f..cdacd3483600 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core.dtsi
|
|
@@ -192,6 +192,11 @@ regulator-state-mem {
|
|
};
|
|
};
|
|
|
|
+ vcc3v3_lcd: SWITCH_REG1 {
|
|
+ regulator-boot-on;
|
|
+ regulator-name = "vcc3v3_lcd";
|
|
+ };
|
|
+
|
|
vcc5v0_host: SWITCH_REG2 {
|
|
regulator-name = "vcc5v0_host";
|
|
regulator-always-on;
|
|
|
|
From ecd43c736a17fd2b94fbf6906f82644d59308578 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:11 +0530
|
|
Subject: [PATCH] dt-bindings: arm: rockchip: Add Engicam PX30.Core C.TOUCH 2.0
|
|
10.1" OF
|
|
|
|
PX30.Core is an EDIMM SOM based on Rockchip PX30 from Engicam.
|
|
|
|
C.TOUCH 2.0 is a general purpose carrier board with capacitive
|
|
touch interface support.
|
|
|
|
10.1" OF is a capacitive touch 10.1" Open Frame panel solutions.
|
|
|
|
PX30.Core needs to mount on top of C.TOUCH 2.0 carrier with pluged
|
|
10.1" OF for creating complete PX30.Core C.TOUCH 2.0 10.1" Open Frame.
|
|
|
|
Add bindings for it.
|
|
|
|
Acked-by: Rob Herring <robh@kernel.org>
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-4-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
Documentation/devicetree/bindings/arm/rockchip.yaml | 6 ++++++
|
|
1 file changed, 6 insertions(+)
|
|
|
|
diff --git a/Documentation/devicetree/bindings/arm/rockchip.yaml b/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
index 37fd456170d2..ef4544ad6f82 100644
|
|
--- a/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
+++ b/Documentation/devicetree/bindings/arm/rockchip.yaml
|
|
@@ -76,6 +76,12 @@ properties:
|
|
- const: engicam,px30-core
|
|
- const: rockchip,px30
|
|
|
|
+ - description: Engicam PX30.Core C.TOUCH 2.0 10.1" Open Frame
|
|
+ items:
|
|
+ - const: engicam,px30-core-ctouch2-of10
|
|
+ - const: engicam,px30-core
|
|
+ - const: rockchip,px30
|
|
+
|
|
- description: Engicam PX30.Core EDIMM2.2 Starter Kit
|
|
items:
|
|
- const: engicam,px30-core-edimm2.2
|
|
|
|
From d01ef5f08562372dc033e10c57013441648e2e92 Mon Sep 17 00:00:00 2001
|
|
From: Jagan Teki <jagan@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:12 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Add Engicam PX30.Core C.TOUCH 2.0 10.1"
|
|
OF
|
|
|
|
PX30.Core is an EDIMM SOM based on Rockchip PX30 from Engicam.
|
|
|
|
C.TOUCH 2.0 is a general purpose carrier board with capacitive
|
|
touch interface support.
|
|
|
|
10.1" OF is a capacitive touch 10.1" Open Frame panel solutions.
|
|
|
|
PX30.Core needs to mount on top of C.TOUCH 2.0 carrier with pluged
|
|
10.1" OF for creating complete PX30.Core C.TOUCH 2.0 10.1" Open Frame.
|
|
|
|
Add support for it.
|
|
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-5-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/Makefile | 1 +
|
|
.../px30-engicam-px30-core-ctouch2-of10.dts | 77 +++++++++++++++++++
|
|
2 files changed, 78 insertions(+)
|
|
create mode 100644 arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-ctouch2-of10.dts
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
|
|
index 5a53979b7057..1ab55a124a87 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/Makefile
|
|
+++ b/arch/arm64/boot/dts/rockchip/Makefile
|
|
@@ -1,6 +1,7 @@
|
|
# SPDX-License-Identifier: GPL-2.0
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-evb.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-engicam-px30-core-ctouch2.dtb
|
|
+dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-engicam-px30-core-ctouch2-of10.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += px30-engicam-px30-core-edimm2.2.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-evb.dtb
|
|
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3308-roc-cc.dtb
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-ctouch2-of10.dts b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-ctouch2-of10.dts
|
|
new file mode 100644
|
|
index 000000000000..47aa30505a42
|
|
--- /dev/null
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-ctouch2-of10.dts
|
|
@@ -0,0 +1,77 @@
|
|
+// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
|
|
+/*
|
|
+ * Copyright (c) 2020 Fuzhou Rockchip Electronics Co., Ltd
|
|
+ * Copyright (c) 2020 Engicam srl
|
|
+ * Copyright (c) 2020 Amarula Solutions(India)
|
|
+ */
|
|
+
|
|
+/dts-v1/;
|
|
+#include "px30.dtsi"
|
|
+#include "px30-engicam-ctouch2.dtsi"
|
|
+#include "px30-engicam-px30-core.dtsi"
|
|
+
|
|
+/ {
|
|
+ model = "Engicam PX30.Core C.TOUCH 2.0 10.1\" Open Frame";
|
|
+ compatible = "engicam,px30-core-ctouch2-of10", "engicam,px30-core",
|
|
+ "rockchip,px30";
|
|
+
|
|
+ backlight: backlight {
|
|
+ compatible = "pwm-backlight";
|
|
+ pwms = <&pwm0 0 25000 0>;
|
|
+ };
|
|
+
|
|
+ chosen {
|
|
+ stdout-path = "serial2:115200n8";
|
|
+ };
|
|
+
|
|
+ panel {
|
|
+ compatible = "ampire,am-1280800n3tzqw-t00h";
|
|
+ backlight = <&backlight>;
|
|
+ power-supply = <&vcc3v3_lcd>;
|
|
+ data-mapping = "vesa-24";
|
|
+
|
|
+ port {
|
|
+ panel_in_lvds: endpoint {
|
|
+ remote-endpoint = <&lvds_out_panel>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&display_subsystem {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&dsi_dphy {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&lvds {
|
|
+ status = "okay";
|
|
+
|
|
+ ports {
|
|
+ port@1 {
|
|
+ reg = <1>;
|
|
+
|
|
+ lvds_out_panel: endpoint {
|
|
+ remote-endpoint = <&panel_in_lvds>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&vopb {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&vopb_mmu {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&vopl {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
+&vopl_mmu {
|
|
+ status = "okay";
|
|
+};
|
|
|
|
From 2e2289b3f7d5d2cef6839b8c4a2a306c215ef3c2 Mon Sep 17 00:00:00 2001
|
|
From: Suniel Mahesh <sunil@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:13 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Add WiFi support on px30-engicam
|
|
|
|
Engicam PX30 carrier boards like EDIMM2.2 and C.TOUCH2.0 have
|
|
an onboard Sterling-LWD Wifi/BT chip based on BCM43430 connected
|
|
on the SDIO bus.
|
|
|
|
The SDIO power sequnce is connacted with exteernal 32KHz oscillator
|
|
and it require 3V3 regulator input.
|
|
|
|
This patch adds WiFi enablement nodes for these respective boards.
|
|
|
|
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
|
|
Signed-off-by: Suniel Mahesh <sunil@amarulasolutions.com>
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-6-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../dts/rockchip/px30-engicam-common.dtsi | 45 +++++++++++++++++++
|
|
.../dts/rockchip/px30-engicam-ctouch2.dtsi | 12 +++++
|
|
.../px30-engicam-px30-core-edimm2.2.dts | 12 +++++
|
|
3 files changed, 69 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
index 8fdd7ff2fdf9..0e1a93ec3234 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
@@ -14,6 +14,51 @@ vcc5v0_sys: vcc5v0-sys {
|
|
regulator-min-microvolt = <5000000>;
|
|
regulator-max-microvolt = <5000000>;
|
|
};
|
|
+
|
|
+ sdio_pwrseq: sdio-pwrseq {
|
|
+ compatible = "mmc-pwrseq-simple";
|
|
+ clocks = <&xin32k>;
|
|
+ clock-names = "ext_clock";
|
|
+ post-power-on-delay-ms = <80>;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&wifi_enable_h>;
|
|
+ };
|
|
+
|
|
+ vcc3v3_rf_aux_mod: vcc3v3-rf-aux-mod {
|
|
+ compatible = "regulator-fixed";
|
|
+ regulator-name = "vcc3v3_rf_aux_mod";
|
|
+ regulator-min-microvolt = <3300000>;
|
|
+ regulator-max-microvolt = <3300000>;
|
|
+ regulator-always-on;
|
|
+ regulator-boot-on;
|
|
+ vin-supply = <&vcc5v0_sys>;
|
|
+ };
|
|
+
|
|
+ xin32k: xin32k {
|
|
+ compatible = "fixed-clock";
|
|
+ #clock-cells = <0>;
|
|
+ clock-frequency = <32768>;
|
|
+ clock-output-names = "xin32k";
|
|
+ };
|
|
+};
|
|
+
|
|
+&sdio {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+ bus-width = <4>;
|
|
+ clock-frequency = <50000000>;
|
|
+ cap-sdio-irq;
|
|
+ cap-sd-highspeed;
|
|
+ keep-power-in-suspend;
|
|
+ mmc-pwrseq = <&sdio_pwrseq>;
|
|
+ non-removable;
|
|
+ sd-uhs-sdr104;
|
|
+ status = "okay";
|
|
+
|
|
+ brcmf: wifi@1 {
|
|
+ compatible = "brcm,bcm4329-fmac";
|
|
+ reg = <1>;
|
|
+ };
|
|
};
|
|
|
|
&gmac {
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
index 58425b1e559f..d5708779c285 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
@@ -6,3 +6,15 @@
|
|
*/
|
|
|
|
#include "px30-engicam-common.dtsi"
|
|
+
|
|
+&pinctrl {
|
|
+ sdio-pwrseq {
|
|
+ wifi_enable_h: wifi-enable-h {
|
|
+ rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&sdio_pwrseq {
|
|
+ reset-gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
|
|
+};
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
index e54d1e480daa..913444548b59 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
@@ -19,3 +19,15 @@ chosen {
|
|
stdout-path = "serial2:115200n8";
|
|
};
|
|
};
|
|
+
|
|
+&pinctrl {
|
|
+ sdio-pwrseq {
|
|
+ wifi_enable_h: wifi-enable-h {
|
|
+ rockchip,pins = <1 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&sdio_pwrseq {
|
|
+ reset-gpios = <&gpio1 RK_PC3 GPIO_ACTIVE_LOW>;
|
|
+};
|
|
|
|
From fc75f80b0ad9c752c1b6577b08345f239c3bffa1 Mon Sep 17 00:00:00 2001
|
|
From: Suniel Mahesh <sunil@amarulasolutions.com>
|
|
Date: Mon, 9 Nov 2020 23:40:14 +0530
|
|
Subject: [PATCH] arm64: dts: rockchip: Add BT support on px30-engicam
|
|
|
|
Engicam PX30 carrier boards like EDIMM2.2 and C.TOUCH2.0 have
|
|
an onboard Sterling-LWD Wifi/BT chip based on BCM43430 connected
|
|
on the UART bus.
|
|
|
|
UART bus on the design routed via USB to UART CP20x bridge. This
|
|
bridge powered from 3V3 regualtor gpio.
|
|
|
|
This patch adds BT enablement nodes for these respective boards.
|
|
|
|
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
|
|
Signed-off-by: Suniel Mahesh <sunil@amarulasolutions.com>
|
|
Signed-off-by: Jagan Teki <jagan@amarulasolutions.com>
|
|
Link: https://lore.kernel.org/r/20201109181017.206834-7-jagan@amarulasolutions.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../arm64/boot/dts/rockchip/px30-engicam-common.dtsi | 12 ++++++++++++
|
|
.../boot/dts/rockchip/px30-engicam-ctouch2.dtsi | 10 ++++++++++
|
|
.../dts/rockchip/px30-engicam-px30-core-edimm2.2.dts | 10 ++++++++++
|
|
3 files changed, 32 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
index 0e1a93ec3234..08b0b9fbcbc9 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-common.dtsi
|
|
@@ -24,6 +24,18 @@ sdio_pwrseq: sdio-pwrseq {
|
|
pinctrl-0 = <&wifi_enable_h>;
|
|
};
|
|
|
|
+ vcc3v3_btreg: vcc3v3-btreg {
|
|
+ compatible = "regulator-gpio";
|
|
+ enable-active-high;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&bt_enable_h>;
|
|
+ regulator-name = "btreg-gpio-supply";
|
|
+ regulator-min-microvolt = <3300000>;
|
|
+ regulator-max-microvolt = <3300000>;
|
|
+ regulator-always-on;
|
|
+ states = <3300000 0x0>;
|
|
+ };
|
|
+
|
|
vcc3v3_rf_aux_mod: vcc3v3-rf-aux-mod {
|
|
compatible = "regulator-fixed";
|
|
regulator-name = "vcc3v3_rf_aux_mod";
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi b/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
index d5708779c285..bf10a3d29fca 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-ctouch2.dtsi
|
|
@@ -8,6 +8,12 @@
|
|
#include "px30-engicam-common.dtsi"
|
|
|
|
&pinctrl {
|
|
+ bt {
|
|
+ bt_enable_h: bt-enable-h {
|
|
+ rockchip,pins = <1 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
+ };
|
|
+ };
|
|
+
|
|
sdio-pwrseq {
|
|
wifi_enable_h: wifi-enable-h {
|
|
rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
@@ -18,3 +24,7 @@ wifi_enable_h: wifi-enable-h {
|
|
&sdio_pwrseq {
|
|
reset-gpios = <&gpio1 RK_PC2 GPIO_ACTIVE_LOW>;
|
|
};
|
|
+
|
|
+&vcc3v3_btreg {
|
|
+ enable-gpio = <&gpio1 RK_PC3 GPIO_ACTIVE_HIGH>;
|
|
+};
|
|
diff --git a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
index 913444548b59..d759478e1c84 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
+++ b/arch/arm64/boot/dts/rockchip/px30-engicam-px30-core-edimm2.2.dts
|
|
@@ -21,6 +21,12 @@ chosen {
|
|
};
|
|
|
|
&pinctrl {
|
|
+ bt {
|
|
+ bt_enable_h: bt-enable-h {
|
|
+ rockchip,pins = <1 RK_PC2 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
+ };
|
|
+ };
|
|
+
|
|
sdio-pwrseq {
|
|
wifi_enable_h: wifi-enable-h {
|
|
rockchip,pins = <1 RK_PC3 RK_FUNC_GPIO &pcfg_pull_none>;
|
|
@@ -31,3 +37,7 @@ wifi_enable_h: wifi-enable-h {
|
|
&sdio_pwrseq {
|
|
reset-gpios = <&gpio1 RK_PC3 GPIO_ACTIVE_LOW>;
|
|
};
|
|
+
|
|
+&vcc3v3_btreg {
|
|
+ enable-gpio = <&gpio1 RK_PC2 GPIO_ACTIVE_HIGH>;
|
|
+};
|
|
|
|
From c6c8b0eb1d8c2b9d5304d4ab499a85e547191c2e Mon Sep 17 00:00:00 2001
|
|
From: Alexis Ballier <aballier@gentoo.org>
|
|
Date: Thu, 22 Oct 2020 13:35:32 +0200
|
|
Subject: [PATCH] arm64: dts: rockchip: Properly define the type C connector on
|
|
rk3399-orangepi
|
|
|
|
Tested:
|
|
- USB3 Gigabit adapter
|
|
- USB2 mass storage
|
|
|
|
The wiring is the same as the pinebook pro according to the schematics,
|
|
thus this patch is heavily based on its dts.
|
|
|
|
Signed-off-by: Alexis Ballier <aballier@gentoo.org>
|
|
Cc: devicetree@vger.kernel.org
|
|
Cc: Heiko Stuebner <heiko@sntech.de>
|
|
Cc: linux-arm-kernel@lists.infradead.org
|
|
Cc: linux-rockchip@lists.infradead.org
|
|
Cc: linux-kernel@vger.kernel.org
|
|
Link: https://lore.kernel.org/r/20201022113532.18470-1-aballier@gentoo.org
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../boot/dts/rockchip/rk3399-orangepi.dts | 62 ++++++++++++++++++-
|
|
1 file changed, 61 insertions(+), 1 deletion(-)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts b/arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts
|
|
index 6163ae8063a7..ad7c4d00888f 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399-orangepi.dts
|
|
@@ -7,6 +7,7 @@
|
|
|
|
#include "dt-bindings/pwm/pwm.h"
|
|
#include "dt-bindings/input/input.h"
|
|
+#include "dt-bindings/usb/pd.h"
|
|
#include "rk3399.dtsi"
|
|
#include "rk3399-opp.dtsi"
|
|
|
|
@@ -531,6 +532,43 @@ fusb302@22 {
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&chg_cc_int_l>;
|
|
vbus-supply = <&vbus_typec>;
|
|
+
|
|
+ typec_con: connector {
|
|
+ compatible = "usb-c-connector";
|
|
+ data-role = "host";
|
|
+ label = "USB-C";
|
|
+ op-sink-microwatt = <1000000>;
|
|
+ power-role = "dual";
|
|
+ sink-pdos =
|
|
+ <PDO_FIXED(5000, 2500, PDO_FIXED_USB_COMM)>;
|
|
+ source-pdos =
|
|
+ <PDO_FIXED(5000, 1400, PDO_FIXED_USB_COMM)>;
|
|
+ try-power-role = "sink";
|
|
+
|
|
+ ports {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ port@0 {
|
|
+ reg = <0>;
|
|
+ typec_hs: endpoint {
|
|
+ remote-endpoint = <&u2phy0_typec_hs>;
|
|
+ };
|
|
+ };
|
|
+ port@1 {
|
|
+ reg = <1>;
|
|
+ typec_ss: endpoint {
|
|
+ remote-endpoint = <&tcphy0_typec_ss>;
|
|
+ };
|
|
+ };
|
|
+ port@2 {
|
|
+ reg = <2>;
|
|
+ typec_dp: endpoint {
|
|
+ remote-endpoint = <&tcphy0_typec_dp>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+ };
|
|
};
|
|
};
|
|
|
|
@@ -717,6 +755,22 @@ &tcphy0 {
|
|
status = "okay";
|
|
};
|
|
|
|
+&tcphy0_dp {
|
|
+ port {
|
|
+ tcphy0_typec_dp: endpoint {
|
|
+ remote-endpoint = <&typec_dp>;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&tcphy0_usb3 {
|
|
+ port {
|
|
+ tcphy0_typec_ss: endpoint {
|
|
+ remote-endpoint = <&typec_ss>;
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
&tcphy1 {
|
|
status = "okay";
|
|
};
|
|
@@ -739,6 +793,12 @@ u2phy0_host: host-port {
|
|
phy-supply = <&vcc5v0_host>;
|
|
status = "okay";
|
|
};
|
|
+
|
|
+ port {
|
|
+ u2phy0_typec_hs: endpoint {
|
|
+ remote-endpoint = <&typec_hs>;
|
|
+ };
|
|
+ };
|
|
};
|
|
|
|
&u2phy1 {
|
|
@@ -799,7 +859,7 @@ &usbdrd3_0 {
|
|
|
|
&usbdrd_dwc3_0 {
|
|
status = "okay";
|
|
- dr_mode = "otg";
|
|
+ dr_mode = "host";
|
|
};
|
|
|
|
&usbdrd3_1 {
|
|
|
|
From 4d3a2f9408852759d9ce29942492b71404c313a9 Mon Sep 17 00:00:00 2001
|
|
From: Shunqian Zheng <zhengsq@rock-chips.com>
|
|
Date: Tue, 20 Oct 2020 16:38:49 -0300
|
|
Subject: [PATCH] arm64: dts: rockchip: add isp0 node for rk3399
|
|
|
|
RK3399 has two ISPs, but only isp0 was tested.
|
|
Add isp0 node in rk3399 dtsi
|
|
|
|
Verified with:
|
|
make ARCH=arm64 dtbs_check DT_SCHEMA_FILES=Documentation/devicetree/bindings/media/rockchip-isp1.yaml
|
|
|
|
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
|
|
Signed-off-by: Jacob Chen <jacob2.chen@rock-chips.com>
|
|
Signed-off-by: Helen Koike <helen.koike@collabora.com>
|
|
Link: https://lore.kernel.org/r/20201020193850.1460644-9-helen.koike@collabora.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/rk3399.dtsi | 26 ++++++++++++++++++++++++
|
|
1 file changed, 26 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
|
|
index 865729ec867f..f5dee5f447bb 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
|
|
@@ -1726,6 +1726,32 @@ vopb_mmu: iommu@ff903f00 {
|
|
status = "disabled";
|
|
};
|
|
|
|
+ isp0: isp0@ff910000 {
|
|
+ compatible = "rockchip,rk3399-cif-isp";
|
|
+ reg = <0x0 0xff910000 0x0 0x4000>;
|
|
+ interrupts = <GIC_SPI 43 IRQ_TYPE_LEVEL_HIGH 0>;
|
|
+ clocks = <&cru SCLK_ISP0>,
|
|
+ <&cru ACLK_ISP0_WRAPPER>,
|
|
+ <&cru HCLK_ISP0_WRAPPER>;
|
|
+ clock-names = "isp", "aclk", "hclk";
|
|
+ iommus = <&isp0_mmu>;
|
|
+ phys = <&mipi_dphy_rx0>;
|
|
+ phy-names = "dphy";
|
|
+ power-domains = <&power RK3399_PD_ISP0>;
|
|
+ status = "disabled";
|
|
+
|
|
+ ports {
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+
|
|
+ port@0 {
|
|
+ reg = <0>;
|
|
+ #address-cells = <1>;
|
|
+ #size-cells = <0>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
isp0_mmu: iommu@ff914000 {
|
|
compatible = "rockchip,iommu";
|
|
reg = <0x0 0xff914000 0x0 0x100>, <0x0 0xff915000 0x0 0x100>;
|
|
|
|
From 0c65b8b53cf672fc0a61187831cb5afe4324541d Mon Sep 17 00:00:00 2001
|
|
From: Eddie Cai <eddie.cai.linux@gmail.com>
|
|
Date: Tue, 20 Oct 2020 16:38:50 -0300
|
|
Subject: [PATCH] arm64: dts: rockchip: add isp and sensors for Scarlet
|
|
|
|
Enable ISP and camera sensor ov2685 and ov5695 for Scarlet Chromebook
|
|
|
|
Verified with:
|
|
make ARCH=arm64 dtbs_check
|
|
|
|
Signed-off-by: Shunqian Zheng <zhengsq@rock-chips.com>
|
|
Signed-off-by: Eddie Cai <eddie.cai.linux@gmail.com>
|
|
Signed-off-by: Tomasz Figa <tfiga@chromium.org>
|
|
Signed-off-by: Helen Koike <helen.koike@collabora.com>
|
|
Reviewed-by: Tomasz Figa <tfiga@chromium.org>
|
|
Link: https://lore.kernel.org/r/20201020193850.1460644-10-helen.koike@collabora.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
.../boot/dts/rockchip/rk3399-gru-scarlet.dtsi | 74 +++++++++++++++++++
|
|
1 file changed, 74 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-gru-scarlet.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-gru-scarlet.dtsi
|
|
index 60cd1c18cd4e..beee5fbb3443 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3399-gru-scarlet.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399-gru-scarlet.dtsi
|
|
@@ -296,6 +296,52 @@ camera: &i2c7 {
|
|
|
|
/* 24M mclk is shared between world and user cameras */
|
|
pinctrl-0 = <&i2c7_xfer &test_clkout1>;
|
|
+
|
|
+ /* Rear-facing camera */
|
|
+ wcam: camera@36 {
|
|
+ compatible = "ovti,ov5695";
|
|
+ reg = <0x36>;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&wcam_rst>;
|
|
+
|
|
+ clocks = <&cru SCLK_TESTCLKOUT1>;
|
|
+ clock-names = "xvclk";
|
|
+
|
|
+ avdd-supply = <&pp2800_cam>;
|
|
+ dvdd-supply = <&pp1250_cam>;
|
|
+ dovdd-supply = <&pp1800_s0>;
|
|
+ reset-gpios = <&gpio2 5 GPIO_ACTIVE_LOW>;
|
|
+
|
|
+ port {
|
|
+ wcam_out: endpoint {
|
|
+ remote-endpoint = <&mipi_in_wcam>;
|
|
+ data-lanes = <1 2>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+
|
|
+ /* Front-facing camera */
|
|
+ ucam: camera@3c {
|
|
+ compatible = "ovti,ov2685";
|
|
+ reg = <0x3c>;
|
|
+ pinctrl-names = "default";
|
|
+ pinctrl-0 = <&ucam_rst>;
|
|
+
|
|
+ clocks = <&cru SCLK_TESTCLKOUT1>;
|
|
+ clock-names = "xvclk";
|
|
+
|
|
+ avdd-supply = <&pp2800_cam>;
|
|
+ dovdd-supply = <&pp1800_s0>;
|
|
+ dvdd-supply = <&pp1800_s0>;
|
|
+ reset-gpios = <&gpio2 3 GPIO_ACTIVE_LOW>;
|
|
+
|
|
+ port {
|
|
+ ucam_out: endpoint {
|
|
+ remote-endpoint = <&mipi_in_ucam>;
|
|
+ data-lanes = <1>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
};
|
|
|
|
&cdn_dp {
|
|
@@ -353,10 +399,38 @@ &io_domains {
|
|
gpio1830-supply = <&pp1800_s0>; /* APIO4_VDD; 4c 4d */
|
|
};
|
|
|
|
+&isp0 {
|
|
+ status = "okay";
|
|
+
|
|
+ ports {
|
|
+ port@0 {
|
|
+ mipi_in_wcam: endpoint@0 {
|
|
+ reg = <0>;
|
|
+ remote-endpoint = <&wcam_out>;
|
|
+ data-lanes = <1 2>;
|
|
+ };
|
|
+
|
|
+ mipi_in_ucam: endpoint@1 {
|
|
+ reg = <1>;
|
|
+ remote-endpoint = <&ucam_out>;
|
|
+ data-lanes = <1>;
|
|
+ };
|
|
+ };
|
|
+ };
|
|
+};
|
|
+
|
|
+&isp0_mmu {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&max98357a {
|
|
sdmode-gpios = <&gpio0 2 GPIO_ACTIVE_HIGH>;
|
|
};
|
|
|
|
+&mipi_dphy_rx0 {
|
|
+ status = "okay";
|
|
+};
|
|
+
|
|
&mipi_dsi {
|
|
status = "okay";
|
|
clock-master;
|
|
|
|
From 6e7e897fb23b7291fbabda014628aba1a71dff79 Mon Sep 17 00:00:00 2001
|
|
From: Vicente Bergas <vicencb@gmail.com>
|
|
Date: Tue, 1 Dec 2020 16:41:30 +0100
|
|
Subject: [PATCH] arm64: dts: rockchip: fix supplies on rk3399-rock-pi-4
|
|
|
|
Based on the board schematics at
|
|
https://dl.radxa.com/rockpi4/docs/hw/rockpi4/rockpi_4c_v12_sch_20200620.pdf
|
|
on page 18:
|
|
vcc_lan is not controllable by software, it is just an analog LC filter.
|
|
Because of this, it can not be turned off-in-suspend.
|
|
|
|
and on page 17:
|
|
vcc_cam and vcc_mipi are not voltage regulators, they are just switches.
|
|
So, the voltage range is not applicable.
|
|
This silences an error message about not being able to adjust the voltage.
|
|
|
|
Signed-off-by: Vicente Bergas <vicencb@gmail.com>
|
|
Link: https://lore.kernel.org/r/20201201154132.1286-2-vicencb@gmail.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi | 8 --------
|
|
1 file changed, 8 deletions(-)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
index 678a336010bf..06df2397bbb4 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
@@ -111,10 +111,6 @@ vcc_lan: vcc3v3-phy-regulator {
|
|
regulator-boot-on;
|
|
regulator-min-microvolt = <3300000>;
|
|
regulator-max-microvolt = <3300000>;
|
|
-
|
|
- regulator-state-mem {
|
|
- regulator-off-in-suspend;
|
|
- };
|
|
};
|
|
|
|
vdd_log: vdd-log {
|
|
@@ -362,8 +358,6 @@ vcc_cam: SWITCH_REG1 {
|
|
regulator-name = "vcc_cam";
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
- regulator-min-microvolt = <3300000>;
|
|
- regulator-max-microvolt = <3300000>;
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
};
|
|
@@ -373,8 +367,6 @@ vcc_mipi: SWITCH_REG2 {
|
|
regulator-name = "vcc_mipi";
|
|
regulator-always-on;
|
|
regulator-boot-on;
|
|
- regulator-min-microvolt = <3300000>;
|
|
- regulator-max-microvolt = <3300000>;
|
|
regulator-state-mem {
|
|
regulator-off-in-suspend;
|
|
};
|
|
|
|
From 7625c015b090c9519be3f8bd803707cb40cc78cb Mon Sep 17 00:00:00 2001
|
|
From: Vicente Bergas <vicencb@gmail.com>
|
|
Date: Tue, 1 Dec 2020 16:41:31 +0100
|
|
Subject: [PATCH] arm64: dts: rockchip: fix I2S conflict on rk3399-rock-pi-4
|
|
|
|
Based on the board schematics at
|
|
https://dl.radxa.com/rockpi4/docs/hw/rockpi4/rockpi_4c_v12_sch_20200620.pdf
|
|
on page 14:
|
|
Only two channels of I2S are connected and the extra
|
|
I2S pins are in conflict with other functions like USB power.
|
|
|
|
Signed-off-by: Vicente Bergas <vicencb@gmail.com>
|
|
Link: https://lore.kernel.org/r/20201201154132.1286-3-vicencb@gmail.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi | 5 +++--
|
|
1 file changed, 3 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
index 06df2397bbb4..63b029a543c1 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
@@ -432,8 +432,9 @@ &i2c4 {
|
|
};
|
|
|
|
&i2s0 {
|
|
- rockchip,playback-channels = <8>;
|
|
- rockchip,capture-channels = <8>;
|
|
+ pinctrl-0 = <&i2s0_2ch_bus>;
|
|
+ rockchip,capture-channels = <2>;
|
|
+ rockchip,playback-channels = <2>;
|
|
status = "okay";
|
|
};
|
|
|
|
|
|
From fbefd7709351bf494227d8f17c1baf65e97a01a1 Mon Sep 17 00:00:00 2001
|
|
From: Vicente Bergas <vicencb@gmail.com>
|
|
Date: Tue, 1 Dec 2020 16:41:32 +0100
|
|
Subject: [PATCH] arm64: dts: rockchip: use USB host by default on
|
|
rk3399-rock-pi-4
|
|
|
|
Based on the board schematics at
|
|
https://dl.radxa.com/rockpi4/docs/hw/rockpi4/rockpi_4c_v12_sch_20200620.pdf
|
|
on page 19 there is an USB Type-A receptacle being used as an USB-OTG port.
|
|
|
|
But the Type-A connector is not valid for OTG operation, for this reason
|
|
there is a switch to select host or device role.
|
|
This is non-compliant and error prone because switching is manual.
|
|
So, use host mode as it corresponds for a Type-A receptacle.
|
|
|
|
Signed-off-by: Vicente Bergas <vicencb@gmail.com>
|
|
Link: https://lore.kernel.org/r/20201201154132.1286-4-vicencb@gmail.com
|
|
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi | 2 +-
|
|
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
index 63b029a543c1..fb7599f07af4 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rock-pi-4.dtsi
|
|
@@ -673,7 +673,7 @@ &usbdrd3_0 {
|
|
|
|
&usbdrd_dwc3_0 {
|
|
status = "okay";
|
|
- dr_mode = "otg";
|
|
+ dr_mode = "host";
|
|
};
|
|
|
|
&usbdrd3_1 {
|