mirror of
https://github.com/armbian/build.git
synced 2025-08-15 15:46:58 +02:00
* Fix wifi drivers on kernel v6.16 These patches can get deleted after merged upstream. * initial commit * fix header * remove ssv6051 driver --------- Co-authored-by: amazingfate <liujianfeng1994@gmail.com>
96 lines
3.1 KiB
Diff
96 lines
3.1 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: ssp97 <zhang@yuanpai.win>
|
|
Date: Fri, 11 Apr 2025 23:35:49 +0800
|
|
Subject: rk3308: fix uart dma.
|
|
|
|
Signed-off-by: ssp97 <zhang@yuanpai.win>
|
|
---
|
|
arch/arm64/boot/dts/rockchip/rk3308.dtsi | 10 +++++++
|
|
drivers/soc/rockchip/grf.c | 14 ++++++++++
|
|
2 files changed, 24 insertions(+)
|
|
|
|
diff --git a/arch/arm64/boot/dts/rockchip/rk3308.dtsi b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
|
|
index 111111111111..222222222222 100644
|
|
--- a/arch/arm64/boot/dts/rockchip/rk3308.dtsi
|
|
+++ b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
|
|
@@ -323,6 +323,8 @@ uart0: serial@ff0a0000 {
|
|
clock-names = "baudclk", "apb_pclk";
|
|
reg-shift = <2>;
|
|
reg-io-width = <4>;
|
|
+ dmas = <&dmac0 4>, <&dmac0 5>;
|
|
+ dma-names = "tx", "rx";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart0_xfer &uart0_cts &uart0_rts>;
|
|
status = "disabled";
|
|
@@ -336,6 +338,8 @@ uart1: serial@ff0b0000 {
|
|
clock-names = "baudclk", "apb_pclk";
|
|
reg-shift = <2>;
|
|
reg-io-width = <4>;
|
|
+ dmas = <&dmac0 6>, <&dmac0 7>;
|
|
+ dma-names = "tx", "rx";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart1_xfer &uart1_cts &uart1_rts>;
|
|
status = "disabled";
|
|
@@ -349,6 +353,8 @@ uart2: serial@ff0c0000 {
|
|
clock-names = "baudclk", "apb_pclk";
|
|
reg-shift = <2>;
|
|
reg-io-width = <4>;
|
|
+ dmas = <&dmac0 8>, <&dmac0 9>;
|
|
+ dma-names = "tx", "rx";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart2m0_xfer>;
|
|
status = "disabled";
|
|
@@ -362,6 +368,8 @@ uart3: serial@ff0d0000 {
|
|
clock-names = "baudclk", "apb_pclk";
|
|
reg-shift = <2>;
|
|
reg-io-width = <4>;
|
|
+ dmas = <&dmac0 10>, <&dmac0 11>;
|
|
+ dma-names = "tx", "rx";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart3_xfer>;
|
|
status = "disabled";
|
|
@@ -375,6 +383,8 @@ uart4: serial@ff0e0000 {
|
|
clock-names = "baudclk", "apb_pclk";
|
|
reg-shift = <2>;
|
|
reg-io-width = <4>;
|
|
+ dmas = <&dmac1 18>, <&dmac1 19>;
|
|
+ dma-names = "tx", "rx";
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&uart4_xfer &uart4_cts &uart4_rts>;
|
|
status = "disabled";
|
|
diff --git a/drivers/soc/rockchip/grf.c b/drivers/soc/rockchip/grf.c
|
|
index 111111111111..222222222222 100644
|
|
--- a/drivers/soc/rockchip/grf.c
|
|
+++ b/drivers/soc/rockchip/grf.c
|
|
@@ -88,6 +88,17 @@ static const struct rockchip_grf_info rk3328_grf __initconst = {
|
|
.num_values = ARRAY_SIZE(rk3328_defaults),
|
|
};
|
|
|
|
+#define RK3308_GRF_SOC_CON3 0x30c
|
|
+
|
|
+static const struct rockchip_grf_value rk3308_defaults[] __initconst = {
|
|
+ { "uart dma mask", RK3308_GRF_SOC_CON3, HIWORD_UPDATE(0, 0x1f, 10) },
|
|
+};
|
|
+
|
|
+static const struct rockchip_grf_info rk3308_grf __initconst = {
|
|
+ .values = rk3308_defaults,
|
|
+ .num_values = ARRAY_SIZE(rk3308_defaults),
|
|
+};
|
|
+
|
|
#define RK3368_GRF_SOC_CON15 0x43c
|
|
|
|
static const struct rockchip_grf_value rk3368_defaults[] __initconst = {
|
|
@@ -173,6 +184,9 @@ static const struct of_device_id rockchip_grf_dt_match[] __initconst = {
|
|
}, {
|
|
.compatible = "rockchip,rk3328-grf",
|
|
.data = (void *)&rk3328_grf,
|
|
+ }, {
|
|
+ .compatible = "rockchip,rk3308-grf",
|
|
+ .data = (void *)&rk3308_grf,
|
|
}, {
|
|
.compatible = "rockchip,rk3368-grf",
|
|
.data = (void *)&rk3368_grf,
|
|
--
|
|
Armbian
|
|
|