rockchip64/current: rewrite-kernel-patches, no changes

This commit is contained in:
Ricardo Pardini 2025-01-04 00:28:28 +00:00 committed by Igor
parent fb979d96d6
commit d5f06f99bf
19 changed files with 104 additions and 116 deletions

View File

@ -1,14 +1,14 @@
From 65e256b55e9f9d503647f53d0ffc68b283d70a88 Mon Sep 17 00:00:00 2001
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino <paolo.sabatino@gmail.com>
Date: Wed, 27 Nov 2024 19:06:49 +0100
Subject: [PATCH] rk3308: fixes for rock pi s dts
Subject: rk3308: fixes for rock pi s dts
---
.../boot/dts/rockchip/rk3308-rock-pi-s.dts | 73 +++++++++++++++++++
arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts | 73 ++++++++++
1 file changed, 73 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts b/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts
index 62d18ca769a1..b1a77910fffb 100644
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3308-rock-pi-s.dts
@@ -48,6 +48,54 @@ blue-led {
@ -117,5 +117,5 @@ index 62d18ca769a1..b1a77910fffb 100644
status = "okay";
--
2.43.0
Armbian

View File

@ -1,7 +1,7 @@
From b95c594a0969e469ef627c3e1724566dc5aa3016 Mon Sep 17 00:00:00 2001
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: ARC-MX <wmx129674@126.com>
Date: Thu, 25 Jul 2024 17:44:54 +0800
Subject: [PATCH] drivers:regulator:fan53555:add new device chip id
Subject: drivers:regulator:fan53555:add new device chip id
drivers:regulator:fan53555
@ -17,7 +17,7 @@ Signed-off-by: ARC-MX <wmx129674@126.com>
1 file changed, 5 insertions(+)
diff --git a/drivers/regulator/fan53555.c b/drivers/regulator/fan53555.c
index 17c9bf204..c8a2e9405 100644
index 111111111111..222222222222 100644
--- a/drivers/regulator/fan53555.c
+++ b/drivers/regulator/fan53555.c
@@ -113,6 +113,7 @@ enum {
@ -40,5 +40,5 @@ index 17c9bf204..c8a2e9405 100644
dev_err(di->dev,
"Chip ID %d with rev %d not supported!\n",
--
2.25.1
Armbian

View File

@ -1,7 +1,8 @@
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Maxim Medvedev <redrathnure@gmail.com>
Date: Mon, 1 Jan 2024 21:50:10 +0000
Subject: HDMI EDID records for 800x480 resolution (a MKS IPS50 screen and similar)
Subject: HDMI EDID records for 800x480 resolution (a MKS IPS50 screen and
similar)
---
drivers/gpu/drm/drm_edid.c | 12 +++++++++-
@ -11,12 +12,10 @@ Subject: HDMI EDID records for 800x480 resolution (a MKS IPS50 screen and simila
4 files changed, 15 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index a491280ca48c..6d74e4b62dcf 100644
index 111111111111..222222222222 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -1536,10 +1536,20 @@ static const struct drm_display_mode edid_cea_modes_193[] = {
/* 219 - 4096x2160@120Hz 256:135 */
{ DRM_MODE("4096x2160", DRM_MODE_TYPE_DRIVER, 1188000, 4096, 4184,
@@ -1550,6 +1550,16 @@ static const struct drm_display_mode edid_cea_modes_193[] = {
4272, 4400, 0, 2160, 2168, 2178, 2250, 0,
DRM_MODE_FLAG_PHSYNC | DRM_MODE_FLAG_PVSYNC),
.picture_aspect_ratio = HDMI_PICTURE_ASPECT_256_135, },
@ -33,11 +32,7 @@ index a491280ca48c..6d74e4b62dcf 100644
};
/*
* HDMI 1.4 4k modes. Index using the VIC.
*/
@@ -4167,11 +4177,11 @@ static bool drm_edid_has_cta_extension(const struct drm_edid *drm_edid)
}
@@ -4215,7 +4225,7 @@ static bool drm_edid_has_cta_extension(const struct drm_edid *drm_edid)
static __always_inline const struct drm_display_mode *cea_mode_for_vic(u8 vic)
{
BUILD_BUG_ON(1 + ARRAY_SIZE(edid_cea_modes_1) - 1 != 127);
@ -46,15 +41,11 @@ index a491280ca48c..6d74e4b62dcf 100644
if (vic >= 1 && vic < 1 + ARRAY_SIZE(edid_cea_modes_1))
return &edid_cea_modes_1[vic - 1];
if (vic >= 193 && vic < 193 + ARRAY_SIZE(edid_cea_modes_193))
return &edid_cea_modes_193[vic - 193];
diff --git a/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c b/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c
index db774d97918f..375fbc8a8747 100644
index 111111111111..222222222222 100644
--- a/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c
@@ -293,10 +293,11 @@ struct inno_hdmi_phy_drv_data {
static const struct pre_pll_config pre_pll_cfg_table[] = {
{ 25175000, 25175000, 3, 125, 3, 1, 1, 1, 3, 3, 4, 0, 0xe00000},
@@ -295,6 +295,7 @@ static const struct pre_pll_config pre_pll_cfg_table[] = {
{ 25175000, 31468750, 1, 41, 0, 3, 3, 1, 3, 3, 4, 0, 0xf5554f},
{ 27000000, 27000000, 1, 36, 0, 3, 3, 1, 2, 3, 4, 0, 0x0},
{ 27000000, 33750000, 1, 45, 0, 3, 3, 1, 3, 3, 4, 0, 0x0},
@ -62,15 +53,11 @@ index db774d97918f..375fbc8a8747 100644
{ 31500000, 31500000, 1, 42, 0, 3, 3, 1, 2, 3, 4, 0, 0x0},
{ 31500000, 39375000, 1, 105, 1, 3, 3, 10, 0, 3, 4, 0, 0x0},
{ 33750000, 33750000, 1, 45, 0, 3, 3, 1, 2, 3, 4, 0, 0x0},
{ 33750000, 42187500, 1, 169, 2, 3, 3, 15, 0, 3, 4, 0, 0x0},
{ 35500000, 35500000, 1, 71, 2, 2, 2, 6, 0, 3, 4, 0, 0x0},
diff --git a/drivers/video/hdmi.c b/drivers/video/hdmi.c
index 03c7f27dde49..8d68d34ce023 100644
index 111111111111..222222222222 100644
--- a/drivers/video/hdmi.c
+++ b/drivers/video/hdmi.c
@@ -1113,10 +1113,12 @@ hdmi_picture_aspect_get_name(enum hdmi_picture_aspect picture_aspect)
return "16:9";
case HDMI_PICTURE_ASPECT_64_27:
@@ -1115,6 +1115,8 @@ hdmi_picture_aspect_get_name(enum hdmi_picture_aspect picture_aspect)
return "64:27";
case HDMI_PICTURE_ASPECT_256_135:
return "256:135";
@ -79,15 +66,11 @@ index 03c7f27dde49..8d68d34ce023 100644
case HDMI_PICTURE_ASPECT_RESERVED:
return "Reserved";
}
return "Invalid";
}
diff --git a/include/linux/hdmi.h b/include/linux/hdmi.h
index 3bb87bf6bc65..be61a7954847 100644
index 111111111111..222222222222 100644
--- a/include/linux/hdmi.h
+++ b/include/linux/hdmi.h
@@ -97,10 +97,11 @@ enum hdmi_picture_aspect {
HDMI_PICTURE_ASPECT_NONE,
HDMI_PICTURE_ASPECT_4_3,
@@ -108,6 +108,7 @@ enum hdmi_picture_aspect {
HDMI_PICTURE_ASPECT_16_9,
HDMI_PICTURE_ASPECT_64_27,
HDMI_PICTURE_ASPECT_256_135,
@ -95,8 +78,6 @@ index 3bb87bf6bc65..be61a7954847 100644
HDMI_PICTURE_ASPECT_RESERVED,
};
enum hdmi_active_aspect {
HDMI_ACTIVE_ASPECT_16_9_TOP = 2,
--
Created with Armbian build tools https://github.com/armbian/build
Armbian

View File

@ -72,7 +72,7 @@ diff --git a/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c b/drivers/phy/rockchi
index 111111111111..222222222222 100644
--- a/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c
+++ b/drivers/phy/rockchip/phy-rockchip-inno-hdmi.c
@@ -464,6 +464,77 @@ static const struct pre_pll_config pre_pll_cfg_table[] = {
@@ -465,6 +465,77 @@ static const struct pre_pll_config pre_pll_cfg_table[] = {
{594000000, 297000000, 1, 99, 0, 1, 1, 1, 0, 1, 1, 0, 0x0},
{594000000, 371250000, 4, 495, 0, 3, 1, 1, 3, 0, 0, 1, 0x0},
{594000000, 594000000, 1, 99, 0, 2, 0, 1, 0, 1, 1, 0, 0x0},

View File

@ -18,7 +18,7 @@ diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/eth
index 111111111111..222222222222 100644
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
@@ -5851,27 +5851,15 @@ static void stmmac_set_rx_mode(struct net_device *dev)
@@ -5855,27 +5855,15 @@ static void stmmac_set_rx_mode(struct net_device *dev)
static int stmmac_change_mtu(struct net_device *dev, int new_mtu)
{
struct stmmac_priv *priv = netdev_priv(dev);

View File

@ -4,12 +4,16 @@ Date: Fri, 12 May 2023 22:30:14 +0000
Subject: Custom st7796 display module
---
drivers/staging/fbtft/Kconfig | 6 +
drivers/staging/fbtft/Makefile | 1 +
drivers/staging/fbtft/fb_st7796.c | 154 ++++++++++
3 files changed, 161 insertions(+)
diff --git a/drivers/staging/fbtft/Kconfig b/drivers/staging/fbtft/Kconfig
index 4d29e8c1014..265c7e3fe76 100644
index 111111111111..222222222222 100644
--- a/drivers/staging/fbtft/Kconfig
+++ b/drivers/staging/fbtft/Kconfig
@@ -82,6 +82,12 @@ config FB_TFT_ILI9481
@@ -79,6 +79,12 @@ config FB_TFT_ILI9481
help
Generic Framebuffer support for ILI9481
@ -23,7 +27,7 @@ index 4d29e8c1014..265c7e3fe76 100644
tristate "FB driver for the ILI9486 LCD Controller"
depends on FB_TFT
diff --git a/drivers/staging/fbtft/Makefile b/drivers/staging/fbtft/Makefile
index e9cdf0f0a7d..3c62b33e596 100644
index 111111111111..222222222222 100644
--- a/drivers/staging/fbtft/Makefile
+++ b/drivers/staging/fbtft/Makefile
@@ -16,6 +16,7 @@ obj-$(CONFIG_FB_TFT_ILI9325) += fb_ili9325.o
@ -36,7 +40,7 @@ index e9cdf0f0a7d..3c62b33e596 100644
obj-$(CONFIG_FB_TFT_RA8875) += fb_ra8875.o
diff --git a/drivers/staging/fbtft/fb_st7796.c b/drivers/staging/fbtft/fb_st7796.c
new file mode 100755
index 00000000000..c7deedbea69
index 000000000000..111111111111
--- /dev/null
+++ b/drivers/staging/fbtft/fb_st7796.c
@@ -0,0 +1,154 @@
@ -194,3 +198,6 @@ index 00000000000..c7deedbea69
+MODULE_DESCRIPTION("FB driver for the ST7796 LCD display controller");
+MODULE_AUTHOR("Christian Vogelgsang + somebody from makerbase");
+MODULE_LICENSE("GPL");
--
Armbian

View File

@ -10,11 +10,25 @@ Subject: [ARCHEOLOGY] rockchip64-edge: disable hantro g1 h264 decoder on
> X-Git-Archeology: Subject: rockchip64-edge: disable hantro g1 h264 decoder on rk356x
> X-Git-Archeology:
---
arch/arm64/boot/dts/rockchip/rk3588-base.dtsi | 2 +-
drivers/media/platform/verisilicon/hantro_drv.c | 1 -
drivers/media/platform/verisilicon/hantro_hw.h | 1 -
drivers/media/platform/verisilicon/rockchip_vpu_hw.c | 21 ++--------
3 files changed, 3 insertions(+), 20 deletions(-)
4 files changed, 4 insertions(+), 21 deletions(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
@@ -1127,7 +1127,7 @@ power-domain@RK3588_PD_SDMMC {
};
vpu121: video-codec@fdb50000 {
- compatible = "rockchip,rk3588-vpu121", "rockchip,rk3568-vpu";
+ compatible = "rockchip,rk3588-vpu121", "rockchip,rk3328-vpu";
reg = <0x0 0xfdb50000 0x0 0x800>;
interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH 0>;
interrupt-names = "vdpu";
diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/platform/verisilicon/hantro_drv.c
index 111111111111..222222222222 100644
--- a/drivers/media/platform/verisilicon/hantro_drv.c
@ -78,19 +92,6 @@ index 111111111111..222222222222 100644
const struct hantro_variant px30_vpu_variant = {
.enc_offset = 0x0,
.enc_fmts = rockchip_vpu_enc_fmts,
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
index fc67585b6..d27d60580 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
@@ -1127,7 +1127,7 @@ power-domain@RK3588_PD_SDMMC {
};
vpu121: video-codec@fdb50000 {
- compatible = "rockchip,rk3588-vpu121", "rockchip,rk3568-vpu";
+ compatible = "rockchip,rk3588-vpu121", "rockchip,rk3328-vpu";
reg = <0x0 0xfdb50000 0x0 0x800>;
interrupts = <GIC_SPI 119 IRQ_TYPE_LEVEL_HIGH 0>;
interrupt-names = "vdpu";
--
Armbian

View File

@ -1,21 +1,20 @@
From 919c736d71b5c7d311b41e96e67985d34f1937f7 Mon Sep 17 00:00:00 2001
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino <paolo.sabatino@gmail.com>
Date: Fri, 20 Dec 2024 11:48:31 +0100
Subject: [PATCH] revert rk3308 analog codec to vendor code
Subject: revert rk3308 analog codec to vendor code
---
arch/arm64/boot/dts/rockchip/rk3308.dtsi | 146 +-
sound/soc/codecs/rk3308_codec.c | 5681 +++++++++++++++++++---
sound/soc/codecs/rk3308_codec.h | 892 +++-
arch/arm64/boot/dts/rockchip/rk3308.dtsi | 7 +-
sound/soc/codecs/rk3308_codec.c | 5681 ++++++++--
sound/soc/codecs/rk3308_codec.h | 892 +-
sound/soc/codecs/rk3308_codec_provider.h | 28 +
4 files changed, 5804 insertions(+), 943 deletions(-)
create mode 100644 sound/soc/codecs/rk3308_codec_provider.h
4 files changed, 5665 insertions(+), 943 deletions(-)
diff --git a/arch/arm64/boot/dts/rockchip/rk3308.dtsi b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
index 31c25de2d689..1e9a82423d28 100644
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3308.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
@@ -836,11 +975,14 @@ codec: codec@ff560000 {
@@ -836,11 +836,14 @@ codec: codec@ff560000 {
compatible = "rockchip,rk3308-codec";
reg = <0x0 0xff560000 0x0 0x10000>;
rockchip,grf = <&grf>;
@ -33,7 +32,7 @@ index 31c25de2d689..1e9a82423d28 100644
#sound-dai-cells = <0>;
status = "disabled";
diff --git a/sound/soc/codecs/rk3308_codec.c b/sound/soc/codecs/rk3308_codec.c
index 8b51e87a1711..e918b4e3cb48 100644
index 111111111111..222222222222 100644
--- a/sound/soc/codecs/rk3308_codec.c
+++ b/sound/soc/codecs/rk3308_codec.c
@@ -1,9 +1,20 @@
@ -5950,7 +5949,7 @@ index 8b51e87a1711..e918b4e3cb48 100644
-MODULE_LICENSE("GPL");
+MODULE_LICENSE("GPL v2");
diff --git a/sound/soc/codecs/rk3308_codec.h b/sound/soc/codecs/rk3308_codec.h
index a4226b235ab7..93e089dae081 100644
index 111111111111..222222222222 100644
--- a/sound/soc/codecs/rk3308_codec.h
+++ b/sound/soc/codecs/rk3308_codec.h
@@ -1,15 +1,114 @@
@ -7122,7 +7121,7 @@ index a4226b235ab7..93e089dae081 100644
#endif /* __RK3308_CODEC_H__ */
diff --git a/sound/soc/codecs/rk3308_codec_provider.h b/sound/soc/codecs/rk3308_codec_provider.h
new file mode 100644
index 000000000000..34c1ef86a507
index 000000000000..111111111111
--- /dev/null
+++ b/sound/soc/codecs/rk3308_codec_provider.h
@@ -0,0 +1,28 @@
@ -7155,5 +7154,5 @@ index 000000000000..34c1ef86a507
+
+#endif /* __RK3308_CODEC_PROVIDER_H__ */
--
2.43.0
Armbian

View File

@ -8,10 +8,10 @@ Subject: arm64: dts: rk3308: Add mac node at dtsi level
1 file changed, 1 insertion(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3308.dtsi b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
index 2ae4bb7d5e62..2a6f41e2281f 100644
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3308.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
@@ -24,6 +24,7 @@ aliases {
@@ -29,6 +29,7 @@ aliases {
i2c1 = &i2c1;
i2c2 = &i2c2;
i2c3 = &i2c3;

View File

@ -11,7 +11,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3308.dtsi b/arch/arm64/boot/dts/rock
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3308.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
@@ -701,6 +701,65 @@ dmac1: dma-controller@ff2d0000 {
@@ -608,6 +608,65 @@ dmac1: dma-controller@ff2d0000 {
#dma-cells = <1>;
};

View File

@ -11,10 +11,10 @@ Signed-off-by: Rocky Hao <rocky.hao@rock-chips.com>
2 files changed, 27 insertions(+)
diff --git a/Documentation/devicetree/bindings/thermal/rockchip-thermal.yaml b/Documentation/devicetree/bindings/thermal/rockchip-thermal.yaml
index 55f8ec0bec01..c822baf04aed 100644
index 111111111111..222222222222 100644
--- a/Documentation/devicetree/bindings/thermal/rockchip-thermal.yaml
+++ b/Documentation/devicetree/bindings/thermal/rockchip-thermal.yaml
@@ -15,6 +15,7 @@ properties:
@@ -17,6 +17,7 @@ properties:
- rockchip,px30-tsadc
- rockchip,rk3228-tsadc
- rockchip,rk3288-tsadc
@ -23,7 +23,7 @@ index 55f8ec0bec01..c822baf04aed 100644
- rockchip,rk3368-tsadc
- rockchip,rk3399-tsadc
diff --git a/drivers/thermal/rockchip_thermal.c b/drivers/thermal/rockchip_thermal.c
index 77231a9d28ff..13182e2a3142 100644
index 111111111111..222222222222 100644
--- a/drivers/thermal/rockchip_thermal.c
+++ b/drivers/thermal/rockchip_thermal.c
@@ -1060,6 +1060,28 @@ static void rk_tsadcv3_tshut_mode(int chn, void __iomem *regs,

View File

@ -1,17 +1,17 @@
From aae322ad410b6ad891c1b6605811756124c3b1f9 Mon Sep 17 00:00:00 2001
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Paolo Sabatino <paolo.sabatino@gmail.com>
Date: Mon, 25 Nov 2024 17:23:22 +0100
Subject: [PATCH] rk3308: add cryptov2 dts node
Subject: rk3308: add cryptov2 dts node
---
arch/arm64/boot/dts/rockchip/rk3308.dtsi | 15 +++++++++++++++
arch/arm64/boot/dts/rockchip/rk3308.dtsi | 15 ++++++++++
1 file changed, 15 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3308.dtsi b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
index 2ae4bb7d5e62..7c13709c522c 100644
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3308.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
@@ -164,6 +164,21 @@ xin24m: xin24m {
@@ -170,6 +170,21 @@ xin24m: xin24m {
clock-output-names = "xin24m";
};
@ -34,5 +34,5 @@ index 2ae4bb7d5e62..7c13709c522c 100644
compatible = "rockchip,rk3308-grf", "syscon", "simple-mfd";
reg = <0x0 0xff000000 0x0 0x08000>;
--
2.43.0
Armbian

View File

@ -8,11 +8,11 @@ Subject: arm64: dts: rockchip: add cpu's thermal config for rk3308
1 file changed, 64 insertions(+)
diff --git a/arch/arm64/boot/dts/rockchip/rk3308.dtsi b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
index 2a6f41e2281f..fde32008902a 100644
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3308.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3308.dtsi
@@ -552,6 +552,70 @@ saradc: saradc@ff1e0000 {
status = "disabled";
@@ -601,6 +601,70 @@ logic_leakage: logic-leakage@18 {
};
};
+ thermal_zones: thermal-zones {

View File

@ -1,19 +1,19 @@
From 77f6dfcb20c2dc6a4a2f5303709c6fa0c7b65f30 Mon Sep 17 00:00:00 2001
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Valmantas Paliksa <walmis@gmail.com>
Date: Thu, 12 Dec 2024 12:24:33 +0200
Subject: [PATCH] Disable PHY_LANE_IDLE_OFF for each instance of
Subject: Disable PHY_LANE_IDLE_OFF for each instance of
rockchip_pcie_phy_power_one
Previously PHY_LANE_IDLE_OFF was only disabled for the first lane
---
drivers/phy/rockchip/phy-rockchip-pcie.c | 12 ++++++------
drivers/phy/rockchip/phy-rockchip-pcie.c | 12 +++++-----
1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/drivers/phy/rockchip/phy-rockchip-pcie.c b/drivers/phy/rockchip/phy-rockchip-pcie.c
index 8234b83fdd88..240cb27a0e9e 100644
index 111111111111..222222222222 100644
--- a/drivers/phy/rockchip/phy-rockchip-pcie.c
+++ b/drivers/phy/rockchip/phy-rockchip-pcie.c
@@ -167,6 +167,12 @@ static int rockchip_pcie_phy_power_on(struct phy *phy)
@@ -166,6 +166,12 @@ static int rockchip_pcie_phy_power_on(struct phy *phy)
mutex_lock(&rk_phy->pcie_mutex);
@ -26,7 +26,7 @@ index 8234b83fdd88..240cb27a0e9e 100644
if (rk_phy->pwr_cnt++)
goto err_out;
@@ -181,12 +187,6 @@ static int rockchip_pcie_phy_power_on(struct phy *phy)
@@ -180,12 +186,6 @@ static int rockchip_pcie_phy_power_on(struct phy *phy)
PHY_CFG_ADDR_MASK,
PHY_CFG_ADDR_SHIFT));
@ -40,5 +40,5 @@ index 8234b83fdd88..240cb27a0e9e 100644
* No documented timeout value for phy operation below,
* so we make it large enough here. And we use loop-break
--
2.34.1
Armbian

View File

@ -167,7 +167,7 @@ diff --git a/drivers/pci/controller/pcie-rockchip.h b/drivers/pci/controller/pci
index 111111111111..222222222222 100644
--- a/drivers/pci/controller/pcie-rockchip.h
+++ b/drivers/pci/controller/pcie-rockchip.h
@@ -318,6 +318,8 @@ struct rockchip_pcie {
@@ -322,6 +322,8 @@ struct rockchip_pcie {
phys_addr_t msg_bus_addr;
bool is_rc;
struct resource *mem_res;

View File

@ -11,7 +11,7 @@ diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c
index 111111111111..222222222222 100644
--- a/drivers/irqchip/irq-gic-v3-its.c
+++ b/drivers/irqchip/irq-gic-v3-its.c
@@ -164,6 +164,7 @@ struct its_device {
@@ -166,6 +166,7 @@ struct its_device {
struct its_node *its;
struct event_lpi_map event_map;
void *itt;
@ -19,7 +19,7 @@ index 111111111111..222222222222 100644
u32 nr_ites;
u32 device_id;
bool shared;
@@ -2180,6 +2181,9 @@ static void gic_reset_prop_table(void *va)
@@ -2182,6 +2183,9 @@ static void gic_reset_prop_table(void *va)
static struct page *its_allocate_prop_table(gfp_t gfp_flags)
{
struct page *prop_page;
@ -29,7 +29,7 @@ index 111111111111..222222222222 100644
prop_page = alloc_pages(gfp_flags, get_order(LPI_PROPBASE_SZ));
if (!prop_page)
@@ -2304,6 +2308,7 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
@@ -2306,6 +2310,7 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
u32 alloc_pages, psz;
struct page *page;
void *base;
@ -37,7 +37,7 @@ index 111111111111..222222222222 100644
psz = baser->psz;
alloc_pages = (PAGE_ORDER_TO_SIZE(order) / psz);
@@ -2315,7 +2320,11 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
@@ -2317,7 +2322,11 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
order = get_order(GITS_BASER_PAGES_MAX * psz);
}
@ -50,7 +50,7 @@ index 111111111111..222222222222 100644
if (!page)
return -ENOMEM;
@@ -2365,6 +2374,15 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
@@ -2367,6 +2376,15 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
its_write_baser(its, baser, val);
tmp = baser->val;
@ -66,7 +66,7 @@ index 111111111111..222222222222 100644
if ((val ^ tmp) & GITS_BASER_SHAREABILITY_MASK) {
/*
* Shareability didn't stick. Just use
@@ -2954,7 +2972,9 @@ static int its_alloc_collections(struct its_node *its)
@@ -2956,7 +2974,9 @@ static int its_alloc_collections(struct its_node *its)
static struct page *its_allocate_pending_table(gfp_t gfp_flags)
{
struct page *pend_page;
@ -77,7 +77,7 @@ index 111111111111..222222222222 100644
pend_page = alloc_pages(gfp_flags | __GFP_ZERO,
get_order(LPI_PENDBASE_SZ));
if (!pend_page)
@@ -3113,6 +3133,11 @@ static void its_cpu_init_lpis(void)
@@ -3115,6 +3135,11 @@ static void its_cpu_init_lpis(void)
if (!rdists_support_shareable())
tmp &= ~GICR_PROPBASER_SHAREABILITY_MASK;
@ -89,7 +89,7 @@ index 111111111111..222222222222 100644
if ((tmp ^ val) & GICR_PROPBASER_SHAREABILITY_MASK) {
if (!(tmp & GICR_PROPBASER_SHAREABILITY_MASK)) {
/*
@@ -3140,6 +3165,11 @@ static void its_cpu_init_lpis(void)
@@ -3142,6 +3167,11 @@ static void its_cpu_init_lpis(void)
if (!rdists_support_shareable())
tmp &= ~GICR_PENDBASER_SHAREABILITY_MASK;
@ -101,7 +101,7 @@ index 111111111111..222222222222 100644
if (!(tmp & GICR_PENDBASER_SHAREABILITY_MASK)) {
/*
* The HW reports non-shareable, we must remove the
@@ -3303,7 +3333,11 @@ static bool its_alloc_table_entry(struct its_node *its,
@@ -3305,7 +3335,11 @@ static bool its_alloc_table_entry(struct its_node *its,
/* Allocate memory for 2nd level table */
if (!table[idx]) {
@ -114,7 +114,7 @@ index 111111111111..222222222222 100644
get_order(baser->psz));
if (!page)
return false;
@@ -3392,6 +3426,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
@@ -3394,6 +3428,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
int nr_lpis;
int nr_ites;
int sz;
@ -122,7 +122,7 @@ index 111111111111..222222222222 100644
if (!its_alloc_device_table(its, dev_id))
return NULL;
@@ -3407,7 +3442,15 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
@@ -3409,7 +3444,15 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
nr_ites = max(2, nvecs);
sz = nr_ites * (FIELD_GET(GITS_TYPER_ITT_ENTRY_SIZE, its->typer) + 1);
sz = max(sz, ITS_ITT_ALIGN) + ITS_ITT_ALIGN - 1;
@ -139,7 +139,7 @@ index 111111111111..222222222222 100644
if (alloc_lpis) {
lpi_map = its_lpi_alloc(nvecs, &lpi_base, &nr_lpis);
if (lpi_map)
@@ -3421,7 +3464,13 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
@@ -3423,7 +3466,13 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
if (!dev || !itt || !col_map || (!lpi_map && alloc_lpis)) {
kfree(dev);
@ -154,7 +154,7 @@ index 111111111111..222222222222 100644
bitmap_free(lpi_map);
kfree(col_map);
return NULL;
@@ -3431,6 +3480,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
@@ -3433,6 +3482,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
dev->its = its;
dev->itt = itt;
@ -162,7 +162,7 @@ index 111111111111..222222222222 100644
dev->nr_ites = nr_ites;
dev->event_map.lpi_map = lpi_map;
dev->event_map.col_map = col_map;
@@ -3458,7 +3508,13 @@ static void its_free_device(struct its_device *its_dev)
@@ -3460,7 +3510,13 @@ static void its_free_device(struct its_device *its_dev)
list_del(&its_dev->entry);
raw_spin_unlock_irqrestore(&its_dev->its->lock, flags);
kfree(its_dev->event_map.col_map);
@ -177,7 +177,7 @@ index 111111111111..222222222222 100644
kfree(its_dev);
}
@@ -5099,6 +5155,7 @@ static int __init its_probe_one(struct its_node *its)
@@ -5127,6 +5183,7 @@ static int __init its_probe_one(struct its_node *its)
struct page *page;
u32 ctlr;
int err;
@ -185,7 +185,7 @@ index 111111111111..222222222222 100644
its_enable_quirks(its);
@@ -5132,7 +5189,10 @@ static int __init its_probe_one(struct its_node *its)
@@ -5160,7 +5217,10 @@ static int __init its_probe_one(struct its_node *its)
}
}
@ -197,7 +197,7 @@ index 111111111111..222222222222 100644
get_order(ITS_CMD_QUEUE_SZ));
if (!page) {
err = -ENOMEM;
@@ -5161,6 +5221,11 @@ static int __init its_probe_one(struct its_node *its)
@@ -5189,6 +5249,11 @@ static int __init its_probe_one(struct its_node *its)
if (its->flags & ITS_FLAGS_FORCE_NON_SHAREABLE)
tmp &= ~GITS_CBASER_SHAREABILITY_MASK;

View File

@ -3929,7 +3929,7 @@ diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig
index 111111111111..222222222222 100644
--- a/arch/arm64/configs/defconfig
+++ b/arch/arm64/configs/defconfig
@@ -847,6 +847,7 @@ CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
@@ -848,6 +848,7 @@ CONFIG_VIDEO_SAMSUNG_EXYNOS_GSC=m
CONFIG_VIDEO_SAMSUNG_S5P_JPEG=m
CONFIG_VIDEO_SAMSUNG_S5P_MFC=m
CONFIG_VIDEO_SUN6I_CSI=m

View File

@ -80,7 +80,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
@@ -2822,6 +2822,7 @@ hdptxphy_hdmi0: phy@fed60000 {
@@ -2811,6 +2811,7 @@ hdptxphy_hdmi0: phy@fed60000 {
reg = <0x0 0xfed60000 0x0 0x2000>;
clocks = <&cru CLK_USB2PHY_HDPTXRXPHY_REF>, <&cru PCLK_HDPTX0>;
clock-names = "ref", "apb";

View File

@ -102,7 +102,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi b/arch/arm64/boot/dts
index 111111111111..222222222222 100644
--- a/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3588-base.dtsi
@@ -1879,6 +1879,18 @@ sdhci: mmc@fe2e0000 {
@@ -1928,6 +1928,18 @@ sdhci: mmc@fe2e0000 {
status = "disabled";
};