rockchip64-6.18: rewrite/rebase patches - no changes
- few archeology manual fixes
This commit is contained in:
parent
0ff175d956
commit
dd810a4963
@ -169,7 +169,7 @@ diff --git a/sound/soc/rockchip/Kconfig b/sound/soc/rockchip/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/sound/soc/rockchip/Kconfig
|
||||
+++ b/sound/soc/rockchip/Kconfig
|
||||
@@ -75,6 +75,15 @@ config SND_SOC_ROCKCHIP_RT5645
|
||||
@@ -66,6 +66,15 @@ config SND_SOC_ROCKCHIP_RT5645
|
||||
Say Y or M here if you want to add support for SoC audio on Rockchip
|
||||
boards using the RT5645/RT5650 codec, such as Veyron.
|
||||
|
||||
@ -184,7 +184,7 @@ index 111111111111..222222222222 100644
|
||||
+
|
||||
config SND_SOC_RK3288_HDMI_ANALOG
|
||||
tristate "ASoC support multiple codecs for Rockchip RK3288 boards"
|
||||
depends on SND_SOC_ROCKCHIP && I2C && GPIOLIB && HAVE_CLK
|
||||
depends on I2C && GPIOLIB
|
||||
--
|
||||
Armbian
|
||||
|
||||
|
||||
@ -1,15 +1,15 @@
|
||||
From c80bdda0d87a7119152d95f7943212fc8265e104 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: John Doe <john.doe@somewhere.on.planet>
|
||||
Date: Sat, 30 Aug 2025 14:20:24 +0800
|
||||
Subject: [PATCH 1/3] Patching NanoPi-R3S LEDs
|
||||
Subject: Patching NanoPi-R3S LEDs
|
||||
|
||||
Signed-off-by: retro98boy <retro98boy@qq.com>
|
||||
---
|
||||
.../boot/dts/rockchip/rk3566-nanopi-r3s.dts | 41 ++++++++++++++-----
|
||||
arch/arm64/boot/dts/rockchip/rk3566-nanopi-r3s.dts | 41 +++++++---
|
||||
1 file changed, 31 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3566-nanopi-r3s.dts b/arch/arm64/boot/dts/rockchip/rk3566-nanopi-r3s.dts
|
||||
index fb1f65c86..553a9e599 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3566-nanopi-r3s.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3566-nanopi-r3s.dts
|
||||
@@ -52,19 +52,21 @@ power_led: led-0 {
|
||||
@ -110,5 +110,5 @@ index fb1f65c86..553a9e599 100644
|
||||
};
|
||||
|
||||
--
|
||||
2.51.0
|
||||
Armbian
|
||||
|
||||
|
||||
@ -1,5 +1,28 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: royka1 <roykaandorp@gmail.com>
|
||||
Date: Mon, 6 Oct 2025 23:39:26 +0200
|
||||
Subject: Add sata node for Orange-Pi-5's overlay (#8707)
|
||||
|
||||
> X-Git-Archeology: > recovered message: > * OPi5: SATA power via vcc3v3_pcie20; set to 3.3V; rename overlay
|
||||
> X-Git-Archeology: > recovered message: > * Convert spaces to tabs
|
||||
> X-Git-Archeology: > recovered message: > ---------
|
||||
> X-Git-Archeology: > recovered message: > Co-authored-by: Igor <igor@armbian.com>
|
||||
> X-Git-Archeology: - Revision 784d367e8aaffa1e2aed7bd844456921b9e8f97e: https://github.com/armbian/build/commit/784d367e8aaffa1e2aed7bd844456921b9e8f97e
|
||||
> X-Git-Archeology: Date: Mon, 06 Oct 2025 23:39:26 +0200
|
||||
> X-Git-Archeology: From: royka1 <roykaandorp@gmail.com>
|
||||
> X-Git-Archeology: Subject: Add sata overlay for Orange-Pi-5 (#8707)
|
||||
> X-Git-Archeology:
|
||||
> X-Git-Archeology: - Revision f0504a92e16dc4c4d0ae346cc5c0beb126a00298: https://github.com/armbian/build/commit/f0504a92e16dc4c4d0ae346cc5c0beb126a00298
|
||||
> X-Git-Archeology: Date: Sat, 18 Oct 2025 11:34:52 +0200
|
||||
> X-Git-Archeology: From: Jianfeng Liu <liujianfeng1994@gmail.com>
|
||||
> X-Git-Archeology: Subject: rockchip64-6.18: update patches
|
||||
> X-Git-Archeology:
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts | 11 ++++++++--
|
||||
1 file changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts b/arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts
|
||||
index ad6d04793b0a..b811ec843936 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s-orangepi-5.dts
|
||||
@@ -14,8 +14,8 @@ vcc3v3_pcie20: regulator-vcc3v3-pcie20 {
|
||||
@ -27,3 +50,6 @@ index ad6d04793b0a..b811ec843936 100644
|
||||
&sfc {
|
||||
status = "okay";
|
||||
};
|
||||
--
|
||||
Armbian
|
||||
|
||||
|
||||
@ -40,7 +40,7 @@ index 111111111111..222222222222 100644
|
||||
&edp {
|
||||
force-hpd;
|
||||
pinctrl-names = "default";
|
||||
@@ -692,6 +706,8 @@ fusb0: fusb30x@22 {
|
||||
@@ -685,6 +699,8 @@ fusb0: fusb30x@22 {
|
||||
pinctrl-names = "default";
|
||||
pinctrl-0 = <&fusb0_int_pin>;
|
||||
vbus-supply = <&vbus_typec>;
|
||||
@ -49,7 +49,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
connector {
|
||||
compatible = "usb-c-connector";
|
||||
@@ -700,10 +716,19 @@ connector {
|
||||
@@ -693,10 +709,19 @@ connector {
|
||||
op-sink-microwatt = <1000000>;
|
||||
power-role = "dual";
|
||||
sink-pdos =
|
||||
@ -71,7 +71,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
ports {
|
||||
#address-cells = <1>;
|
||||
@@ -970,6 +995,7 @@ spiflash: flash@0 {
|
||||
@@ -982,6 +1007,7 @@ spiflash: flash@0 {
|
||||
};
|
||||
|
||||
&tcphy0 {
|
||||
@ -79,7 +79,7 @@ index 111111111111..222222222222 100644
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -1003,6 +1029,8 @@ &tsadc {
|
||||
@@ -1015,6 +1041,8 @@ &tsadc {
|
||||
|
||||
&u2phy0 {
|
||||
status = "okay";
|
||||
@ -88,7 +88,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
u2phy0_otg: otg-port {
|
||||
status = "okay";
|
||||
@@ -1079,7 +1107,9 @@ &usbdrd3_0 {
|
||||
@@ -1091,7 +1119,9 @@ &usbdrd3_0 {
|
||||
};
|
||||
|
||||
&usbdrd_dwc3_0 {
|
||||
|
||||
@ -52,7 +52,7 @@ index 111111111111..222222222222 100644
|
||||
gmac_clkin: external-gmac-clock {
|
||||
compatible = "fixed-clock";
|
||||
clock-frequency = <125000000>;
|
||||
@@ -111,6 +138,17 @@ &codec {
|
||||
@@ -118,6 +145,17 @@ &codec {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@ -4,8 +4,8 @@ Date: Tue, 12 Oct 2021 19:34:29 +0000
|
||||
Subject: enable dmc for rk3328-roc-pc
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3328-roc-pc.dts | 524 +++++++++-
|
||||
1 file changed, 466 insertions(+), 58 deletions(-)
|
||||
arch/arm64/boot/dts/rockchip/rk3328-roc-pc.dts | 521 +++++++++-
|
||||
1 file changed, 464 insertions(+), 57 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc-pc.dts b/arch/arm64/boot/dts/rockchip/rk3328-roc-pc.dts
|
||||
index 111111111111..222222222222 100644
|
||||
@ -117,7 +117,7 @@ index 111111111111..222222222222 100644
|
||||
+ regulator-always-on;
|
||||
+ regulator-boot-on;
|
||||
+ vin-supply = <&vcc_sys>;
|
||||
+ };
|
||||
};
|
||||
+
|
||||
+ vcc_sd: sdmmc-regulator {
|
||||
+ compatible = "regulator-fixed";
|
||||
@ -187,11 +187,9 @@ index 111111111111..222222222222 100644
|
||||
+ opp-hz = /bits/ 64 <924000000>;
|
||||
+ opp-microvolt = <1100000 1100000 1200000>;
|
||||
+ };
|
||||
};
|
||||
};
|
||||
|
||||
-&codec {
|
||||
- mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
|
||||
+ };
|
||||
+};
|
||||
+
|
||||
+&dfi {
|
||||
+ status = "okay";
|
||||
+};
|
||||
@ -216,12 +214,8 @@ index 111111111111..222222222222 100644
|
||||
+
|
||||
+&cpu0 {
|
||||
+ cpu-supply = <&vdd_arm>;
|
||||
};
|
||||
|
||||
-&pinctrl {
|
||||
- ir {
|
||||
- ir_int: ir-int {
|
||||
- rockchip,pins = <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+};
|
||||
+
|
||||
+&gmac2phy {
|
||||
+ phy-supply = <&vcc_phy>;
|
||||
+ clock_in_out = "output";
|
||||
@ -303,13 +297,18 @@ index 111111111111..222222222222 100644
|
||||
+&i2s1 {
|
||||
+ #sound-dai-cells = <0>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
+&codec {
|
||||
};
|
||||
|
||||
&codec {
|
||||
- mute-gpios = <&grf_gpio 0 GPIO_ACTIVE_LOW>;
|
||||
+ #sound-dai-cells = <0>;
|
||||
+ status = "okay";
|
||||
+};
|
||||
+
|
||||
};
|
||||
|
||||
-&pinctrl {
|
||||
- ir {
|
||||
- ir_int: ir-int {
|
||||
- rockchip,pins = <2 RK_PA2 RK_FUNC_GPIO &pcfg_pull_none>;
|
||||
+&emmc {
|
||||
+ bus-width = <8>;
|
||||
+ cap-mmc-highspeed;
|
||||
|
||||
@ -13,7 +13,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi b/arch/arm64/boo
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
@@ -677,6 +677,7 @@ &pcie0 {
|
||||
@@ -617,6 +617,7 @@ &pcie0 {
|
||||
vpcie1v8-supply = <&vcca_1v8>;
|
||||
vpcie12v-supply = <&vcc12v_dcin>;
|
||||
vpcie3v3-supply = <&vcc3v3_pcie>;
|
||||
|
||||
@ -12,7 +12,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi b/arch/arm64/boo
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
@@ -317,7 +317,7 @@ &gmac {
|
||||
@@ -300,7 +300,7 @@ &gmac {
|
||||
snps,reset-active-low;
|
||||
snps,reset-delays-us = <0 10000 50000>;
|
||||
tx_delay = <0x28>;
|
||||
|
||||
@ -20,7 +20,7 @@ index 111111111111..222222222222 100644
|
||||
stdout-path = "serial2:1500000n8";
|
||||
};
|
||||
|
||||
@@ -829,6 +830,7 @@ &sdmmc {
|
||||
@@ -765,6 +766,7 @@ &sdmmc {
|
||||
|
||||
&sdhci {
|
||||
bus-width = <8>;
|
||||
|
||||
@ -12,7 +12,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi b/arch/arm64/boo
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
@@ -852,7 +852,7 @@ &spi1 {
|
||||
@@ -788,7 +788,7 @@ &spi1 {
|
||||
flash@0 {
|
||||
compatible = "jedec,spi-nor";
|
||||
reg = <0>;
|
||||
|
||||
@ -11,7 +11,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi b/arch/arm64/boo
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3399-rockpro64.dtsi
|
||||
@@ -66,7 +66,7 @@ leds {
|
||||
@@ -57,7 +57,7 @@ leds {
|
||||
|
||||
work_led: led-0 {
|
||||
label = "work";
|
||||
|
||||
@ -9,7 +9,7 @@ Signed-off-by: John Doe <john.doe@somewhere.on.planet>
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/drivers/spi/spidev.c b/drivers/spi/spidev.c
|
||||
index 5300c942a2a4..67e802d5419d 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/spi/spidev.c
|
||||
+++ b/drivers/spi/spidev.c
|
||||
@@ -703,6 +703,7 @@ static const struct class spidev_class = {
|
||||
@ -22,7 +22,7 @@ index 5300c942a2a4..67e802d5419d 100644
|
||||
{ .name = /* dh */ "dhcom-board" },
|
||||
@@ -736,6 +737,7 @@ static int spidev_of_check(struct device *dev)
|
||||
}
|
||||
|
||||
|
||||
static const struct of_device_id spidev_dt_ids[] = {
|
||||
+ { .compatible = "armbian,spi-dev", .data = &spidev_of_check },
|
||||
{ .compatible = "abb,spi-sensor", .data = &spidev_of_check },
|
||||
|
||||
@ -15,7 +15,7 @@ diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/gpu/drm/drm_edid.c
|
||||
+++ b/drivers/gpu/drm/drm_edid.c
|
||||
@@ -1550,6 +1550,16 @@ static const struct drm_display_mode edid_cea_modes_193[] = {
|
||||
@@ -1561,6 +1561,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, },
|
||||
@ -32,7 +32,7 @@ index 111111111111..222222222222 100644
|
||||
};
|
||||
|
||||
/*
|
||||
@@ -4215,7 +4225,7 @@ static bool drm_edid_has_cta_extension(const struct drm_edid *drm_edid)
|
||||
@@ -4236,7 +4246,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);
|
||||
|
||||
@ -62,7 +62,7 @@ diff --git a/drivers/extcon/Kconfig b/drivers/extcon/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/extcon/Kconfig
|
||||
+++ b/drivers/extcon/Kconfig
|
||||
@@ -214,4 +214,14 @@ config EXTCON_RTK_TYPE_C
|
||||
@@ -227,4 +227,14 @@ config EXTCON_RTK_TYPE_C
|
||||
The DHC (Digital Home Hub) RTD series SoC contains a type c module.
|
||||
This driver will detect the status of the type-c port.
|
||||
|
||||
@ -81,7 +81,7 @@ diff --git a/drivers/extcon/Makefile b/drivers/extcon/Makefile
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/extcon/Makefile
|
||||
+++ b/drivers/extcon/Makefile
|
||||
@@ -27,3 +27,4 @@ obj-$(CONFIG_EXTCON_USB_GPIO) += extcon-usb-gpio.o
|
||||
@@ -28,3 +28,4 @@ obj-$(CONFIG_EXTCON_USB_GPIO) += extcon-usb-gpio.o
|
||||
obj-$(CONFIG_EXTCON_USBC_CROS_EC) += extcon-usbc-cros-ec.o
|
||||
obj-$(CONFIG_EXTCON_USBC_TUSB320) += extcon-usbc-tusb320.o
|
||||
obj-$(CONFIG_EXTCON_RTK_TYPE_C) += extcon-rtk-type-c.o
|
||||
|
||||
@ -36,7 +36,7 @@ diff --git a/scripts/Makefile.dtbs b/scripts/Makefile.dtbs
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/scripts/Makefile.dtbs
|
||||
+++ b/scripts/Makefile.dtbs
|
||||
@@ -122,17 +122,23 @@ dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
|
||||
@@ -123,17 +123,23 @@ dtc-tmp = $(subst $(comma),_,$(dot-target).dts.tmp)
|
||||
quiet_cmd_dtc = DTC $(quiet_dtb_check_tag) $@
|
||||
cmd_dtc = \
|
||||
$(HOSTCC) -E $(dtc_cpp_flags) -x assembler-with-cpp -o $(dtc-tmp) $< ; \
|
||||
|
||||
@ -18,7 +18,7 @@ diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/crypto/Kconfig
|
||||
+++ b/drivers/crypto/Kconfig
|
||||
@@ -694,6 +694,14 @@ config CRYPTO_DEV_ROCKCHIP
|
||||
@@ -707,6 +707,14 @@ config CRYPTO_DEV_ROCKCHIP
|
||||
This driver interfaces with the hardware crypto accelerator.
|
||||
Supporting cbc/ecb chainmode, and aes/des/des3_ede cipher mode.
|
||||
|
||||
|
||||
@ -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
|
||||
@@ -5934,27 +5934,15 @@ static void stmmac_set_rx_mode(struct net_device *dev)
|
||||
@@ -5847,27 +5847,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);
|
||||
|
||||
@ -1,11 +1,7 @@
|
||||
From 912e1aadb342a09838069e81dfeee8d9fa15ae68 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sun, 31 Aug 2025 00:23:51 -0400
|
||||
Subject: [PATCH 03/14] docs: ABI: auxdisplay: document linedisp library sysfs
|
||||
attributes
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: docs: ABI: auxdisplay: document linedisp library sysfs attributes
|
||||
|
||||
Add ABI documentation for sysfs attributes provided by the line-display
|
||||
auxdisplay library module. These attributes enable text message display and
|
||||
@ -19,15 +15,14 @@ The line-display library is used by multiple auxdisplay drivers and
|
||||
can expose these attributes either on linedisp.N child devices or
|
||||
directly on parent auxdisplay devices.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
.../ABI/testing/sysfs-auxdisplay-linedisp | 79 +++++++++++++++++++
|
||||
Documentation/ABI/testing/sysfs-auxdisplay-linedisp | 79 ++++++++++
|
||||
1 file changed, 79 insertions(+)
|
||||
create mode 100644 Documentation/ABI/testing/sysfs-auxdisplay-linedisp
|
||||
|
||||
diff --git a/Documentation/ABI/testing/sysfs-auxdisplay-linedisp b/Documentation/ABI/testing/sysfs-auxdisplay-linedisp
|
||||
new file mode 100644
|
||||
index 000000000..45cf4e5a2
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/Documentation/ABI/testing/sysfs-auxdisplay-linedisp
|
||||
@@ -0,0 +1,79 @@
|
||||
@ -111,17 +106,13 @@ index 000000000..45cf4e5a2
|
||||
+ Reference interface guidance:
|
||||
+ - include/uapi/linux/map_to_14segment.h
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From aa2b721fbe8e792d71bba2a682278e217254a9d8 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sat, 30 Aug 2025 20:31:38 -0400
|
||||
Subject: [PATCH 04/14] auxdisplay: linedisp: encapsulate container_of usage
|
||||
within to_linedisp
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: auxdisplay: linedisp: encapsulate container_of usage within
|
||||
to_linedisp
|
||||
|
||||
Replace direct container_of() calls with a to_linedisp() helper function
|
||||
throughout the line-display auxdisplay library module. This abstraction
|
||||
@ -131,13 +122,13 @@ auxdisplay devices.
|
||||
|
||||
No functional changes in this patch.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
drivers/auxdisplay/line-display.c | 21 +++++++++++++--------
|
||||
drivers/auxdisplay/line-display.c | 21 ++++++----
|
||||
1 file changed, 13 insertions(+), 8 deletions(-)
|
||||
|
||||
diff --git a/drivers/auxdisplay/line-display.c b/drivers/auxdisplay/line-display.c
|
||||
index 8590a4cd2..e44341b1e 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/line-display.c
|
||||
+++ b/drivers/auxdisplay/line-display.c
|
||||
@@ -31,6 +31,11 @@
|
||||
@ -225,17 +216,13 @@ index 8590a4cd2..e44341b1e 100644
|
||||
kfree(linedisp->map);
|
||||
kfree(linedisp->message);
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From c7437adc19417a882214c1f6ea4c767fcc31ad64 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sun, 31 Aug 2025 13:53:01 -0400
|
||||
Subject: [PATCH 05/14] auxdisplay: linedisp: display static message when
|
||||
length <= display size
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: auxdisplay: linedisp: display static message when length <= display
|
||||
size
|
||||
|
||||
Currently, when a message shorter than the display size is written, the
|
||||
content wraps around (e.g., "123" on a 4-digit display shows "1231")
|
||||
@ -250,13 +237,13 @@ The scroll logic is also consolidated into a helper function for clarity.
|
||||
|
||||
No API changes are introduced.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
drivers/auxdisplay/line-display.c | 30 +++++++++++++++++++++---------
|
||||
drivers/auxdisplay/line-display.c | 30 +++++++---
|
||||
1 file changed, 21 insertions(+), 9 deletions(-)
|
||||
|
||||
diff --git a/drivers/auxdisplay/line-display.c b/drivers/auxdisplay/line-display.c
|
||||
index e44341b1e..73e4e77ea 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/line-display.c
|
||||
+++ b/drivers/auxdisplay/line-display.c
|
||||
@@ -36,6 +36,11 @@ static struct linedisp *to_linedisp(struct device *dev)
|
||||
@ -319,16 +306,12 @@ index e44341b1e..73e4e77ea 100644
|
||||
return count;
|
||||
}
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From fdf710de2bd90ed1477d9d04adbb645c6b9c8967 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sat, 30 Aug 2025 20:35:34 -0400
|
||||
Subject: [PATCH 06/14] auxdisplay: linedisp: add num_chars sysfs attribute
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: auxdisplay: linedisp: add num_chars sysfs attribute
|
||||
|
||||
Add a read-only 'num_chars' sysfs attribute to report display digit count.
|
||||
|
||||
@ -338,14 +321,14 @@ messages, complementing the existing message and scroll controls.
|
||||
|
||||
No functional changes to existing behavior.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
Documentation/ABI/testing/sysfs-auxdisplay-linedisp | 11 +++++++++++
|
||||
drivers/auxdisplay/line-display.c | 11 +++++++++++
|
||||
Documentation/ABI/testing/sysfs-auxdisplay-linedisp | 11 ++++++++++
|
||||
drivers/auxdisplay/line-display.c | 11 ++++++++++
|
||||
2 files changed, 22 insertions(+)
|
||||
|
||||
diff --git a/Documentation/ABI/testing/sysfs-auxdisplay-linedisp b/Documentation/ABI/testing/sysfs-auxdisplay-linedisp
|
||||
index 45cf4e5a2..55f1b559e 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/ABI/testing/sysfs-auxdisplay-linedisp
|
||||
+++ b/Documentation/ABI/testing/sysfs-auxdisplay-linedisp
|
||||
@@ -15,6 +15,17 @@ Description:
|
||||
@ -367,7 +350,7 @@ index 45cf4e5a2..55f1b559e 100644
|
||||
Date: October 2021
|
||||
KernelVersion: 5.16
|
||||
diff --git a/drivers/auxdisplay/line-display.c b/drivers/auxdisplay/line-display.c
|
||||
index 73e4e77ea..7f3e53e28 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/line-display.c
|
||||
+++ b/drivers/auxdisplay/line-display.c
|
||||
@@ -178,6 +178,16 @@ static ssize_t message_store(struct device *dev, struct device_attribute *attr,
|
||||
@ -396,17 +379,13 @@ index 73e4e77ea..7f3e53e28 100644
|
||||
&dev_attr_map_seg7.attr,
|
||||
&dev_attr_map_seg14.attr,
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From 17407e87994e910b25d13151b9e5b82e6b5896ea Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sat, 30 Aug 2025 20:41:39 -0400
|
||||
Subject: [PATCH 07/14] auxdisplay: linedisp: support attribute attachment to
|
||||
auxdisplay devices
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: auxdisplay: linedisp: support attribute attachment to auxdisplay
|
||||
devices
|
||||
|
||||
Enable linedisp library integration into existing kernel devices (like LED
|
||||
class) to provide a uniform 7-segment userspace API without creating
|
||||
@ -425,14 +404,14 @@ Existing consumers of linedisp_register() are unaffected. The new API
|
||||
enables drivers like TM16XX to integrate 7-segment display functionality
|
||||
seamlessly within their LED class device hierarchy.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
drivers/auxdisplay/line-display.c | 180 +++++++++++++++++++++++++++++-
|
||||
drivers/auxdisplay/line-display.c | 180 +++++++++-
|
||||
drivers/auxdisplay/line-display.h | 4 +
|
||||
2 files changed, 178 insertions(+), 6 deletions(-)
|
||||
|
||||
diff --git a/drivers/auxdisplay/line-display.c b/drivers/auxdisplay/line-display.c
|
||||
index 7f3e53e28..4e22373fc 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/line-display.c
|
||||
+++ b/drivers/auxdisplay/line-display.c
|
||||
@@ -6,20 +6,23 @@
|
||||
@ -682,7 +661,7 @@ index 7f3e53e28..4e22373fc 100644
|
||||
put_device(&linedisp->dev);
|
||||
}
|
||||
diff --git a/drivers/auxdisplay/line-display.h b/drivers/auxdisplay/line-display.h
|
||||
index 4348d7a2f..36853b639 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/line-display.h
|
||||
+++ b/drivers/auxdisplay/line-display.h
|
||||
@@ -6,6 +6,7 @@
|
||||
@ -704,17 +683,13 @@ index 4348d7a2f..36853b639 100644
|
||||
unsigned int num_chars, const struct linedisp_ops *ops);
|
||||
void linedisp_unregister(struct linedisp *linedisp);
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From 6ab5f7cfaa821b995228b7e85e792f304f01865c Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sat, 16 Aug 2025 16:17:06 -0400
|
||||
Subject: [PATCH 08/14] dt-bindings: vendor-prefixes: Add fdhisi, titanmec,
|
||||
princeton, winrise, wxicore
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: dt-bindings: vendor-prefixes: Add fdhisi, titanmec, princeton,
|
||||
winrise, wxicore
|
||||
|
||||
Add vendor prefixes of chip manufacturers supported by the TM16xx 7-segment
|
||||
LED matrix display controllers driver:
|
||||
@ -730,20 +705,20 @@ either lack active .com domains or their .com domains are occupied by
|
||||
unrelated businesses.
|
||||
|
||||
The fdhisi and titanmec prefixes were originally identified by
|
||||
Andreas Färber.
|
||||
Andreas Farber.
|
||||
|
||||
CC: Andreas Färber <afaerber@suse.de>
|
||||
CC: Andreas Farber <afaerber@suse.de>
|
||||
Acked-by: Conor Dooley <conor.dooley@microchip.com>
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
Documentation/devicetree/bindings/vendor-prefixes.yaml | 10 ++++++++++
|
||||
1 file changed, 10 insertions(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/vendor-prefixes.yaml b/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
||||
index 9ec8947df..cd42bf7a9 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
||||
+++ b/Documentation/devicetree/bindings/vendor-prefixes.yaml
|
||||
@@ -542,6 +542,8 @@ patternProperties:
|
||||
@@ -562,6 +562,8 @@ patternProperties:
|
||||
description: Fastrax Oy
|
||||
"^fcs,.*":
|
||||
description: Fairchild Semiconductor
|
||||
@ -752,7 +727,7 @@ index 9ec8947df..cd42bf7a9 100644
|
||||
"^feixin,.*":
|
||||
description: Shenzhen Feixin Photoelectic Co., Ltd
|
||||
"^feiyang,.*":
|
||||
@@ -1235,6 +1237,8 @@ patternProperties:
|
||||
@@ -1279,6 +1281,8 @@ patternProperties:
|
||||
description: Prime View International (PVI)
|
||||
"^primux,.*":
|
||||
description: Primux Trading, S.L.
|
||||
@ -761,7 +736,7 @@ index 9ec8947df..cd42bf7a9 100644
|
||||
"^probox2,.*":
|
||||
description: PROBOX2 (by W2COMP Co., Ltd.)
|
||||
"^pri,.*":
|
||||
@@ -1569,6 +1573,8 @@ patternProperties:
|
||||
@@ -1632,6 +1636,8 @@ patternProperties:
|
||||
description: Texas Instruments
|
||||
"^tianma,.*":
|
||||
description: Tianma Micro-electronics Co., Ltd.
|
||||
@ -770,7 +745,7 @@ index 9ec8947df..cd42bf7a9 100644
|
||||
"^tlm,.*":
|
||||
description: Trusted Logic Mobility
|
||||
"^tmt,.*":
|
||||
@@ -1726,6 +1732,8 @@ patternProperties:
|
||||
@@ -1791,6 +1797,8 @@ patternProperties:
|
||||
description: Wingtech Technology Co., Ltd.
|
||||
"^winlink,.*":
|
||||
description: WinLink Co., Ltd
|
||||
@ -779,7 +754,7 @@ index 9ec8947df..cd42bf7a9 100644
|
||||
"^winsen,.*":
|
||||
description: Winsen Corp.
|
||||
"^winstar,.*":
|
||||
@@ -1742,6 +1750,8 @@ patternProperties:
|
||||
@@ -1807,6 +1815,8 @@ patternProperties:
|
||||
description: Wobo
|
||||
"^wolfvision,.*":
|
||||
description: WolfVision GmbH
|
||||
@ -789,17 +764,12 @@ index 9ec8947df..cd42bf7a9 100644
|
||||
description: X-Powers
|
||||
"^xen,.*":
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From d10c4994c9d219df8e6917837c17b9a1f061412a Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Mon, 1 Sep 2025 11:57:15 -0400
|
||||
Subject: [PATCH 09/14] dt-bindings: leds: add default-brightness property to
|
||||
common.yaml
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: dt-bindings: leds: add default-brightness property to common.yaml
|
||||
|
||||
Add default-brightness property to leds/common.yaml to establish a single
|
||||
canonical definition for LED brightness initialization.
|
||||
@ -808,13 +778,13 @@ The property is currently defined locally in leds/leds-pwm.yaml and is
|
||||
needed by auxdisplay/titanmec,tm16xx.yaml. Properties should be defined
|
||||
in only one location to avoid type inconsistencies across bindings.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
Documentation/devicetree/bindings/leds/common.yaml | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/leds/common.yaml b/Documentation/devicetree/bindings/leds/common.yaml
|
||||
index 3e8319e44..96bd7fd0f 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/devicetree/bindings/leds/common.yaml
|
||||
+++ b/Documentation/devicetree/bindings/leds/common.yaml
|
||||
@@ -173,6 +173,12 @@ properties:
|
||||
@ -831,31 +801,24 @@ index 3e8319e44..96bd7fd0f 100644
|
||||
description:
|
||||
This property specifies that the LED should be used, if at all possible,
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From 81cada2f3d9c8464fb851ba86b2384e654120860 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Mon, 1 Sep 2025 12:03:37 -0400
|
||||
Subject: [PATCH 10/14] dt-bindings: auxdisplay: add Titan Micro Electronics
|
||||
TM16xx
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: dt-bindings: auxdisplay: add Titan Micro Electronics TM16xx
|
||||
|
||||
Add documentation for TM16xx-compatible 7-segment LED display controllers
|
||||
with keyscan.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
.../bindings/auxdisplay/titanmec,tm16xx.yaml | 463 ++++++++++++++++++
|
||||
MAINTAINERS | 5 +
|
||||
2 files changed, 468 insertions(+)
|
||||
create mode 100644 Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml
|
||||
Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml | 463 ++++++++++
|
||||
1 file changed, 463 insertions(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml b/Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml
|
||||
new file mode 100644
|
||||
index 000000000..d324023bb
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml
|
||||
@@ -0,0 +1,463 @@
|
||||
@ -1322,34 +1285,14 @@ index 000000000..d324023bb
|
||||
+ };
|
||||
+ };
|
||||
+ };
|
||||
diff --git a/MAINTAINERS b/MAINTAINERS
|
||||
index f6206963e..9449dfc43 100644
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -25441,6 +25441,11 @@ W: http://sourceforge.net/projects/tlan/
|
||||
F: Documentation/networking/device_drivers/ethernet/ti/tlan.rst
|
||||
F: drivers/net/ethernet/ti/tlan.*
|
||||
|
||||
+TM16XX-COMPATIBLE LED CONTROLLERS DISPLAY DRIVER
|
||||
+M: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
+S: Maintained
|
||||
+F: Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml
|
||||
+
|
||||
TMIO/SDHI MMC DRIVER
|
||||
M: Wolfram Sang <wsa+renesas@sang-engineering.com>
|
||||
L: linux-mmc@vger.kernel.org
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From 176ec8dadd8b0e63dbafeb87b646706ad6f7c9f7 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sat, 16 Aug 2025 20:52:21 -0400
|
||||
Subject: [PATCH 11/14] auxdisplay: Add TM16xx 7-segment LED matrix display
|
||||
controllers driver
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: auxdisplay: Add TM16xx 7-segment LED matrix display controllers
|
||||
driver
|
||||
|
||||
Add driver for TM16xx family LED controllers and compatible chips from
|
||||
multiple vendors including Titan Micro, Fuda Hisi, i-Core, Princeton, and
|
||||
@ -1366,34 +1309,16 @@ Tested-by: Boris Gjenero <boris.gjenero@gmail.com> # Tested on X92
|
||||
Tested-by: Paolo Sabatino <paolo.sabatino@gmail.com> # Tested on H96 Max (XY_RK3328)
|
||||
Tested-by: Christian Hewitt <christianshewitt@gmail.com> # Tested on X96 Max, Tanix TX3 Mini
|
||||
Tested-by: Martin Blumenstingl <martin.blumenstingl@googlemail.com> # Tested on Tanix TX3 Mini
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
MAINTAINERS | 3 +
|
||||
drivers/auxdisplay/Kconfig | 9 +
|
||||
drivers/auxdisplay/Makefile | 2 +
|
||||
drivers/auxdisplay/tm16xx.h | 172 ++++++++++++
|
||||
drivers/auxdisplay/tm16xx_core.c | 459 +++++++++++++++++++++++++++++++
|
||||
5 files changed, 645 insertions(+)
|
||||
create mode 100644 drivers/auxdisplay/tm16xx.h
|
||||
create mode 100644 drivers/auxdisplay/tm16xx_core.c
|
||||
drivers/auxdisplay/tm16xx.h | 172 ++++
|
||||
drivers/auxdisplay/tm16xx_core.c | 459 ++++++++++
|
||||
4 files changed, 642 insertions(+)
|
||||
|
||||
diff --git a/MAINTAINERS b/MAINTAINERS
|
||||
index 9449dfc43..7d5912f2d 100644
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -25444,7 +25444,10 @@ F: drivers/net/ethernet/ti/tlan.*
|
||||
TM16XX-COMPATIBLE LED CONTROLLERS DISPLAY DRIVER
|
||||
M: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
S: Maintained
|
||||
+F: Documentation/ABI/testing/sysfs-class-leds-tm16xx
|
||||
F: Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml
|
||||
+F: drivers/auxdisplay/tm16xx.h
|
||||
+F: drivers/auxdisplay/tm16xx_core.c
|
||||
|
||||
TMIO/SDHI MMC DRIVER
|
||||
M: Wolfram Sang <wsa+renesas@sang-engineering.com>
|
||||
diff --git a/drivers/auxdisplay/Kconfig b/drivers/auxdisplay/Kconfig
|
||||
index bedc6133f..7bacf1111 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/Kconfig
|
||||
+++ b/drivers/auxdisplay/Kconfig
|
||||
@@ -526,6 +526,15 @@ config SEG_LED_GPIO
|
||||
@ -1413,7 +1338,7 @@ index bedc6133f..7bacf1111 100644
|
||||
# Character LCD with non-conforming interface section
|
||||
#
|
||||
diff --git a/drivers/auxdisplay/Makefile b/drivers/auxdisplay/Makefile
|
||||
index f5c13ed1c..7ecf3cd4a 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/Makefile
|
||||
+++ b/drivers/auxdisplay/Makefile
|
||||
@@ -16,3 +16,5 @@ obj-$(CONFIG_LINEDISP) += line-display.o
|
||||
@ -1424,7 +1349,7 @@ index f5c13ed1c..7ecf3cd4a 100644
|
||||
+tm16xx-y += tm16xx_core.o
|
||||
diff --git a/drivers/auxdisplay/tm16xx.h b/drivers/auxdisplay/tm16xx.h
|
||||
new file mode 100644
|
||||
index 000000000..973b6ac19
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/auxdisplay/tm16xx.h
|
||||
@@ -0,0 +1,172 @@
|
||||
@ -1602,7 +1527,7 @@ index 000000000..973b6ac19
|
||||
+#endif /* _TM16XX_H */
|
||||
diff --git a/drivers/auxdisplay/tm16xx_core.c b/drivers/auxdisplay/tm16xx_core.c
|
||||
new file mode 100644
|
||||
index 000000000..e090c578f
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/auxdisplay/tm16xx_core.c
|
||||
@@ -0,0 +1,459 @@
|
||||
@ -2066,17 +1991,12 @@ index 000000000..e090c578f
|
||||
+MODULE_LICENSE("GPL");
|
||||
+MODULE_IMPORT_NS("LINEDISP");
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From aee73102a0488439a90552d63a8e74ff081508a7 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Fri, 29 Aug 2025 22:28:35 -0400
|
||||
Subject: [PATCH 12/14] auxdisplay: TM16xx: Add keypad support for scanning
|
||||
matrix keys
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: auxdisplay: TM16xx: Add keypad support for scanning matrix keys
|
||||
|
||||
Add support for keypad scanning on TM16xx-compatible auxiliary display
|
||||
controllers. It handles keypad initialization, scanning, and input
|
||||
@ -2092,31 +2012,17 @@ Key features include:
|
||||
This code is separated from main core driver to improve maintainability
|
||||
and reviewability.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
MAINTAINERS | 1 +
|
||||
drivers/auxdisplay/Kconfig | 9 ++
|
||||
drivers/auxdisplay/Kconfig | 9 +
|
||||
drivers/auxdisplay/Makefile | 1 +
|
||||
drivers/auxdisplay/tm16xx.h | 25 ++++
|
||||
drivers/auxdisplay/tm16xx.h | 25 ++
|
||||
drivers/auxdisplay/tm16xx_core.c | 4 +
|
||||
drivers/auxdisplay/tm16xx_keypad.c | 196 +++++++++++++++++++++++++++++
|
||||
6 files changed, 236 insertions(+)
|
||||
create mode 100644 drivers/auxdisplay/tm16xx_keypad.c
|
||||
drivers/auxdisplay/tm16xx_keypad.c | 196 ++++++++++
|
||||
5 files changed, 235 insertions(+)
|
||||
|
||||
diff --git a/MAINTAINERS b/MAINTAINERS
|
||||
index 7d5912f2d..84f213590 100644
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -25448,6 +25448,7 @@ F: Documentation/ABI/testing/sysfs-class-leds-tm16xx
|
||||
F: Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml
|
||||
F: drivers/auxdisplay/tm16xx.h
|
||||
F: drivers/auxdisplay/tm16xx_core.c
|
||||
+F: drivers/auxdisplay/tm16xx_keypad.c
|
||||
|
||||
TMIO/SDHI MMC DRIVER
|
||||
M: Wolfram Sang <wsa+renesas@sang-engineering.com>
|
||||
diff --git a/drivers/auxdisplay/Kconfig b/drivers/auxdisplay/Kconfig
|
||||
index 7bacf1111..f9a2c0641 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/Kconfig
|
||||
+++ b/drivers/auxdisplay/Kconfig
|
||||
@@ -528,13 +528,22 @@ config SEG_LED_GPIO
|
||||
@ -2143,7 +2049,7 @@ index 7bacf1111..f9a2c0641 100644
|
||||
# Character LCD with non-conforming interface section
|
||||
#
|
||||
diff --git a/drivers/auxdisplay/Makefile b/drivers/auxdisplay/Makefile
|
||||
index 7ecf3cd4a..a9b9c8ff0 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/Makefile
|
||||
+++ b/drivers/auxdisplay/Makefile
|
||||
@@ -18,3 +18,4 @@ obj-$(CONFIG_PARPORT_PANEL) += panel.o
|
||||
@ -2152,7 +2058,7 @@ index 7ecf3cd4a..a9b9c8ff0 100644
|
||||
tm16xx-y += tm16xx_core.o
|
||||
+tm16xx-$(CONFIG_TM16XX_KEYPAD) += tm16xx_keypad.o
|
||||
diff --git a/drivers/auxdisplay/tm16xx.h b/drivers/auxdisplay/tm16xx.h
|
||||
index 973b6ac19..c503c6136 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/tm16xx.h
|
||||
+++ b/drivers/auxdisplay/tm16xx.h
|
||||
@@ -103,6 +103,7 @@
|
||||
@ -2207,7 +2113,7 @@ index 973b6ac19..c503c6136 100644
|
||||
+
|
||||
#endif /* _TM16XX_H */
|
||||
diff --git a/drivers/auxdisplay/tm16xx_core.c b/drivers/auxdisplay/tm16xx_core.c
|
||||
index e090c578f..1d474d980 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/tm16xx_core.c
|
||||
+++ b/drivers/auxdisplay/tm16xx_core.c
|
||||
@@ -408,6 +408,10 @@ int tm16xx_probe(struct tm16xx_display *display)
|
||||
@ -2223,7 +2129,7 @@ index e090c578f..1d474d980 100644
|
||||
unregister_leds:
|
||||
diff --git a/drivers/auxdisplay/tm16xx_keypad.c b/drivers/auxdisplay/tm16xx_keypad.c
|
||||
new file mode 100644
|
||||
index 000000000..daa6afaf7
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/auxdisplay/tm16xx_keypad.c
|
||||
@@ -0,0 +1,196 @@
|
||||
@ -2424,17 +2330,12 @@ index 000000000..daa6afaf7
|
||||
+ return 0;
|
||||
+}
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From b05e349eda575c66f8b522869fe79149f74db731 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sat, 23 Aug 2025 21:26:59 -0400
|
||||
Subject: [PATCH 13/14] auxdisplay: TM16xx: Add support for I2C-based
|
||||
controllers
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: auxdisplay: TM16xx: Add support for I2C-based controllers
|
||||
|
||||
Add support for TM16xx-compatible auxiliary display controllers connected
|
||||
via the I2C bus.
|
||||
@ -2448,29 +2349,15 @@ The implementation includes:
|
||||
This allows platforms using TM16xx or compatible controllers over I2C to be
|
||||
managed by the TM16xx driver infrastructure.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
MAINTAINERS | 1 +
|
||||
drivers/auxdisplay/Kconfig | 16 ++
|
||||
drivers/auxdisplay/Kconfig | 16 +
|
||||
drivers/auxdisplay/Makefile | 1 +
|
||||
drivers/auxdisplay/tm16xx_i2c.c | 332 ++++++++++++++++++++++++++++++++
|
||||
4 files changed, 350 insertions(+)
|
||||
create mode 100644 drivers/auxdisplay/tm16xx_i2c.c
|
||||
drivers/auxdisplay/tm16xx_i2c.c | 332 ++++++++++
|
||||
3 files changed, 349 insertions(+)
|
||||
|
||||
diff --git a/MAINTAINERS b/MAINTAINERS
|
||||
index 84f213590..8a8a53efe 100644
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -25448,6 +25448,7 @@ F: Documentation/ABI/testing/sysfs-class-leds-tm16xx
|
||||
F: Documentation/devicetree/bindings/auxdisplay/titanmec,tm16xx.yaml
|
||||
F: drivers/auxdisplay/tm16xx.h
|
||||
F: drivers/auxdisplay/tm16xx_core.c
|
||||
+F: drivers/auxdisplay/tm16xx_i2c.c
|
||||
F: drivers/auxdisplay/tm16xx_keypad.c
|
||||
|
||||
TMIO/SDHI MMC DRIVER
|
||||
diff --git a/drivers/auxdisplay/Kconfig b/drivers/auxdisplay/Kconfig
|
||||
index f9a2c0641..d48c2f189 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/Kconfig
|
||||
+++ b/drivers/auxdisplay/Kconfig
|
||||
@@ -544,6 +544,22 @@ config TM16XX_KEYPAD
|
||||
@ -2497,7 +2384,7 @@ index f9a2c0641..d48c2f189 100644
|
||||
# Character LCD with non-conforming interface section
|
||||
#
|
||||
diff --git a/drivers/auxdisplay/Makefile b/drivers/auxdisplay/Makefile
|
||||
index a9b9c8ff0..ba7b310f5 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/Makefile
|
||||
+++ b/drivers/auxdisplay/Makefile
|
||||
@@ -19,3 +19,4 @@ obj-$(CONFIG_SEG_LED_GPIO) += seg-led-gpio.o
|
||||
@ -2507,7 +2394,7 @@ index a9b9c8ff0..ba7b310f5 100644
|
||||
+obj-$(CONFIG_TM16XX_I2C) += tm16xx_i2c.o
|
||||
diff --git a/drivers/auxdisplay/tm16xx_i2c.c b/drivers/auxdisplay/tm16xx_i2c.c
|
||||
new file mode 100644
|
||||
index 000000000..013beceda
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/auxdisplay/tm16xx_i2c.c
|
||||
@@ -0,0 +1,332 @@
|
||||
@ -2844,17 +2731,12 @@ index 000000000..013beceda
|
||||
+MODULE_LICENSE("GPL");
|
||||
+MODULE_IMPORT_NS("TM16XX");
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
From 03ae70c0f50277360166c8bb0bf75b0077c84057 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Jean-Fran=C3=A7ois=20Lessard?= <jefflessard3@gmail.com>
|
||||
Date: Sat, 23 Aug 2025 21:55:14 -0400
|
||||
Subject: [PATCH 14/14] auxdisplay: TM16xx: Add support for SPI-based
|
||||
controllers
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
Subject: auxdisplay: TM16xx: Add support for SPI-based controllers
|
||||
|
||||
Add support for TM16xx-compatible auxiliary display controllers connected
|
||||
via the SPI bus.
|
||||
@ -2868,29 +2750,15 @@ The implementation includes:
|
||||
This allows platforms using TM16xx or compatible controllers over SPI to be
|
||||
managed by the TM16xx driver infrastructure.
|
||||
|
||||
Signed-off-by: Jean-François Lessard <jefflessard3@gmail.com>
|
||||
Signed-off-by: Jean-Francois Lessard <jefflessard3@gmail.com>
|
||||
---
|
||||
MAINTAINERS | 1 +
|
||||
drivers/auxdisplay/Kconfig | 16 ++
|
||||
drivers/auxdisplay/Kconfig | 16 +
|
||||
drivers/auxdisplay/Makefile | 1 +
|
||||
drivers/auxdisplay/tm16xx_spi.c | 397 ++++++++++++++++++++++++++++++++
|
||||
4 files changed, 415 insertions(+)
|
||||
create mode 100644 drivers/auxdisplay/tm16xx_spi.c
|
||||
drivers/auxdisplay/tm16xx_spi.c | 397 ++++++++++
|
||||
3 files changed, 414 insertions(+)
|
||||
|
||||
diff --git a/MAINTAINERS b/MAINTAINERS
|
||||
index 8a8a53efe..5d5e5f01e 100644
|
||||
--- a/MAINTAINERS
|
||||
+++ b/MAINTAINERS
|
||||
@@ -25450,6 +25450,7 @@ F: drivers/auxdisplay/tm16xx.h
|
||||
F: drivers/auxdisplay/tm16xx_core.c
|
||||
F: drivers/auxdisplay/tm16xx_i2c.c
|
||||
F: drivers/auxdisplay/tm16xx_keypad.c
|
||||
+F: drivers/auxdisplay/tm16xx_spi.c
|
||||
|
||||
TMIO/SDHI MMC DRIVER
|
||||
M: Wolfram Sang <wsa+renesas@sang-engineering.com>
|
||||
diff --git a/drivers/auxdisplay/Kconfig b/drivers/auxdisplay/Kconfig
|
||||
index d48c2f189..61e5af8d0 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/Kconfig
|
||||
+++ b/drivers/auxdisplay/Kconfig
|
||||
@@ -560,6 +560,22 @@ config TM16XX_I2C
|
||||
@ -2917,7 +2785,7 @@ index d48c2f189..61e5af8d0 100644
|
||||
# Character LCD with non-conforming interface section
|
||||
#
|
||||
diff --git a/drivers/auxdisplay/Makefile b/drivers/auxdisplay/Makefile
|
||||
index ba7b310f5..2485a3a67 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/auxdisplay/Makefile
|
||||
+++ b/drivers/auxdisplay/Makefile
|
||||
@@ -20,3 +20,4 @@ obj-$(CONFIG_TM16XX) += tm16xx.o
|
||||
@ -2927,7 +2795,7 @@ index ba7b310f5..2485a3a67 100644
|
||||
+obj-$(CONFIG_TM16XX_SPI) += tm16xx_spi.o
|
||||
diff --git a/drivers/auxdisplay/tm16xx_spi.c b/drivers/auxdisplay/tm16xx_spi.c
|
||||
new file mode 100644
|
||||
index 000000000..b305301f9
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/auxdisplay/tm16xx_spi.c
|
||||
@@ -0,0 +1,397 @@
|
||||
@ -3329,5 +3197,5 @@ index 000000000..b305301f9
|
||||
+MODULE_LICENSE("GPL");
|
||||
+MODULE_IMPORT_NS("TM16XX");
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
@ -13,7 +13,7 @@ diff --git a/drivers/gpu/drm/panel/Kconfig b/drivers/gpu/drm/panel/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/gpu/drm/panel/Kconfig
|
||||
+++ b/drivers/gpu/drm/panel/Kconfig
|
||||
@@ -1087,6 +1087,15 @@ config DRM_PANEL_WIDECHIPS_WS2401
|
||||
@@ -1147,6 +1147,15 @@ config DRM_PANEL_WIDECHIPS_WS2401
|
||||
480x800 display controller used in panels such as Samsung LMS380KF01.
|
||||
This display is used in the Samsung Galaxy Ace 2 GT-I8160 (Codina).
|
||||
|
||||
@ -33,7 +33,7 @@ diff --git a/drivers/gpu/drm/panel/Makefile b/drivers/gpu/drm/panel/Makefile
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/gpu/drm/panel/Makefile
|
||||
+++ b/drivers/gpu/drm/panel/Makefile
|
||||
@@ -112,3 +112,4 @@ obj-$(CONFIG_DRM_PANEL_VISIONOX_VTDR6130) += panel-visionox-vtdr6130.o
|
||||
@@ -117,3 +117,4 @@ obj-$(CONFIG_DRM_PANEL_VISIONOX_VTDR6130) += panel-visionox-vtdr6130.o
|
||||
obj-$(CONFIG_DRM_PANEL_VISIONOX_R66451) += panel-visionox-r66451.o
|
||||
obj-$(CONFIG_DRM_PANEL_WIDECHIPS_WS2401) += panel-widechips-ws2401.o
|
||||
obj-$(CONFIG_DRM_PANEL_XINPENG_XPP055C272) += panel-xinpeng-xpp055c272.o
|
||||
|
||||
@ -26,7 +26,7 @@ diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/mmc/core/core.c
|
||||
+++ b/drivers/mmc/core/core.c
|
||||
@@ -1374,6 +1374,14 @@ void mmc_power_off(struct mmc_host *host)
|
||||
@@ -1373,6 +1373,14 @@ void mmc_power_off(struct mmc_host *host)
|
||||
if (host->ios.power_mode == MMC_POWER_OFF)
|
||||
return;
|
||||
|
||||
|
||||
@ -110,7 +110,7 @@ diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c b/drivers/gpu/drm/bridge/
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
|
||||
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi.c
|
||||
@@ -69,15 +69,15 @@ static const u16 csc_coeff_rgb_out_eitu709[3][4] = {
|
||||
@@ -70,15 +70,15 @@ static const u16 csc_coeff_rgb_out_eitu709[3][4] = {
|
||||
};
|
||||
|
||||
static const u16 csc_coeff_rgb_in_eitu601[3][4] = {
|
||||
@ -136,7 +136,7 @@ diff --git a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
|
||||
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
|
||||
@@ -178,6 +178,46 @@ static const struct dw_hdmi_mpll_config rockchip_mpll_cfg[] = {
|
||||
@@ -177,6 +177,46 @@ static const struct dw_hdmi_mpll_config rockchip_mpll_cfg[] = {
|
||||
}
|
||||
};
|
||||
|
||||
@ -183,7 +183,7 @@ index 111111111111..222222222222 100644
|
||||
static const struct dw_hdmi_curr_ctrl rockchip_cur_ctr[] = {
|
||||
/* pixelclk bpp8 bpp10 bpp12 */
|
||||
{
|
||||
@@ -343,6 +383,8 @@ static int dw_hdmi_rockchip_genphy_init(struct dw_hdmi *dw_hdmi, void *data,
|
||||
@@ -338,6 +378,8 @@ static int dw_hdmi_rockchip_genphy_init(struct dw_hdmi *dw_hdmi, void *data,
|
||||
|
||||
dw_hdmi_set_high_tmds_clock_ratio(dw_hdmi, display);
|
||||
|
||||
|
||||
@ -25,7 +25,7 @@ diff --git a/drivers/mfd/mfd-core.c b/drivers/mfd/mfd-core.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/mfd/mfd-core.c
|
||||
+++ b/drivers/mfd/mfd-core.c
|
||||
@@ -208,7 +208,7 @@ static int mfd_add_device(struct device *parent, int id,
|
||||
@@ -209,7 +209,7 @@ static int mfd_add_device(struct device *parent, int id,
|
||||
|
||||
match:
|
||||
if (!pdev->dev.of_node)
|
||||
@ -38,7 +38,7 @@ diff --git a/drivers/mfd/rk8xx-core.c b/drivers/mfd/rk8xx-core.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/mfd/rk8xx-core.c
|
||||
+++ b/drivers/mfd/rk8xx-core.c
|
||||
@@ -133,6 +133,7 @@ static const struct mfd_cell rk818s[] = {
|
||||
@@ -134,6 +134,7 @@ static const struct mfd_cell rk818s[] = {
|
||||
{ .name = "rk808-regulator", },
|
||||
{
|
||||
.name = "rk808-rtc",
|
||||
|
||||
@ -48,7 +48,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rock
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
@@ -1071,6 +1071,7 @@ usbdrd3: usb@ff600000 {
|
||||
@@ -1105,6 +1105,7 @@ usbdrd3: usb@ff600000 {
|
||||
snps,dis-del-phy-power-chg-quirk;
|
||||
snps,dis_enblslpm_quirk;
|
||||
snps,dis-tx-ipgap-linecheck-quirk;
|
||||
|
||||
@ -186,7 +186,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rock
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
@@ -751,6 +751,28 @@ vop_mmu: iommu@ff373f00 {
|
||||
@@ -785,6 +785,28 @@ vop_mmu: iommu@ff373f00 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@ -246,7 +246,7 @@ index 111111111111..222222222222 100644
|
||||
status = "disabled";
|
||||
};
|
||||
diff --git a/drivers/media/platform/rockchip/Kconfig b/drivers/media/platform/rockchip/Kconfig
|
||||
index 9bbeec4996aa..9fcf52f864b4 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/rockchip/Kconfig
|
||||
+++ b/drivers/media/platform/rockchip/Kconfig
|
||||
@@ -5,3 +5,4 @@ comment "Rockchip media platform drivers"
|
||||
@ -255,7 +255,7 @@ index 9bbeec4996aa..9fcf52f864b4 100644
|
||||
source "drivers/media/platform/rockchip/rkvdec/Kconfig"
|
||||
+source "drivers/media/platform/rockchip/iep/Kconfig"
|
||||
diff --git a/drivers/media/platform/rockchip/Makefile b/drivers/media/platform/rockchip/Makefile
|
||||
index 286dc5c53f7e..85293a5fec41 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/rockchip/Makefile
|
||||
+++ b/drivers/media/platform/rockchip/Makefile
|
||||
@@ -2,3 +2,4 @@
|
||||
|
||||
@ -2891,7 +2891,7 @@ index 111111111111..222222222222 100644
|
||||
}
|
||||
};
|
||||
|
||||
@@ -1187,8 +1191,17 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
@@ -1185,8 +1189,17 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
}
|
||||
}
|
||||
|
||||
@ -2910,7 +2910,7 @@ index 111111111111..222222222222 100644
|
||||
{ /* sentinel */ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, of_rkvdec_match);
|
||||
@@ -1199,16 +1212,22 @@ static const char * const rkvdec_clk_names[] = {
|
||||
@@ -1197,16 +1210,22 @@ static const char * const rkvdec_clk_names[] = {
|
||||
|
||||
static int rkvdec_probe(struct platform_device *pdev)
|
||||
{
|
||||
@ -3074,7 +3074,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
return 0;
|
||||
@@ -470,10 +494,10 @@ static int rkvdec_try_output_fmt(struct file *file, void *priv,
|
||||
struct rkvdec_ctx *ctx = fh_to_rkvdec_ctx(priv);
|
||||
struct rkvdec_ctx *ctx = file_to_rkvdec_ctx(file);
|
||||
const struct rkvdec_coded_fmt_desc *desc;
|
||||
|
||||
- desc = rkvdec_find_coded_fmt_desc(pix_mp->pixelformat);
|
||||
@ -3113,7 +3113,7 @@ index 111111111111..222222222222 100644
|
||||
return 0;
|
||||
}
|
||||
|
||||
@@ -970,14 +998,17 @@ static int rkvdec_init_ctrls(struct rkvdec_ctx *ctx)
|
||||
@@ -969,14 +997,17 @@ static int rkvdec_init_ctrls(struct rkvdec_ctx *ctx)
|
||||
int ret;
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(rkvdec_coded_fmts); i++)
|
||||
@ -3157,7 +3157,7 @@ diff --git a/drivers/media/platform/rockchip/rkvdec/rkvdec.c b/drivers/media/pla
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
+++ b/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
@@ -1222,6 +1222,10 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
@@ -1220,6 +1220,10 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
}
|
||||
}
|
||||
|
||||
@ -3168,7 +3168,7 @@ index 111111111111..222222222222 100644
|
||||
static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
.capabilities = RKVDEC_CAPABILITY_HEVC |
|
||||
RKVDEC_CAPABILITY_H264 |
|
||||
@@ -1229,6 +1233,10 @@ static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
@@ -1227,6 +1231,10 @@ static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
};
|
||||
|
||||
static const struct of_device_id of_rkvdec_match[] = {
|
||||
@ -3261,7 +3261,7 @@ diff --git a/drivers/media/platform/rockchip/rkvdec/rkvdec.c b/drivers/media/pla
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
+++ b/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
@@ -1226,6 +1226,13 @@ static const struct rkvdec_variant rk3288_rkvdec_variant = {
|
||||
@@ -1224,6 +1224,13 @@ static const struct rkvdec_variant rk3288_rkvdec_variant = {
|
||||
.capabilities = RKVDEC_CAPABILITY_HEVC,
|
||||
};
|
||||
|
||||
@ -3275,7 +3275,7 @@ index 111111111111..222222222222 100644
|
||||
static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
.capabilities = RKVDEC_CAPABILITY_HEVC |
|
||||
RKVDEC_CAPABILITY_H264 |
|
||||
@@ -1237,6 +1244,10 @@ static const struct of_device_id of_rkvdec_match[] = {
|
||||
@@ -1235,6 +1242,10 @@ static const struct of_device_id of_rkvdec_match[] = {
|
||||
.compatible = "rockchip,rk3288-vdec",
|
||||
.data = &rk3288_rkvdec_variant,
|
||||
},
|
||||
@ -3286,7 +3286,7 @@ index 111111111111..222222222222 100644
|
||||
{
|
||||
.compatible = "rockchip,rk3399-vdec",
|
||||
.data = &rk3399_rkvdec_variant,
|
||||
@@ -1267,6 +1278,7 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1265,6 +1276,7 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
platform_set_drvdata(pdev, rkvdec);
|
||||
rkvdec->dev = &pdev->dev;
|
||||
rkvdec->capabilities = variant->capabilities;
|
||||
@ -3350,8 +3350,8 @@ index 111111111111..222222222222 100644
|
||||
oneOf:
|
||||
+ - const: rockchip,rk3288-vdec
|
||||
- const: rockchip,rk3399-vdec
|
||||
- items:
|
||||
- enum:
|
||||
- const: rockchip,rk3576-vdec
|
||||
- const: rockchip,rk3588-vdec
|
||||
--
|
||||
Armbian
|
||||
|
||||
@ -3420,8 +3420,8 @@ Add controls to provide it as the raw data form the stream.
|
||||
Signed-off-by: Detlev Casanova <detlev.casanova@collabora.com>
|
||||
---
|
||||
Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst | 114 ++++++++++
|
||||
Documentation/userspace-api/media/v4l/vidioc-queryctrl.rst | 12 +
|
||||
Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions | 2 +
|
||||
Documentation/userspace-api/media/v4l/vidioc-queryctrl.rst | 12 +
|
||||
3 files changed, 128 insertions(+)
|
||||
|
||||
diff --git a/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst b/Documentation/userspace-api/media/v4l/ext-ctrls-codec-stateless.rst
|
||||
@ -3549,6 +3549,19 @@ index 111111111111..222222222222 100644
|
||||
.. _v4l2-codec-stateless-av1:
|
||||
|
||||
``V4L2_CID_STATELESS_AV1_SEQUENCE (struct)``
|
||||
diff --git a/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions b/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions
|
||||
+++ b/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions
|
||||
@@ -149,6 +149,8 @@ replace symbol V4L2_CTRL_TYPE_H264_DECODE_PARAMS :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_HEVC_SPS :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_HEVC_PPS :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS :c:type:`v4l2_ctrl_type`
|
||||
+replace symbol V4L2_CTRL_TYPE_HEVC_EXT_SPS_ST_RPS :c:type:`v4l2_ctrl_type`
|
||||
+replace symbol V4L2_CTRL_TYPE_HEVC_EXT_SPS_LT_RPS :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_AREA :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_RECT :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_FWHT_PARAMS :c:type:`v4l2_ctrl_type`
|
||||
diff --git a/Documentation/userspace-api/media/v4l/vidioc-queryctrl.rst b/Documentation/userspace-api/media/v4l/vidioc-queryctrl.rst
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/userspace-api/media/v4l/vidioc-queryctrl.rst
|
||||
@ -3572,19 +3585,6 @@ index 111111111111..222222222222 100644
|
||||
* - ``V4L2_CTRL_TYPE_VP9_COMPRESSED_HDR``
|
||||
- n/a
|
||||
- n/a
|
||||
diff --git a/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions b/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions
|
||||
+++ b/Documentation/userspace-api/media/v4l/videodev2.h.rst.exceptions
|
||||
@@ -149,6 +149,8 @@ replace symbol V4L2_CTRL_TYPE_H264_DECODE_PARAMS :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_HEVC_SPS :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_HEVC_PPS :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS :c:type:`v4l2_ctrl_type`
|
||||
+replace symbol V4L2_CTRL_TYPE_HEVC_EXT_SPS_ST_RPS :c:type:`v4l2_ctrl_type`
|
||||
+replace symbol V4L2_CTRL_TYPE_HEVC_EXT_SPS_LT_RPS :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_AREA :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_RECT :c:type:`v4l2_ctrl_type`
|
||||
replace symbol V4L2_CTRL_TYPE_FWHT_PARAMS :c:type:`v4l2_ctrl_type`
|
||||
--
|
||||
Armbian
|
||||
|
||||
@ -3643,7 +3643,7 @@ index 111111111111..222222222222 100644
|
||||
case V4L2_CTRL_TYPE_HDR10_CLL_INFO:
|
||||
break;
|
||||
|
||||
@@ -1921,6 +1933,12 @@ static struct v4l2_ctrl *v4l2_ctrl_new(struct v4l2_ctrl_handler *hdl,
|
||||
@@ -1925,6 +1937,12 @@ static struct v4l2_ctrl *v4l2_ctrl_new(struct v4l2_ctrl_handler *hdl,
|
||||
case V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS:
|
||||
elem_size = sizeof(struct v4l2_ctrl_hevc_slice_params);
|
||||
break;
|
||||
@ -3688,7 +3688,7 @@ diff --git a/include/uapi/linux/v4l2-controls.h b/include/uapi/linux/v4l2-contro
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/include/uapi/linux/v4l2-controls.h
|
||||
+++ b/include/uapi/linux/v4l2-controls.h
|
||||
@@ -2088,6 +2088,8 @@ struct v4l2_ctrl_mpeg2_quantisation {
|
||||
@@ -2093,6 +2093,8 @@ struct v4l2_ctrl_mpeg2_quantisation {
|
||||
#define V4L2_CID_STATELESS_HEVC_DECODE_MODE (V4L2_CID_CODEC_STATELESS_BASE + 405)
|
||||
#define V4L2_CID_STATELESS_HEVC_START_CODE (V4L2_CID_CODEC_STATELESS_BASE + 406)
|
||||
#define V4L2_CID_STATELESS_HEVC_ENTRY_POINT_OFFSETS (V4L2_CID_CODEC_STATELESS_BASE + 407)
|
||||
@ -3697,9 +3697,9 @@ index 111111111111..222222222222 100644
|
||||
|
||||
enum v4l2_stateless_hevc_decode_mode {
|
||||
V4L2_STATELESS_HEVC_DECODE_MODE_SLICE_BASED,
|
||||
@@ -2543,6 +2545,65 @@ struct v4l2_ctrl_hevc_scaling_matrix {
|
||||
__u8 scaling_list_dc_coef_32x32[2];
|
||||
};
|
||||
@@ -3480,6 +3482,65 @@ struct v4l2_ctrl_av1_film_grain {
|
||||
#define V4L2_CID_MPEG_MFC51_BASE V4L2_CID_CODEC_MFC51_BASE
|
||||
#endif
|
||||
|
||||
+#define V4L2_HEVC_EXT_SPS_ST_RPS_FLAG_INTER_REF_PIC_SET_PRED 0x1
|
||||
+
|
||||
@ -3767,7 +3767,7 @@ diff --git a/include/uapi/linux/videodev2.h b/include/uapi/linux/videodev2.h
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/include/uapi/linux/videodev2.h
|
||||
+++ b/include/uapi/linux/videodev2.h
|
||||
@@ -1974,6 +1974,8 @@ enum v4l2_ctrl_type {
|
||||
@@ -1981,6 +1981,8 @@ enum v4l2_ctrl_type {
|
||||
V4L2_CTRL_TYPE_HEVC_SLICE_PARAMS = 0x0272,
|
||||
V4L2_CTRL_TYPE_HEVC_SCALING_MATRIX = 0x0273,
|
||||
V4L2_CTRL_TYPE_HEVC_DECODE_PARAMS = 0x0274,
|
||||
@ -3798,7 +3798,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
|
||||
@@ -1252,6 +1252,70 @@ vepu121_3_mmu: iommu@fdbac800 {
|
||||
@@ -1353,6 +1353,70 @@ vepu121_3_mmu: iommu@fdbac800 {
|
||||
#iommu-cells = <0>;
|
||||
};
|
||||
|
||||
@ -3869,7 +3869,7 @@ index 111111111111..222222222222 100644
|
||||
av1d: video-codec@fdc70000 {
|
||||
compatible = "rockchip,rk3588-av1-vpu";
|
||||
reg = <0x0 0xfdc70000 0x0 0x800>;
|
||||
@@ -3093,6 +3157,16 @@ system_sram2: sram@ff001000 {
|
||||
@@ -3248,6 +3312,16 @@ system_sram2: sram@ff001000 {
|
||||
ranges = <0x0 0x0 0xff001000 0xef000>;
|
||||
#address-cells = <1>;
|
||||
#size-cells = <1>;
|
||||
@ -3907,7 +3907,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3576.dtsi b/arch/arm64/boot/dts/rock
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3576.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3576.dtsi
|
||||
@@ -1139,6 +1139,41 @@ gpu: gpu@27800000 {
|
||||
@@ -1289,6 +1289,41 @@ gpu: gpu@27800000 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@ -3949,7 +3949,7 @@ index 111111111111..222222222222 100644
|
||||
vop: vop@27d00000 {
|
||||
compatible = "rockchip,rk3576-vop";
|
||||
reg = <0x0 0x27d00000 0x0 0x3000>, <0x0 0x27d05000 0x0 0x1000>;
|
||||
@@ -2409,6 +2444,7 @@ sram: sram@3ff88000 {
|
||||
@@ -2694,6 +2729,7 @@ sram: sram@3ff88000 {
|
||||
/* start address and size should be 4k align */
|
||||
rkvdec_sram: rkvdec-sram@0 {
|
||||
reg = <0x0 0x78000>;
|
||||
@ -3977,7 +3977,7 @@ diff --git a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c b/drivers/gpu/drm/brid
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c
|
||||
+++ b/drivers/gpu/drm/bridge/synopsys/dw-hdmi-qp.c
|
||||
@@ -276,8 +276,7 @@ static unsigned int dw_hdmi_qp_find_n(struct dw_hdmi_qp *hdmi, unsigned long pix
|
||||
@@ -277,8 +277,7 @@ static unsigned int dw_hdmi_qp_find_n(struct dw_hdmi_qp *hdmi, unsigned long pix
|
||||
if (n > 0)
|
||||
return n;
|
||||
|
||||
@ -5391,7 +5391,7 @@ diff --git a/drivers/media/platform/rockchip/rkvdec/rkvdec.c b/drivers/media/pla
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
+++ b/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
@@ -903,6 +903,15 @@ void rkvdec_run_postamble(struct rkvdec_ctx *ctx, struct rkvdec_run *run)
|
||||
@@ -902,6 +902,15 @@ void rkvdec_run_postamble(struct rkvdec_ctx *ctx, struct rkvdec_run *run)
|
||||
v4l2_ctrl_request_complete(src_req, &ctx->ctrl_hdl);
|
||||
}
|
||||
|
||||
@ -5407,7 +5407,7 @@ index 111111111111..222222222222 100644
|
||||
static void rkvdec_device_run(void *priv)
|
||||
{
|
||||
struct rkvdec_ctx *ctx = priv;
|
||||
@@ -1217,7 +1226,6 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
@@ -1215,7 +1224,6 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
if (ctx) {
|
||||
dev_err(rkvdec->dev, "Frame processing timed out!\n");
|
||||
writel(RKVDEC_IRQ_DIS, rkvdec->regs + RKVDEC_REG_INTERRUPT);
|
||||
@ -8118,7 +8118,7 @@ index 111111111111..222222222222 100644
|
||||
}
|
||||
|
||||
return NULL;
|
||||
@@ -1003,18 +1004,19 @@ static int rkvdec_add_ctrls(struct rkvdec_ctx *ctx,
|
||||
@@ -1002,18 +1003,19 @@ static int rkvdec_add_ctrls(struct rkvdec_ctx *ctx,
|
||||
|
||||
static int rkvdec_init_ctrls(struct rkvdec_ctx *ctx)
|
||||
{
|
||||
@ -8144,7 +8144,7 @@ index 111111111111..222222222222 100644
|
||||
if (ret)
|
||||
goto err_free_handler;
|
||||
}
|
||||
@@ -1230,11 +1232,18 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
@@ -1228,11 +1230,18 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
}
|
||||
}
|
||||
|
||||
@ -8163,7 +8163,7 @@ index 111111111111..222222222222 100644
|
||||
.capabilities = RKVDEC_CAPABILITY_HEVC |
|
||||
RKVDEC_CAPABILITY_H264 |
|
||||
RKVDEC_CAPABILITY_VP9,
|
||||
@@ -1242,6 +1251,7 @@ static const struct rkvdec_variant rk3328_rkvdec_variant = {
|
||||
@@ -1240,6 +1249,7 @@ static const struct rkvdec_variant rk3328_rkvdec_variant = {
|
||||
};
|
||||
|
||||
static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
@ -8171,7 +8171,7 @@ index 111111111111..222222222222 100644
|
||||
.capabilities = RKVDEC_CAPABILITY_HEVC |
|
||||
RKVDEC_CAPABILITY_H264 |
|
||||
RKVDEC_CAPABILITY_VP9,
|
||||
@@ -1285,6 +1295,7 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1283,6 +1293,7 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
|
||||
platform_set_drvdata(pdev, rkvdec);
|
||||
rkvdec->dev = &pdev->dev;
|
||||
@ -8532,7 +8532,7 @@ index 111111111111..222222222222 100644
|
||||
}
|
||||
|
||||
rkvdec_queue_cleanup(q, VB2_BUF_STATE_ERROR);
|
||||
@@ -1324,8 +1338,6 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1322,8 +1336,6 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -8541,7 +8541,7 @@ index 111111111111..222222222222 100644
|
||||
irq = platform_get_irq(pdev, 0);
|
||||
if (irq <= 0)
|
||||
return -ENXIO;
|
||||
@@ -1345,6 +1345,10 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1336,6 +1348,10 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
return ret;
|
||||
}
|
||||
|
||||
@ -8552,7 +8552,7 @@ index 111111111111..222222222222 100644
|
||||
pm_runtime_set_autosuspend_delay(&pdev->dev, 100);
|
||||
pm_runtime_use_autosuspend(&pdev->dev);
|
||||
pm_runtime_enable(&pdev->dev);
|
||||
@@ -1355,7 +1355,8 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1344,7 +1360,8 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
goto err_disable_runtime_pm;
|
||||
|
||||
@ -8562,7 +8562,7 @@ index 111111111111..222222222222 100644
|
||||
rkvdec->empty_domain = iommu_paging_domain_alloc(rkvdec->dev);
|
||||
|
||||
if (IS_ERR(rkvdec->empty_domain)) {
|
||||
@@ -1360,6 +1360,10 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1358,6 +1375,10 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
err_disable_runtime_pm:
|
||||
pm_runtime_dont_use_autosuspend(&pdev->dev);
|
||||
pm_runtime_disable(&pdev->dev);
|
||||
@ -8619,8 +8619,8 @@ index 111111111111..222222222222 100644
|
||||
void *priv;
|
||||
};
|
||||
|
||||
@@ -150,10 +157,16 @@ static inline struct rkvdec_ctx *fh_to_rkvdec_ctx(struct v4l2_fh *fh)
|
||||
return container_of(fh, struct rkvdec_ctx, fh);
|
||||
@@ -150,10 +157,16 @@ static inline struct rkvdec_ctx *file_to_rkvdec_ctx(struct file *filp)
|
||||
return container_of(file_to_v4l2_fh(filp), struct rkvdec_ctx, fh);
|
||||
}
|
||||
|
||||
+enum rkvdec_alloc_type {
|
||||
@ -8657,7 +8657,7 @@ diff --git a/drivers/media/platform/rockchip/rkvdec/rkvdec.c b/drivers/media/pla
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
+++ b/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
@@ -1207,10 +1207,9 @@ static void rkvdec_iommu_restore(struct rkvdec_dev *rkvdec)
|
||||
@@ -1205,10 +1205,9 @@ static void rkvdec_iommu_restore(struct rkvdec_dev *rkvdec)
|
||||
}
|
||||
}
|
||||
|
||||
@ -8670,7 +8670,7 @@ index 111111111111..222222222222 100644
|
||||
enum vb2_buffer_state state;
|
||||
u32 status;
|
||||
|
||||
@@ -1231,6 +1230,15 @@ static irqreturn_t rkvdec_irq_handler(int irq, void *priv)
|
||||
@@ -1229,6 +1228,15 @@ static irqreturn_t rkvdec_irq_handler(int irq, void *priv)
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
@ -8686,7 +8686,7 @@ index 111111111111..222222222222 100644
|
||||
static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
{
|
||||
struct rkvdec_dev *rkvdec;
|
||||
@@ -1249,6 +1257,7 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
@@ -1247,6 +1255,7 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
static const struct rkvdec_config config_rkvdec = {
|
||||
.coded_fmts = (struct rkvdec_coded_fmt_desc *)rkvdec_coded_fmts,
|
||||
.coded_fmts_num = ARRAY_SIZE(rkvdec_coded_fmts),
|
||||
@ -8729,7 +8729,7 @@ diff --git a/drivers/media/platform/rockchip/rkvdec/rkvdec.c b/drivers/media/pla
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
+++ b/drivers/media/platform/rockchip/rkvdec/rkvdec.c
|
||||
@@ -1297,15 +1297,10 @@ static const struct of_device_id of_rkvdec_match[] = {
|
||||
@@ -1295,15 +1295,10 @@ static const struct of_device_id of_rkvdec_match[] = {
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, of_rkvdec_match);
|
||||
|
||||
@ -8745,7 +8745,7 @@ index 111111111111..222222222222 100644
|
||||
int ret, irq;
|
||||
|
||||
variant = of_device_get_match_data(&pdev->dev);
|
||||
@@ -1324,19 +1319,12 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1322,19 +1317,12 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
mutex_init(&rkvdec->vdev_lock);
|
||||
INIT_DELAYED_WORK(&rkvdec->watchdog_work, rkvdec_watchdog_func);
|
||||
|
||||
@ -9867,7 +9867,7 @@ index 111111111111..222222222222 100644
|
||||
static bool rkvdec_is_capable(struct rkvdec_ctx *ctx, unsigned int capability)
|
||||
{
|
||||
return (ctx->dev->capabilities & capability) == capability;
|
||||
@@ -1230,6 +1290,35 @@ static irqreturn_t rk3399_irq_handler(struct rkvdec_ctx *ctx)
|
||||
@@ -1228,6 +1288,35 @@ static irqreturn_t rk3399_irq_handler(struct rkvdec_ctx *ctx)
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
@ -9903,7 +9903,7 @@ index 111111111111..222222222222 100644
|
||||
static irqreturn_t rkvdec_irq_handler(int irq, void *priv)
|
||||
{
|
||||
struct rkvdec_dev *rkvdec = priv;
|
||||
@@ -1254,10 +1343,76 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
@@ -1252,10 +1341,76 @@ static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
}
|
||||
}
|
||||
|
||||
@ -9980,7 +9980,7 @@ index 111111111111..222222222222 100644
|
||||
};
|
||||
|
||||
static const struct rkvdec_variant rk3288_rkvdec_variant = {
|
||||
@@ -1280,6 +1435,11 @@ static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
@@ -1278,6 +1433,11 @@ static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
RKVDEC_CAPABILITY_VP9,
|
||||
};
|
||||
|
||||
@ -9992,7 +9992,7 @@ index 111111111111..222222222222 100644
|
||||
static const struct of_device_id of_rkvdec_match[] = {
|
||||
{
|
||||
.compatible = "rockchip,rk3288-vdec",
|
||||
@@ -1293,6 +1453,10 @@ static const struct of_device_id of_rkvdec_match[] = {
|
||||
@@ -1291,6 +1451,10 @@ static const struct of_device_id of_rkvdec_match[] = {
|
||||
.compatible = "rockchip,rk3399-vdec",
|
||||
.data = &rk3399_rkvdec_variant,
|
||||
},
|
||||
@ -10003,7 +10003,7 @@ index 111111111111..222222222222 100644
|
||||
{ /* sentinel */ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, of_rkvdec_match);
|
||||
@@ -1319,11 +1483,16 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1317,11 +1481,16 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
mutex_init(&rkvdec->vdev_lock);
|
||||
INIT_DELAYED_WORK(&rkvdec->watchdog_work, rkvdec_watchdog_func);
|
||||
|
||||
@ -12406,7 +12406,7 @@ index 111111111111..222222222222 100644
|
||||
};
|
||||
|
||||
static bool rkvdec_is_capable(struct rkvdec_ctx *ctx, unsigned int capability)
|
||||
@@ -1319,6 +1420,35 @@ static irqreturn_t vdpu381_irq_handler(struct rkvdec_ctx *ctx)
|
||||
@@ -1317,6 +1418,35 @@ static irqreturn_t vdpu381_irq_handler(struct rkvdec_ctx *ctx)
|
||||
return IRQ_HANDLED;
|
||||
}
|
||||
|
||||
@ -12442,7 +12442,7 @@ index 111111111111..222222222222 100644
|
||||
static irqreturn_t rkvdec_irq_handler(int irq, void *priv)
|
||||
{
|
||||
struct rkvdec_dev *rkvdec = priv;
|
||||
@@ -1391,6 +1521,7 @@ static const struct rkvdec_config config_rkvdec = {
|
||||
@@ -1389,6 +1519,7 @@ static const struct rkvdec_config config_rkvdec = {
|
||||
.coded_fmts_num = ARRAY_SIZE(rkvdec_coded_fmts),
|
||||
.irq_handler = rk3399_irq_handler,
|
||||
.fill_pixfmt_mp = v4l2_fill_pixfmt_mp,
|
||||
@ -12450,7 +12450,7 @@ index 111111111111..222222222222 100644
|
||||
};
|
||||
|
||||
static struct rcb_size_info vdpu381_rcb_sizes[] = {
|
||||
@@ -1413,6 +1544,33 @@ static const struct rkvdec_config config_vdpu381 = {
|
||||
@@ -1411,6 +1542,33 @@ static const struct rkvdec_config config_vdpu381 = {
|
||||
.rcb_num = ARRAY_SIZE(vdpu381_rcb_sizes),
|
||||
.irq_handler = vdpu381_irq_handler,
|
||||
.fill_pixfmt_mp = vdpu38x_fill_pixfmt_mp,
|
||||
@ -12484,7 +12484,7 @@ index 111111111111..222222222222 100644
|
||||
};
|
||||
|
||||
static const struct rkvdec_variant rk3288_rkvdec_variant = {
|
||||
@@ -1437,6 +1595,12 @@ static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
@@ -1435,6 +1593,12 @@ static const struct rkvdec_variant rk3399_rkvdec_variant = {
|
||||
|
||||
static const struct rkvdec_variant rk3588_vdpu381_variant = {
|
||||
.config = &config_vdpu381,
|
||||
@ -12497,7 +12497,7 @@ index 111111111111..222222222222 100644
|
||||
.capabilities = RKVDEC_CAPABILITY_H264,
|
||||
};
|
||||
|
||||
@@ -1457,6 +1621,10 @@ static const struct of_device_id of_rkvdec_match[] = {
|
||||
@@ -1455,6 +1619,10 @@ static const struct of_device_id of_rkvdec_match[] = {
|
||||
.compatible = "rockchip,rk3588-vdec",
|
||||
.data = &rk3588_vdpu381_variant,
|
||||
},
|
||||
@ -12508,7 +12508,7 @@ index 111111111111..222222222222 100644
|
||||
{ /* sentinel */ }
|
||||
};
|
||||
MODULE_DEVICE_TABLE(of, of_rkvdec_match);
|
||||
@@ -1494,9 +1662,19 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
@@ -1492,9 +1660,19 @@ static int rkvdec_probe(struct platform_device *pdev)
|
||||
rkvdec->clk_count = ret;
|
||||
rkvdec->axi_clk = devm_clk_get(&pdev->dev, "axi");
|
||||
|
||||
@ -13388,7 +13388,7 @@ index 111111111111..222222222222 100644
|
||||
};
|
||||
|
||||
static bool rkvdec_is_capable(struct rkvdec_ctx *ctx, unsigned int capability)
|
||||
@@ -1458,6 +1474,78 @@ static irqreturn_t rkvdec_irq_handler(int irq, void *priv)
|
||||
@@ -1456,6 +1472,78 @@ static irqreturn_t rkvdec_irq_handler(int irq, void *priv)
|
||||
return cfg->irq_handler(ctx);
|
||||
}
|
||||
|
||||
@ -13467,7 +13467,7 @@ index 111111111111..222222222222 100644
|
||||
static void rkvdec_watchdog_func(struct work_struct *work)
|
||||
{
|
||||
struct rkvdec_dev *rkvdec;
|
||||
@@ -1521,6 +1609,7 @@ static const struct rkvdec_config config_rkvdec = {
|
||||
@@ -1519,6 +1607,7 @@ static const struct rkvdec_config config_rkvdec = {
|
||||
.coded_fmts_num = ARRAY_SIZE(rkvdec_coded_fmts),
|
||||
.irq_handler = rk3399_irq_handler,
|
||||
.fill_pixfmt_mp = v4l2_fill_pixfmt_mp,
|
||||
@ -13475,7 +13475,7 @@ index 111111111111..222222222222 100644
|
||||
.colmv_size = rkvdec_colmv_size,
|
||||
};
|
||||
|
||||
@@ -1545,6 +1634,7 @@ static const struct rkvdec_config config_vdpu381 = {
|
||||
@@ -1543,6 +1632,7 @@ static const struct rkvdec_config config_vdpu381 = {
|
||||
.irq_handler = vdpu381_irq_handler,
|
||||
.fill_pixfmt_mp = vdpu38x_fill_pixfmt_mp,
|
||||
.colmv_size = rkvdec_colmv_size,
|
||||
@ -13483,7 +13483,7 @@ index 111111111111..222222222222 100644
|
||||
.named_regs = true,
|
||||
};
|
||||
|
||||
@@ -1570,6 +1660,7 @@ const struct rkvdec_config config_vdpu383 = {
|
||||
@@ -1568,6 +1658,7 @@ const struct rkvdec_config config_vdpu383 = {
|
||||
.fill_pixfmt_mp = vdpu38x_fill_pixfmt_mp,
|
||||
.colmv_size = rkvdec_vdpu383_colmv_size,
|
||||
.fill_pixfmt_mp = vdpu38x_fill_pixfmt_mp,
|
||||
@ -13491,7 +13491,7 @@ index 111111111111..222222222222 100644
|
||||
.named_regs = true,
|
||||
};
|
||||
|
||||
@@ -1601,7 +1692,8 @@ static const struct rkvdec_variant rk3588_vdpu381_variant = {
|
||||
@@ -1599,7 +1690,8 @@ static const struct rkvdec_variant rk3588_vdpu381_variant = {
|
||||
|
||||
static const struct rkvdec_variant rk3576_vdpu383_variant = {
|
||||
.config = &config_vdpu383,
|
||||
|
||||
@ -20,7 +20,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
|
||||
@@ -1141,7 +1141,7 @@ power-domain@RK3588_PD_SDMMC {
|
||||
@@ -1242,7 +1242,7 @@ rknn_mmu_2: iommu@fdad9000 {
|
||||
};
|
||||
|
||||
vpu121: video-codec@fdb50000 {
|
||||
@ -33,7 +33,7 @@ diff --git a/drivers/media/platform/verisilicon/hantro_drv.c b/drivers/media/pla
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
+++ b/drivers/media/platform/verisilicon/hantro_drv.c
|
||||
@@ -721,7 +721,6 @@ static const struct of_device_id of_hantro_match[] = {
|
||||
@@ -718,7 +718,6 @@ static const struct of_device_id of_hantro_match[] = {
|
||||
{ .compatible = "rockchip,rk3328-vpu", .data = &rk3328_vpu_variant, },
|
||||
{ .compatible = "rockchip,rk3399-vpu", .data = &rk3399_vpu_variant, },
|
||||
{ .compatible = "rockchip,rk3568-vepu", .data = &rk3568_vepu_variant, },
|
||||
@ -57,7 +57,7 @@ diff --git a/drivers/media/platform/verisilicon/rockchip_vpu_hw.c b/drivers/medi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/media/platform/verisilicon/rockchip_vpu_hw.c
|
||||
+++ b/drivers/media/platform/verisilicon/rockchip_vpu_hw.c
|
||||
@@ -740,10 +740,9 @@ const struct hantro_variant rk3288_vpu_variant = {
|
||||
@@ -724,10 +724,9 @@ const struct hantro_variant rk3288_vpu_variant = {
|
||||
|
||||
const struct hantro_variant rk3328_vpu_variant = {
|
||||
.dec_offset = 0x400,
|
||||
@ -71,7 +71,7 @@ index 111111111111..222222222222 100644
|
||||
.codec_ops = rk3399_vpu_codec_ops,
|
||||
.irqs = rockchip_vdpu2_irqs,
|
||||
.num_irqs = ARRAY_SIZE(rockchip_vdpu2_irqs),
|
||||
@@ -787,20 +786,6 @@ const struct hantro_variant rk3568_vepu_variant = {
|
||||
@@ -771,20 +770,6 @@ const struct hantro_variant rk3568_vepu_variant = {
|
||||
.num_clocks = ARRAY_SIZE(rockchip_vpu_clk_names)
|
||||
};
|
||||
|
||||
|
||||
@ -1,16 +1,15 @@
|
||||
From cde62ca7cdeeba96ca67bb02f40cbfce61515cd8 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: John Doe <john.doe@somewhere.on.planet>
|
||||
Date: Sat, 30 Aug 2025 14:20:46 +0800
|
||||
Subject: [PATCH 2/3] net: ethernet: realtek: add r8169 LED configuration from
|
||||
OF
|
||||
Subject: net: ethernet: realtek: add r8169 LED configuration from OF
|
||||
|
||||
Signed-off-by: retro98boy <retro98boy@qq.com>
|
||||
---
|
||||
drivers/net/ethernet/realtek/r8169_main.c | 11 +++++++++++
|
||||
drivers/net/ethernet/realtek/r8169_main.c | 11 ++++++++++
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
diff --git a/drivers/net/ethernet/realtek/r8169_main.c b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
index 43170500d..973934934 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/net/ethernet/realtek/r8169_main.c
|
||||
+++ b/drivers/net/ethernet/realtek/r8169_main.c
|
||||
@@ -21,6 +21,7 @@
|
||||
@ -21,7 +20,7 @@ index 43170500d..973934934 100644
|
||||
#include <linux/tcp.h>
|
||||
#include <linux/interrupt.h>
|
||||
#include <linux/dma-mapping.h>
|
||||
@@ -2375,6 +2376,15 @@ void r8169_apply_firmware(struct rtl8169_private *tp)
|
||||
@@ -2373,6 +2374,15 @@ void r8169_apply_firmware(struct rtl8169_private *tp)
|
||||
}
|
||||
}
|
||||
|
||||
@ -37,7 +36,7 @@ index 43170500d..973934934 100644
|
||||
static void rtl8168_config_eee_mac(struct rtl8169_private *tp)
|
||||
{
|
||||
/* Adjust EEE LED frequency */
|
||||
@@ -3392,6 +3402,7 @@ static void rtl_hw_start_8168h_1(struct rtl8169_private *tp)
|
||||
@@ -3390,6 +3400,7 @@ static void rtl_hw_start_8168h_1(struct rtl8169_private *tp)
|
||||
rtl_eri_write(tp, 0xb8, ERIAR_MASK_0011, 0x0000);
|
||||
|
||||
rtl8168_config_eee_mac(tp);
|
||||
@ -46,5 +45,5 @@ index 43170500d..973934934 100644
|
||||
RTL_W8(tp, DLLPR, RTL_R8(tp, DLLPR) & ~PFM_EN);
|
||||
RTL_W8(tp, MISC_1, RTL_R8(tp, MISC_1) & ~PFM_D3COLD_EN);
|
||||
--
|
||||
2.51.0
|
||||
Armbian
|
||||
|
||||
|
||||
@ -1,18 +1,18 @@
|
||||
From cf497ba4b9e7986f5f7ce6466dc960f964a0719b Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: John Doe <john.doe@somewhere.on.planet>
|
||||
Date: Sat, 30 Aug 2025 14:20:58 +0800
|
||||
Subject: [PATCH 3/3] net: phy: realtek: add rtl8211x LED configuration from OF
|
||||
Subject: net: phy: realtek: add rtl8211x LED configuration from OF
|
||||
|
||||
Signed-off-by: retro98boy <retro98boy@qq.com>
|
||||
---
|
||||
drivers/net/phy/realtek/realtek_main.c | 11 +++++++++++
|
||||
drivers/net/phy/realtek/realtek_main.c | 11 ++++++++++
|
||||
1 file changed, 11 insertions(+)
|
||||
|
||||
diff --git a/drivers/net/phy/realtek/realtek_main.c b/drivers/net/phy/realtek/realtek_main.c
|
||||
index dd0d67514..4743f99b3 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/net/phy/realtek/realtek_main.c
|
||||
+++ b/drivers/net/phy/realtek/realtek_main.c
|
||||
@@ -215,6 +215,15 @@ static int rtl821x_modify_ext_page(struct phy_device *phydev, u16 ext_page,
|
||||
@@ -214,6 +214,15 @@ static int rtl821x_modify_ext_page(struct phy_device *phydev, u16 ext_page,
|
||||
return phy_restore_page(phydev, oldpage, ret);
|
||||
}
|
||||
|
||||
@ -28,7 +28,7 @@ index dd0d67514..4743f99b3 100644
|
||||
static int rtl821x_probe(struct phy_device *phydev)
|
||||
{
|
||||
struct device *dev = &phydev->mdio.dev;
|
||||
@@ -595,6 +604,8 @@ static int rtl8211f_config_init(struct phy_device *phydev)
|
||||
@@ -639,6 +648,8 @@ static int rtl8211f_config_init(struct phy_device *phydev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
@ -38,5 +38,5 @@ index dd0d67514..4743f99b3 100644
|
||||
ret = phy_modify_paged(phydev, RTL8211F_PHYCR_PAGE,
|
||||
RTL8211F_PHYCR2, RTL8211F_CLKOUT_EN,
|
||||
--
|
||||
2.51.0
|
||||
Armbian
|
||||
|
||||
|
||||
@ -24,7 +24,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
|
||||
@@ -792,6 +792,7 @@ CONFIG_REGULATOR_BD9571MWV=y
|
||||
@@ -810,6 +810,7 @@ CONFIG_REGULATOR_BD9571MWV=y
|
||||
CONFIG_REGULATOR_CROS_EC=y
|
||||
CONFIG_REGULATOR_DA9211=m
|
||||
CONFIG_REGULATOR_FAN53555=y
|
||||
@ -36,7 +36,7 @@ diff --git a/drivers/regulator/Kconfig b/drivers/regulator/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/regulator/Kconfig
|
||||
+++ b/drivers/regulator/Kconfig
|
||||
@@ -432,6 +432,17 @@ config REGULATOR_FAN53880
|
||||
@@ -440,6 +440,17 @@ config REGULATOR_FAN53880
|
||||
(PMIC), it is controlled by I2C and provides one BUCK, one BOOST
|
||||
and four LDO outputs.
|
||||
|
||||
@ -58,7 +58,7 @@ diff --git a/drivers/regulator/Makefile b/drivers/regulator/Makefile
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/regulator/Makefile
|
||||
+++ b/drivers/regulator/Makefile
|
||||
@@ -51,6 +51,7 @@ obj-$(CONFIG_REGULATOR_DBX500_PRCMU) += dbx500-prcmu.o
|
||||
@@ -52,6 +52,7 @@ obj-$(CONFIG_REGULATOR_DBX500_PRCMU) += dbx500-prcmu.o
|
||||
obj-$(CONFIG_REGULATOR_DB8500_PRCMU) += db8500-prcmu.o
|
||||
obj-$(CONFIG_REGULATOR_FAN53555) += fan53555.o
|
||||
obj-$(CONFIG_REGULATOR_FAN53880) += fan53880.o
|
||||
|
||||
@ -244,7 +244,7 @@ diff --git a/include/linux/pinctrl/pinconf-generic.h b/include/linux/pinctrl/pin
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/include/linux/pinctrl/pinconf-generic.h
|
||||
+++ b/include/linux/pinctrl/pinconf-generic.h
|
||||
@@ -145,6 +145,7 @@ enum pin_config_param {
|
||||
@@ -149,6 +149,7 @@ enum pin_config_param {
|
||||
PIN_CONFIG_SKEW_DELAY,
|
||||
PIN_CONFIG_SLEEP_HARDWARE_STATE,
|
||||
PIN_CONFIG_SLEW_RATE,
|
||||
|
||||
@ -26,8 +26,8 @@ diff --git a/drivers/thermal/rockchip_thermal.c b/drivers/thermal/rockchip_therm
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/thermal/rockchip_thermal.c
|
||||
+++ b/drivers/thermal/rockchip_thermal.c
|
||||
@@ -1061,6 +1061,28 @@ static void rk_tsadcv3_tshut_mode(int chn, void __iomem *regs,
|
||||
writel_relaxed(val_cru, regs + TSADCV3_HSHUT_CRU_INT_EN);
|
||||
@@ -1098,6 +1098,28 @@ static int rk_tsadcv2_get_trim_code(const struct chip_tsadc_table *table,
|
||||
return code - base_code;
|
||||
}
|
||||
|
||||
+static const struct rockchip_tsadc_chip rk3308_tsadc_data = {
|
||||
@ -55,7 +55,7 @@ index 111111111111..222222222222 100644
|
||||
static const struct rockchip_tsadc_chip px30_tsadc_data = {
|
||||
/* cpu, gpu */
|
||||
.chn_offset = 0,
|
||||
@@ -1322,6 +1344,10 @@ static const struct of_device_id of_rockchip_thermal_match[] = {
|
||||
@@ -1367,6 +1389,10 @@ static const struct of_device_id of_rockchip_thermal_match[] = {
|
||||
.compatible = "rockchip,rk3288-tsadc",
|
||||
.data = (void *)&rk3288_tsadc_data,
|
||||
},
|
||||
|
||||
@ -1,8 +1,7 @@
|
||||
From 545ae14ee0159a449e6e0f2f1f54b8c5cc6023ef Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: chillymattster <106633144+chillymattster@users.noreply.github.com>
|
||||
From: Brent Roman <genosensor@gmail.com>
|
||||
Date: Wed, 3 Sep 2025 18:29:16 +0200
|
||||
Subject: [PATCH] rk3308: Fix 10Mbit Ethernet
|
||||
Subject: rk3308: Fix 10Mbit Ethernet
|
||||
|
||||
Origin: https://github.com/armbian/build/pull/6117
|
||||
Bug-armbian: https://github.com/armbian/build/pull/8575
|
||||
@ -11,26 +10,11 @@ Bug-armbian: https://forum.armbian.com/topic/30235-rockpi-s-ethernet-10mbps-not-
|
||||
Signed-off-by: chillymattster <106633144+chillymattster@users.noreply.github.com>
|
||||
Last-Update: 2025-09-06
|
||||
---
|
||||
This fixes bug AR-1904.
|
||||
The original fix was only for current and not for edge kernel which caused
|
||||
the patch being lost and made the problem reoccur.
|
||||
.
|
||||
According to the original PR#6117 the problem of 10mbps ethernot not working
|
||||
has first been seen in the 5.15 armbian kernel caused by a rewrite of speed
|
||||
setting for rk3308 in dwmc-rk.c that for unknown reasons completely omitted
|
||||
the code needed to reprogram the MAC clock as appropriate for the selected
|
||||
ethernet speed.
|
||||
.
|
||||
This patch corrects RK3308_GMAC_FLOW_CTRL and RK3308_GMAC_FLOW_CTRL_CLR to use
|
||||
the correct bits for MAC onfiguration and restores the missing code needed for
|
||||
setting the MAC clock required to match the selected ethernet speed.
|
||||
.
|
||||
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 9 +++++++--
|
||||
1 file changed, 7 insertions(+), 2 deletions(-)
|
||||
drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c | 11 ++++++++--
|
||||
1 file changed, 9 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
|
||||
index f6687c2f30f6..45dab3b5680f 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
|
||||
+++ b/drivers/net/ethernet/stmicro/stmmac/dwmac-rk.c
|
||||
@@ -503,8 +503,8 @@ static const struct rk_gmac_ops rk3288_ops = {
|
||||
@ -58,7 +42,6 @@ index f6687c2f30f6..45dab3b5680f 100644
|
||||
return rk_set_reg_speed(bsp_priv, &rk3308_reg_speed_data,
|
||||
RK3308_GRF_MAC_CON0, interface, speed);
|
||||
}
|
||||
|
||||
--
|
||||
2.39.5
|
||||
Armbian
|
||||
|
||||
|
||||
@ -62,7 +62,7 @@ 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 = {
|
||||
@@ -87,6 +87,17 @@ static const struct rockchip_grf_info rk3328_grf __initconst = {
|
||||
.num_values = ARRAY_SIZE(rk3328_defaults),
|
||||
};
|
||||
|
||||
@ -80,7 +80,7 @@ index 111111111111..222222222222 100644
|
||||
#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 = {
|
||||
@@ -172,6 +183,9 @@ static const struct of_device_id rockchip_grf_dt_match[] __initconst = {
|
||||
}, {
|
||||
.compatible = "rockchip,rk3328-grf",
|
||||
.data = (void *)&rk3328_grf,
|
||||
|
||||
@ -341,7 +341,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rock
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
@@ -595,6 +595,67 @@ tsadc: tsadc@ff250000 {
|
||||
@@ -604,6 +604,67 @@ tsadc: tsadc@ff250000 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
@ -413,7 +413,7 @@ diff --git a/drivers/clk/rockchip/clk-ddr.c b/drivers/clk/rockchip/clk-ddr.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/clk/rockchip/clk-ddr.c
|
||||
+++ b/drivers/clk/rockchip/clk-ddr.c
|
||||
@@ -87,6 +87,134 @@ static const struct clk_ops rockchip_ddrclk_sip_ops = {
|
||||
@@ -88,6 +88,134 @@ static const struct clk_ops rockchip_ddrclk_sip_ops = {
|
||||
.get_parent = rockchip_ddrclk_get_parent,
|
||||
};
|
||||
|
||||
@ -548,7 +548,7 @@ index 111111111111..222222222222 100644
|
||||
struct clk *rockchip_clk_register_ddrclk(const char *name, int flags,
|
||||
const char *const *parent_names,
|
||||
u8 num_parents, int mux_offset,
|
||||
@@ -114,6 +242,9 @@ struct clk *rockchip_clk_register_ddrclk(const char *name, int flags,
|
||||
@@ -115,6 +243,9 @@ struct clk *rockchip_clk_register_ddrclk(const char *name, int flags,
|
||||
case ROCKCHIP_DDRCLK_SIP:
|
||||
init.ops = &rockchip_ddrclk_sip_ops;
|
||||
break;
|
||||
@ -602,7 +602,7 @@ diff --git a/drivers/devfreq/Kconfig b/drivers/devfreq/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/devfreq/Kconfig
|
||||
+++ b/drivers/devfreq/Kconfig
|
||||
@@ -129,6 +129,18 @@ config ARM_MEDIATEK_CCI_DEVFREQ
|
||||
@@ -140,6 +140,18 @@ config ARM_MEDIATEK_CCI_DEVFREQ
|
||||
buck voltages and update a proper CCI frequency. Use the notification
|
||||
to get the regulator status.
|
||||
|
||||
@ -625,7 +625,7 @@ diff --git a/drivers/devfreq/Makefile b/drivers/devfreq/Makefile
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/devfreq/Makefile
|
||||
+++ b/drivers/devfreq/Makefile
|
||||
@@ -13,6 +13,7 @@ obj-$(CONFIG_ARM_IMX_BUS_DEVFREQ) += imx-bus.o
|
||||
@@ -14,6 +14,7 @@ obj-$(CONFIG_ARM_IMX_BUS_DEVFREQ) += imx-bus.o
|
||||
obj-$(CONFIG_ARM_IMX8M_DDRC_DEVFREQ) += imx8m-ddrc.o
|
||||
obj-$(CONFIG_ARM_MEDIATEK_CCI_DEVFREQ) += mtk-cci-devfreq.o
|
||||
obj-$(CONFIG_ARM_RK3399_DMC_DEVFREQ) += rk3399_dmc.o
|
||||
@ -646,7 +646,7 @@ index 111111111111..222222222222 100644
|
||||
#include <soc/rockchip/rk3399_grf.h>
|
||||
#include <soc/rockchip/rk3568_grf.h>
|
||||
#include <soc/rockchip/rk3588_grf.h>
|
||||
@@ -99,6 +101,7 @@ struct rockchip_dfi {
|
||||
@@ -102,6 +104,7 @@ struct rockchip_dfi {
|
||||
|
||||
struct device *dev;
|
||||
void __iomem *regs;
|
||||
@ -654,7 +654,7 @@ index 111111111111..222222222222 100644
|
||||
struct regmap *regmap_pmu;
|
||||
struct clk *clk;
|
||||
int usecount;
|
||||
@@ -668,6 +671,46 @@ static int rockchip_ddr_perf_init(struct rockchip_dfi *dfi)
|
||||
@@ -712,6 +715,46 @@ static int rockchip_ddr_perf_init(struct rockchip_dfi *dfi)
|
||||
}
|
||||
#endif
|
||||
|
||||
@ -701,7 +701,7 @@ index 111111111111..222222222222 100644
|
||||
static int rk3399_dfi_init(struct rockchip_dfi *dfi)
|
||||
{
|
||||
struct regmap *regmap_pmu = dfi->regmap_pmu;
|
||||
@@ -756,6 +799,8 @@ static int rk3588_dfi_init(struct rockchip_dfi *dfi)
|
||||
@@ -809,6 +852,8 @@ static int rk3588_dfi_init(struct rockchip_dfi *dfi)
|
||||
};
|
||||
|
||||
static const struct of_device_id rockchip_dfi_id_match[] = {
|
||||
@ -710,7 +710,7 @@ index 111111111111..222222222222 100644
|
||||
{ .compatible = "rockchip,rk3399-dfi", .data = rk3399_dfi_init },
|
||||
{ .compatible = "rockchip,rk3568-dfi", .data = rk3568_dfi_init },
|
||||
{ .compatible = "rockchip,rk3588-dfi", .data = rk3588_dfi_init },
|
||||
@@ -785,14 +830,30 @@ static int rockchip_dfi_probe(struct platform_device *pdev)
|
||||
@@ -838,14 +883,30 @@ static int rockchip_dfi_probe(struct platform_device *pdev)
|
||||
if (IS_ERR(dfi->regs))
|
||||
return PTR_ERR(dfi->regs);
|
||||
|
||||
@ -748,7 +748,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
dfi->dev = dev;
|
||||
mutex_init(&dfi->mutex);
|
||||
@@ -817,6 +878,8 @@ static int rockchip_dfi_probe(struct platform_device *pdev)
|
||||
@@ -870,6 +931,8 @@ static int rockchip_dfi_probe(struct platform_device *pdev)
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
|
||||
@ -11,7 +11,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rock
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
@@ -817,6 +817,20 @@ vop_mmu: iommu@ff373f00 {
|
||||
@@ -846,6 +846,20 @@ vop_mmu: iommu@ff373f00 {
|
||||
status = "disabled";
|
||||
};
|
||||
|
||||
|
||||
@ -54,8 +54,8 @@ Subject: [ARCHEOLOGY] rockchip64: tidy up rk3328 patches
|
||||
> X-Git-Archeology: Subject: bump rockchip64 edge to v6.3
|
||||
> X-Git-Archeology:
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3328.dtsi | 27 ++++++++++
|
||||
1 file changed, 27 insertions(+)
|
||||
arch/arm64/boot/dts/rockchip/rk3328.dtsi | 22 ++++++++++
|
||||
1 file changed, 22 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
@ -88,7 +88,7 @@ index 111111111111..222222222222 100644
|
||||
timer {
|
||||
compatible = "arm,armv8-timer";
|
||||
interrupts = <GIC_PPI 13 (GIC_CPU_MASK_SIMPLE(4) | IRQ_TYPE_LEVEL_LOW)>,
|
||||
@@ -969,6 +994,7 @@ cru: clock-controller@ff440000 {
|
||||
@@ -973,6 +993,7 @@ cru: clock-controller@ff440000 {
|
||||
<&cru ACLK_BUS_PRE>, <&cru HCLK_BUS_PRE>,
|
||||
<&cru PCLK_BUS_PRE>, <&cru ACLK_PERI_PRE>,
|
||||
<&cru HCLK_PERI>, <&cru PCLK_PERI>,
|
||||
@ -96,7 +96,7 @@ index 111111111111..222222222222 100644
|
||||
<&cru SCLK_RTC32K>;
|
||||
assigned-clock-parents =
|
||||
<&cru HDMIPHY>, <&cru PLL_APLL>,
|
||||
@@ -990,6 +1016,7 @@ cru: clock-controller@ff440000 {
|
||||
@@ -994,6 +1015,7 @@ cru: clock-controller@ff440000 {
|
||||
<150000000>, <75000000>,
|
||||
<75000000>, <150000000>,
|
||||
<75000000>, <75000000>,
|
||||
|
||||
@ -11,7 +11,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rock
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
@@ -1220,6 +1220,8 @@ usbdrd3: usb@ff600000 {
|
||||
@@ -1219,6 +1219,8 @@ usbdrd3: usb@ff600000 {
|
||||
<&cru ACLK_USB3OTG>;
|
||||
clock-names = "ref_clk", "suspend_clk",
|
||||
"bus_clk";
|
||||
|
||||
@ -1,22 +1,20 @@
|
||||
From 460b224602414d5a3935663ac57fd891a0d8d576 Mon Sep 17 00:00:00 2001
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Paolo Sabatino <paolo.sabatino@gmail.com>
|
||||
Date: Tue, 12 Aug 2025 20:08:01 +0200
|
||||
Subject: [PATCH] Add rockchip Innosilicon USB3 phy driver
|
||||
Subject: Add rockchip Innosilicon USB3 phy driver
|
||||
|
||||
source: https://patchwork.kernel.org/project/linux-rockchip/cover/20250115012628.1035928-1-pgwipeout@gmail.com/
|
||||
---
|
||||
.../bindings/phy/rockchip,inno-usb3phy.yaml | 166 ++++
|
||||
arch/arm64/boot/dts/rockchip/rk3328.dtsi | 39 +
|
||||
drivers/phy/rockchip/Kconfig | 10 +
|
||||
drivers/phy/rockchip/Makefile | 1 +
|
||||
drivers/phy/rockchip/phy-rockchip-inno-usb3.c | 869 ++++++++++++++++++
|
||||
5 files changed, 1085 insertions(+)
|
||||
create mode 100644 Documentation/devicetree/bindings/phy/rockchip,inno-usb3phy.yaml
|
||||
create mode 100644 drivers/phy/rockchip/phy-rockchip-inno-usb3.c
|
||||
Documentation/devicetree/bindings/phy/rockchip,inno-usb3phy.yaml | 166 ++
|
||||
arch/arm64/boot/dts/rockchip/rk3328.dtsi | 39 +
|
||||
drivers/phy/rockchip/Kconfig | 10 +
|
||||
drivers/phy/rockchip/Makefile | 1 +
|
||||
drivers/phy/rockchip/phy-rockchip-inno-usb3.c | 870 ++++++++++
|
||||
5 files changed, 1086 insertions(+)
|
||||
|
||||
diff --git a/Documentation/devicetree/bindings/phy/rockchip,inno-usb3phy.yaml b/Documentation/devicetree/bindings/phy/rockchip,inno-usb3phy.yaml
|
||||
new file mode 100644
|
||||
index 000000000000..cde489ca87ab
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/Documentation/devicetree/bindings/phy/rockchip,inno-usb3phy.yaml
|
||||
@@ -0,0 +1,166 @@
|
||||
@ -187,10 +185,10 @@ index 000000000000..cde489ca87ab
|
||||
+ };
|
||||
+ };
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3328.dtsi b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
index 7d992c3c01ce..181a900d41f9 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3328.dtsi
|
||||
@@ -903,6 +903,43 @@ u2phy_host: host-port {
|
||||
@@ -1056,6 +1056,43 @@ u2phy_host: host-port {
|
||||
};
|
||||
};
|
||||
|
||||
@ -234,9 +232,9 @@ index 7d992c3c01ce..181a900d41f9 100644
|
||||
sdmmc: mmc@ff500000 {
|
||||
compatible = "rockchip,rk3328-dw-mshc", "rockchip,rk3288-dw-mshc";
|
||||
reg = <0x0 0xff500000 0x0 0x4000>;
|
||||
@@ -1067,6 +1104,8 @@ usbdrd3: usb@ff600000 {
|
||||
clock-names = "ref_clk", "suspend_clk",
|
||||
"bus_clk";
|
||||
@@ -1222,6 +1259,8 @@ usbdrd3: usb@ff600000 {
|
||||
resets = <&cru SRST_USB3OTG>;
|
||||
reset-names = "usb3-otg";
|
||||
dr_mode = "otg";
|
||||
+ phys = <&usb3phy_utmi>, <&usb3phy_pipe>;
|
||||
+ phy-names = "usb2-phy", "usb3-phy";
|
||||
@ -244,7 +242,7 @@ index 7d992c3c01ce..181a900d41f9 100644
|
||||
snps,dis-del-phy-power-chg-quirk;
|
||||
snps,dis_enblslpm_quirk;
|
||||
diff --git a/drivers/phy/rockchip/Kconfig b/drivers/phy/rockchip/Kconfig
|
||||
index 14698571b607..858e451edc5a 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/phy/rockchip/Kconfig
|
||||
+++ b/drivers/phy/rockchip/Kconfig
|
||||
@@ -48,6 +48,16 @@ config PHY_ROCKCHIP_INNO_USB2
|
||||
@ -265,7 +263,7 @@ index 14698571b607..858e451edc5a 100644
|
||||
tristate "Rockchip Innosilicon MIPI CSI PHY driver"
|
||||
depends on (ARCH_ROCKCHIP || COMPILE_TEST) && OF
|
||||
diff --git a/drivers/phy/rockchip/Makefile b/drivers/phy/rockchip/Makefile
|
||||
index 117aaffd037d..d7b7b090b1e2 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/phy/rockchip/Makefile
|
||||
+++ b/drivers/phy/rockchip/Makefile
|
||||
@@ -6,6 +6,7 @@ obj-$(CONFIG_PHY_ROCKCHIP_INNO_CSIDPHY) += phy-rockchip-inno-csidphy.o
|
||||
@ -278,7 +276,7 @@ index 117aaffd037d..d7b7b090b1e2 100644
|
||||
obj-$(CONFIG_PHY_ROCKCHIP_SAMSUNG_DCPHY) += phy-rockchip-samsung-dcphy.o
|
||||
diff --git a/drivers/phy/rockchip/phy-rockchip-inno-usb3.c b/drivers/phy/rockchip/phy-rockchip-inno-usb3.c
|
||||
new file mode 100644
|
||||
index 000000000000..51b9f3b7fbfa
|
||||
index 000000000000..111111111111
|
||||
--- /dev/null
|
||||
+++ b/drivers/phy/rockchip/phy-rockchip-inno-usb3.c
|
||||
@@ -0,0 +1,870 @@
|
||||
@ -1153,5 +1151,5 @@ index 000000000000..51b9f3b7fbfa
|
||||
+MODULE_DESCRIPTION("Rockchip Innosilicon USB3PHY driver");
|
||||
+MODULE_LICENSE("GPL");
|
||||
--
|
||||
2.43.0
|
||||
Armbian
|
||||
|
||||
|
||||
@ -5,8 +5,8 @@ Subject: rk3328-roc-cc add missing nodes
|
||||
|
||||
Signed-off-by: tonymac32 <tonymckahan@gmail.com>
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3328-roc.dtsi | 32 ++++++++++
|
||||
1 file changed, 32 insertions(+)
|
||||
arch/arm64/boot/dts/rockchip/rk3328-roc.dtsi | 13 ++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3328-roc.dtsi b/arch/arm64/boot/dts/rockchip/rk3328-roc.dtsi
|
||||
old mode 100644
|
||||
@ -14,7 +14,7 @@ new mode 100755
|
||||
index 111111111111..222222222222
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3328-roc.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3328-roc.dtsi
|
||||
@@ -368,6 +387,19 @@ &sdmmc {
|
||||
@@ -385,6 +385,19 @@ &sdmmc {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@ -5,14 +5,14 @@ Subject: rk3399 PCIE PHY reset on probe
|
||||
|
||||
Signed-off-by: Andrey Safonov <andrey.safonov@gmail.com>
|
||||
---
|
||||
drivers/phy/rockchip/phy-rockchip-pcie.c | 16 ++++++++++
|
||||
1 file changed, 16 insertions(+)
|
||||
drivers/phy/rockchip/phy-rockchip-pcie.c | 15 ++++++++++
|
||||
1 file changed, 15 insertions(+)
|
||||
|
||||
diff --git a/drivers/phy/rockchip/phy-rockchip-pcie.c b/drivers/phy/rockchip/phy-rockchip-pcie.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/phy/rockchip/phy-rockchip-pcie.c
|
||||
+++ b/drivers/phy/rockchip/phy-rockchip-pcie.c
|
||||
@@ -293,6 +293,19 @@ static const struct of_device_id rockchip_pcie_phy_dt_ids[] = {
|
||||
@@ -262,6 +262,19 @@ static const struct of_device_id rockchip_pcie_phy_dt_ids[] = {
|
||||
|
||||
MODULE_DEVICE_TABLE(of, rockchip_pcie_phy_dt_ids);
|
||||
|
||||
@ -32,7 +32,7 @@ index 111111111111..222222222222 100644
|
||||
static int rockchip_pcie_phy_probe(struct platform_device *pdev)
|
||||
{
|
||||
struct device *dev = &pdev->dev;
|
||||
@@ -337,6 +351,8 @@ static int rockchip_pcie_phy_probe(struct platform_device *pdev)
|
||||
@@ -306,6 +319,8 @@ static int rockchip_pcie_phy_probe(struct platform_device *pdev)
|
||||
phy_num = (phy_num == 0) ? 1 : PHY_MAX_LANE_NUM;
|
||||
dev_dbg(dev, "phy number is %d\n", phy_num);
|
||||
|
||||
|
||||
@ -20,7 +20,7 @@ diff --git a/Documentation/admin-guide/kernel-parameters.txt b/Documentation/adm
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/Documentation/admin-guide/kernel-parameters.txt
|
||||
+++ b/Documentation/admin-guide/kernel-parameters.txt
|
||||
@@ -4967,6 +4967,14 @@
|
||||
@@ -5087,6 +5087,14 @@
|
||||
nomsi Do not use MSI for native PCIe PME signaling (this makes
|
||||
all PCIe root ports use INTx for all services).
|
||||
|
||||
@ -36,7 +36,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
pd_ignore_unused
|
||||
diff --git a/drivers/pci/controller/pcie-rockchip-host.c b/drivers/pci/controller/pcie-rockchip-host.c
|
||||
index 6a6da404c664..c7d586556eeb 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/pci/controller/pcie-rockchip-host.c
|
||||
+++ b/drivers/pci/controller/pcie-rockchip-host.c
|
||||
@@ -24,10 +24,14 @@
|
||||
@ -44,17 +44,17 @@ index 6a6da404c664..c7d586556eeb 100644
|
||||
#include <linux/phy/phy.h>
|
||||
#include <linux/platform_device.h>
|
||||
+#include <linux/moduleparam.h>
|
||||
|
||||
|
||||
#include "../pci.h"
|
||||
#include "pcie-rockchip.h"
|
||||
|
||||
|
||||
+static int bus_scan_delay = -1;
|
||||
+module_param_named(bus_scan_delay, bus_scan_delay, int, S_IRUGO);
|
||||
+
|
||||
static void rockchip_pcie_enable_bw_int(struct rockchip_pcie *rockchip)
|
||||
{
|
||||
u32 status;
|
||||
@@ -933,6 +937,7 @@ static int rockchip_pcie_probe(struct platform_device *pdev)
|
||||
@@ -929,6 +933,7 @@ static int rockchip_pcie_probe(struct platform_device *pdev)
|
||||
struct device *dev = &pdev->dev;
|
||||
struct pci_host_bridge *bridge;
|
||||
int err;
|
||||
@ -62,7 +62,7 @@ index 6a6da404c664..c7d586556eeb 100644
|
||||
|
||||
if (!dev->of_node)
|
||||
return -ENODEV;
|
||||
@@ -982,6 +987,26 @@ static int rockchip_pcie_probe(struct platform_device *pdev)
|
||||
@@ -978,6 +983,26 @@ static int rockchip_pcie_probe(struct platform_device *pdev)
|
||||
bridge->sysdata = rockchip;
|
||||
bridge->ops = &rockchip_pcie_ops;
|
||||
|
||||
@ -110,7 +110,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
|
||||
@@ -351,6 +351,8 @@ struct rockchip_pcie {
|
||||
@@ -328,6 +328,8 @@ struct rockchip_pcie {
|
||||
phys_addr_t msg_bus_addr;
|
||||
bool is_rc;
|
||||
struct resource *mem_res;
|
||||
@ -121,3 +121,4 @@ index 111111111111..222222222222 100644
|
||||
static u32 rockchip_pcie_read(struct rockchip_pcie *rockchip, u32 reg)
|
||||
--
|
||||
Armbian
|
||||
|
||||
|
||||
@ -112,7 +112,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi b/arch/arm64/boot/dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
|
||||
@@ -2662,25 +2662,25 @@ sdio0_int: sdio0-int {
|
||||
@@ -2658,25 +2658,25 @@ sdio0_int: sdio0-int {
|
||||
sdmmc {
|
||||
sdmmc_bus1: sdmmc-bus1 {
|
||||
rockchip,pins =
|
||||
@ -145,7 +145,7 @@ index 111111111111..222222222222 100644
|
||||
};
|
||||
|
||||
sdmmc_cd: sdmmc-cd {
|
||||
@@ -2690,7 +2690,7 @@ sdmmc_cd: sdmmc-cd {
|
||||
@@ -2686,7 +2686,7 @@ sdmmc_cd: sdmmc-cd {
|
||||
|
||||
sdmmc_wp: sdmmc-wp {
|
||||
rockchip,pins =
|
||||
|
||||
@ -11,7 +11,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi b/arch/arm64/boot/dts
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3399-base.dtsi
|
||||
@@ -2657,6 +2657,11 @@ sdio0_int: sdio0-int {
|
||||
@@ -2653,6 +2653,11 @@ sdio0_int: sdio0-int {
|
||||
rockchip,pins =
|
||||
<0 RK_PA4 1 &pcfg_pull_up>;
|
||||
};
|
||||
|
||||
@ -13,7 +13,7 @@ diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/usb/typec/tcpm/tcpm.c
|
||||
+++ b/drivers/usb/typec/tcpm/tcpm.c
|
||||
@@ -3110,7 +3110,7 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
|
||||
@@ -3114,7 +3114,7 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
|
||||
{
|
||||
struct usb_power_delivery_desc desc = { port->negotiated_rev };
|
||||
struct usb_power_delivery_capabilities_desc caps = { };
|
||||
@ -22,7 +22,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
if (!port->partner_pd)
|
||||
port->partner_pd = usb_power_delivery_register(NULL, &desc);
|
||||
@@ -3120,11 +3120,6 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
|
||||
@@ -3124,11 +3124,6 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
|
||||
memcpy(caps.pdo, port->source_caps, sizeof(u32) * port->nr_source_caps);
|
||||
caps.role = TYPEC_SOURCE;
|
||||
|
||||
|
||||
@ -24,7 +24,7 @@ index 111111111111..222222222222 100644
|
||||
#include <linux/property.h>
|
||||
#include <linux/usb/pd_vdo.h>
|
||||
#include <linux/usb/typec_dp.h>
|
||||
@@ -74,6 +77,57 @@ struct dp_altmode {
|
||||
@@ -81,6 +84,57 @@ struct dp_altmode {
|
||||
struct typec_altmode *plug_prime;
|
||||
};
|
||||
|
||||
@ -82,7 +82,7 @@ index 111111111111..222222222222 100644
|
||||
static int dp_altmode_notify(struct dp_altmode *dp)
|
||||
{
|
||||
unsigned long conf;
|
||||
@@ -167,6 +221,7 @@ static int dp_altmode_status_update(struct dp_altmode *dp)
|
||||
@@ -175,6 +229,7 @@ static int dp_altmode_status_update(struct dp_altmode *dp)
|
||||
dp->state = dp->plug_prime ? DP_STATE_CONFIGURE_PRIME :
|
||||
DP_STATE_CONFIGURE;
|
||||
if (dp->hpd != hpd) {
|
||||
@ -90,15 +90,15 @@ index 111111111111..222222222222 100644
|
||||
dp->hpd = hpd;
|
||||
dp->pending_hpd = true;
|
||||
}
|
||||
@@ -175,6 +230,7 @@ static int dp_altmode_status_update(struct dp_altmode *dp)
|
||||
@@ -185,6 +240,7 @@ static int dp_altmode_status_update(struct dp_altmode *dp)
|
||||
drm_connector_oob_hotplug_event(dp->connector_fwnode,
|
||||
hpd ? connector_status_connected :
|
||||
connector_status_disconnected);
|
||||
+ dp_altmode_update_extcon_hpd_status(dp, hpd);
|
||||
dp->hpd = hpd;
|
||||
sysfs_notify(&dp->alt->dev.kobj, "displayport", "hpd");
|
||||
}
|
||||
@@ -374,6 +430,7 @@ static int dp_altmode_vdm(struct typec_altmode *alt,
|
||||
if (hpd && irq_hpd) {
|
||||
@@ -393,6 +449,7 @@ static int dp_altmode_vdm(struct typec_altmode *alt,
|
||||
if (dp->hpd) {
|
||||
drm_connector_oob_hotplug_event(dp->connector_fwnode,
|
||||
connector_status_disconnected);
|
||||
|
||||
@ -25,7 +25,7 @@ index 111111111111..222222222222 100644
|
||||
dwc3_writel(dwc->regs, DWC3_GCTL, reg);
|
||||
|
||||
dwc->current_dr_role = mode;
|
||||
@@ -191,6 +191,7 @@ static void __dwc3_set_mode(struct work_struct *work)
|
||||
@@ -192,6 +192,7 @@ static void __dwc3_set_mode(struct work_struct *work)
|
||||
dwc3_host_exit(dwc);
|
||||
break;
|
||||
case DWC3_GCTL_PRTCAP_DEVICE:
|
||||
@ -33,7 +33,7 @@ index 111111111111..222222222222 100644
|
||||
dwc3_gadget_exit(dwc);
|
||||
dwc3_event_buffers_cleanup(dwc);
|
||||
break;
|
||||
@@ -210,12 +211,43 @@ static void __dwc3_set_mode(struct work_struct *work)
|
||||
@@ -211,12 +212,43 @@ static void __dwc3_set_mode(struct work_struct *work)
|
||||
* Only perform GCTL.CoreSoftReset when there's DRD role switching.
|
||||
*/
|
||||
if (dwc->current_dr_role && ((DWC3_IP_IS(DWC3) ||
|
||||
@ -78,7 +78,7 @@ index 111111111111..222222222222 100644
|
||||
/*
|
||||
* Wait for internal clocks to synchronized. DWC_usb31 and
|
||||
* DWC_usb32 may need at least 50ms (less for DWC_usb3). To
|
||||
@@ -257,6 +289,7 @@ static void __dwc3_set_mode(struct work_struct *work)
|
||||
@@ -258,6 +290,7 @@ static void __dwc3_set_mode(struct work_struct *work)
|
||||
}
|
||||
break;
|
||||
case DWC3_GCTL_PRTCAP_DEVICE:
|
||||
@ -86,7 +86,7 @@ index 111111111111..222222222222 100644
|
||||
dwc3_core_soft_reset(dwc);
|
||||
|
||||
dwc3_event_buffers_setup(dwc);
|
||||
@@ -1844,6 +1877,8 @@ static void dwc3_get_properties(struct dwc3 *dwc)
|
||||
@@ -1845,6 +1878,8 @@ static void dwc3_get_properties(struct dwc3 *dwc)
|
||||
|
||||
dwc->dis_split_quirk = device_property_read_bool(dev,
|
||||
"snps,dis-split-quirk");
|
||||
@ -95,7 +95,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
dwc->lpm_nyet_threshold = lpm_nyet_threshold;
|
||||
dwc->tx_de_emphasis = tx_de_emphasis;
|
||||
@@ -2439,6 +2474,7 @@ static int dwc3_suspend_common(struct dwc3 *dwc, pm_message_t msg)
|
||||
@@ -2441,6 +2476,7 @@ static int dwc3_suspend_common(struct dwc3 *dwc, pm_message_t msg)
|
||||
|
||||
switch (dwc->current_dr_role) {
|
||||
case DWC3_GCTL_PRTCAP_DEVICE:
|
||||
@ -103,7 +103,7 @@ index 111111111111..222222222222 100644
|
||||
if (pm_runtime_suspended(dwc->dev))
|
||||
break;
|
||||
ret = dwc3_gadget_suspend(dwc);
|
||||
@@ -2503,11 +2539,12 @@ static int dwc3_resume_common(struct dwc3 *dwc, pm_message_t msg)
|
||||
@@ -2505,11 +2541,12 @@ static int dwc3_resume_common(struct dwc3 *dwc, pm_message_t msg)
|
||||
|
||||
switch (dwc->current_dr_role) {
|
||||
case DWC3_GCTL_PRTCAP_DEVICE:
|
||||
@ -117,7 +117,7 @@ index 111111111111..222222222222 100644
|
||||
dwc3_gadget_resume(dwc);
|
||||
break;
|
||||
case DWC3_GCTL_PRTCAP_HOST:
|
||||
@@ -2571,6 +2608,7 @@ static int dwc3_runtime_checks(struct dwc3 *dwc)
|
||||
@@ -2573,6 +2610,7 @@ static int dwc3_runtime_checks(struct dwc3 *dwc)
|
||||
{
|
||||
switch (dwc->current_dr_role) {
|
||||
case DWC3_GCTL_PRTCAP_DEVICE:
|
||||
@ -125,7 +125,7 @@ index 111111111111..222222222222 100644
|
||||
if (dwc->connected)
|
||||
return -EBUSY;
|
||||
break;
|
||||
@@ -2609,6 +2647,7 @@ int dwc3_runtime_resume(struct dwc3 *dwc)
|
||||
@@ -2611,6 +2649,7 @@ int dwc3_runtime_resume(struct dwc3 *dwc)
|
||||
|
||||
switch (dwc->current_dr_role) {
|
||||
case DWC3_GCTL_PRTCAP_DEVICE:
|
||||
@ -133,7 +133,7 @@ index 111111111111..222222222222 100644
|
||||
if (dwc->pending_events) {
|
||||
pm_runtime_put(dev);
|
||||
dwc->pending_events = false;
|
||||
@@ -2633,6 +2672,7 @@ int dwc3_runtime_idle(struct dwc3 *dwc)
|
||||
@@ -2635,6 +2674,7 @@ int dwc3_runtime_idle(struct dwc3 *dwc)
|
||||
|
||||
switch (dwc->current_dr_role) {
|
||||
case DWC3_GCTL_PRTCAP_DEVICE:
|
||||
@ -158,7 +158,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
#define DWC3_GCTL_CORESOFTRESET BIT(11)
|
||||
#define DWC3_GCTL_SOFITPSYNC BIT(10)
|
||||
@@ -1152,6 +1158,10 @@ struct dwc3_scratchpad_array {
|
||||
@@ -1164,6 +1170,10 @@ struct dwc3_glue_ops {
|
||||
* @sys_wakeup: set if the device may do system wakeup.
|
||||
* @wakeup_configured: set if the device is configured for remote wakeup.
|
||||
* @suspended: set to track suspend event due to U3/L2.
|
||||
@ -169,7 +169,7 @@ index 111111111111..222222222222 100644
|
||||
* @susphy_state: state of DWC3_GUSB2PHYCFG_SUSPHY + DWC3_GUSB3PIPECTL_SUSPHY
|
||||
* before PM suspend.
|
||||
* @imod_interval: set the interrupt moderation interval in 250ns
|
||||
@@ -1392,6 +1402,8 @@ struct dwc3 {
|
||||
@@ -1406,6 +1416,8 @@ struct dwc3 {
|
||||
unsigned suspended:1;
|
||||
unsigned susphy_state:1;
|
||||
|
||||
@ -229,7 +229,7 @@ index 111111111111..222222222222 100644
|
||||
|
||||
return NOTIFY_DONE;
|
||||
}
|
||||
@@ -547,8 +558,7 @@ int dwc3_drd_init(struct dwc3 *dwc)
|
||||
@@ -548,8 +559,7 @@ int dwc3_drd_init(struct dwc3 *dwc)
|
||||
|
||||
if (dwc->edev) {
|
||||
dwc->edev_nb.notifier_call = dwc3_drd_notifier;
|
||||
|
||||
@ -33,7 +33,7 @@ index 111111111111..222222222222 100644
|
||||
if (dwc->role_switch_default_mode == USB_DR_MODE_HOST)
|
||||
mode = DWC3_GCTL_PRTCAP_HOST;
|
||||
else
|
||||
@@ -487,6 +489,9 @@ static enum usb_role dwc3_usb_role_switch_get(struct usb_role_switch *sw)
|
||||
@@ -488,6 +490,9 @@ static enum usb_role dwc3_usb_role_switch_get(struct usb_role_switch *sw)
|
||||
|
||||
spin_lock_irqsave(&dwc->lock, flags);
|
||||
switch (dwc->current_dr_role) {
|
||||
@ -43,7 +43,7 @@ index 111111111111..222222222222 100644
|
||||
case DWC3_GCTL_PRTCAP_HOST:
|
||||
role = USB_ROLE_HOST;
|
||||
break;
|
||||
@@ -518,6 +523,8 @@ static int dwc3_setup_role_switch(struct dwc3 *dwc)
|
||||
@@ -519,6 +524,8 @@ static int dwc3_setup_role_switch(struct dwc3 *dwc)
|
||||
} else {
|
||||
dwc->role_switch_default_mode = USB_DR_MODE_PERIPHERAL;
|
||||
mode = DWC3_GCTL_PRTCAP_DEVICE;
|
||||
|
||||
@ -18,7 +18,7 @@ diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/usb/dwc3/core.c
|
||||
+++ b/drivers/usb/dwc3/core.c
|
||||
@@ -931,6 +931,7 @@ static int dwc3_phy_power_on(struct dwc3 *dwc)
|
||||
@@ -932,6 +932,7 @@ static int dwc3_phy_power_on(struct dwc3 *dwc)
|
||||
goto err_power_off_usb3_phy;
|
||||
}
|
||||
|
||||
@ -26,7 +26,7 @@ index 111111111111..222222222222 100644
|
||||
return 0;
|
||||
|
||||
err_power_off_usb3_phy:
|
||||
@@ -951,8 +952,10 @@ static void dwc3_phy_power_off(struct dwc3 *dwc)
|
||||
@@ -952,8 +953,10 @@ static void dwc3_phy_power_off(struct dwc3 *dwc)
|
||||
{
|
||||
int i;
|
||||
|
||||
@ -43,7 +43,7 @@ diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/usb/dwc3/core.h
|
||||
+++ b/drivers/usb/dwc3/core.h
|
||||
@@ -1224,6 +1224,8 @@ struct dwc3 {
|
||||
@@ -1238,6 +1238,8 @@ struct dwc3 {
|
||||
u8 num_usb2_ports;
|
||||
u8 num_usb3_ports;
|
||||
|
||||
|
||||
@ -21,7 +21,7 @@ diff --git a/drivers/usb/typec/altmodes/displayport.c b/drivers/usb/typec/altmod
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/usb/typec/altmodes/displayport.c
|
||||
+++ b/drivers/usb/typec/altmodes/displayport.c
|
||||
@@ -170,11 +170,29 @@ static int dp_altmode_configure(struct dp_altmode *dp, u8 con)
|
||||
@@ -177,11 +177,29 @@ static int dp_altmode_configure(struct dp_altmode *dp, u8 con)
|
||||
/* Account for active cable capabilities */
|
||||
if (dp->plug_prime)
|
||||
pin_assign &= DP_CAP_UFP_D_PIN_ASSIGN(dp->plug_prime->vdo);
|
||||
@ -51,7 +51,7 @@ index 111111111111..222222222222 100644
|
||||
/* Determining the initial pin assignment. */
|
||||
if (!DP_CONF_GET_PIN_ASSIGN(dp->data.conf)) {
|
||||
/* Is USB together with DP preferred */
|
||||
@@ -786,15 +804,37 @@ int dp_altmode_probe(struct typec_altmode *alt)
|
||||
@@ -814,15 +832,37 @@ int dp_altmode_probe(struct typec_altmode *alt)
|
||||
struct typec_altmode *plug = typec_altmode_get_plug(alt, TYPEC_PLUG_SOP_P);
|
||||
struct fwnode_handle *fwnode;
|
||||
struct dp_altmode *dp;
|
||||
|
||||
@ -18,7 +18,7 @@ diff --git a/drivers/usb/typec/tcpm/tcpm.c b/drivers/usb/typec/tcpm/tcpm.c
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/usb/typec/tcpm/tcpm.c
|
||||
+++ b/drivers/usb/typec/tcpm/tcpm.c
|
||||
@@ -3111,15 +3111,22 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
|
||||
@@ -3115,15 +3115,22 @@ static int tcpm_register_source_caps(struct tcpm_port *port)
|
||||
struct usb_power_delivery_desc desc = { port->negotiated_rev };
|
||||
struct usb_power_delivery_capabilities_desc caps = { };
|
||||
struct usb_power_delivery_capabilities *cap;
|
||||
@ -45,7 +45,7 @@ index 111111111111..222222222222 100644
|
||||
cap = usb_power_delivery_register_capabilities(port->partner_pd, &caps);
|
||||
if (IS_ERR(cap))
|
||||
return PTR_ERR(cap);
|
||||
@@ -3134,15 +3141,22 @@ static int tcpm_register_sink_caps(struct tcpm_port *port)
|
||||
@@ -3138,15 +3145,22 @@ static int tcpm_register_sink_caps(struct tcpm_port *port)
|
||||
struct usb_power_delivery_desc desc = { port->negotiated_rev };
|
||||
struct usb_power_delivery_capabilities_desc caps = { };
|
||||
struct usb_power_delivery_capabilities *cap;
|
||||
@ -72,7 +72,7 @@ index 111111111111..222222222222 100644
|
||||
cap = usb_power_delivery_register_capabilities(port->partner_pd, &caps);
|
||||
if (IS_ERR(cap))
|
||||
return PTR_ERR(cap);
|
||||
@@ -7205,10 +7219,17 @@ static int tcpm_port_register_pd(struct tcpm_port *port)
|
||||
@@ -7209,10 +7223,17 @@ static int tcpm_port_register_pd(struct tcpm_port *port)
|
||||
port->pds[i] = usb_power_delivery_register(port->dev, &desc);
|
||||
if (IS_ERR(port->pds[i])) {
|
||||
ret = PTR_ERR(port->pds[i]);
|
||||
|
||||
@ -1,17 +1,18 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Jianfeng Liu <liujianfeng1994@gmail.com>
|
||||
Date: Wed, 1 Oct 2025 20:59:28 +0800
|
||||
Subject: arch: arm64: dts: rockchip: remove overclocked CPU OPP table on rk3576
|
||||
Subject: arch: arm64: dts: rockchip: remove overclocked CPU OPP table on
|
||||
rk3576
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3576.dtsi | 12 ------
|
||||
arch/arm64/boot/dts/rockchip/rk3576.dtsi | 12 ----------
|
||||
1 file changed, 12 deletions(-)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3576.dtsi b/arch/arm64/boot/dts/rockchip/rk3576.dtsi
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3576.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3576.dtsi
|
||||
@@ -269,12 +269,6 @@ opp-2016000000 {
|
||||
@@ -276,12 +276,6 @@ opp-2016000000 {
|
||||
opp-microvolt = <900000 900000 950000>;
|
||||
clock-latency-ns = <40000>;
|
||||
};
|
||||
@ -24,7 +25,7 @@ index 111111111111..222222222222 100644
|
||||
};
|
||||
|
||||
cluster1_opp_table: opp-table-cluster1 {
|
||||
@@ -341,12 +335,6 @@ opp-2208000000 {
|
||||
@@ -348,12 +342,6 @@ opp-2208000000 {
|
||||
opp-microvolt = <925000 925000 950000>;
|
||||
clock-latency-ns = <40000>;
|
||||
};
|
||||
|
||||
@ -88,7 +88,7 @@ index 111111111111..222222222222 100644
|
||||
down = parent_rate / rate;
|
||||
|
||||
if (flags & CLK_DIVIDER_POWER_OF_TWO) {
|
||||
@@ -479,7 +479,7 @@ int divider_get_val(unsigned long rate, unsigned long parent_rate,
|
||||
@@ -458,7 +458,7 @@ int divider_get_val(unsigned long rate, unsigned long parent_rate,
|
||||
{
|
||||
unsigned int div, value;
|
||||
|
||||
|
||||
@ -4,14 +4,14 @@ Date: Wed, 27 Dec 2023 15:03:57 +0800
|
||||
Subject: arm64: dts: rock-5b: Slow down emmc freq and add tsadc node
|
||||
|
||||
---
|
||||
arch/arm64/boot/dts/rockchip/rk3588-rock-5b.dtsi | 1 +
|
||||
arch/arm64/boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi | 1 +
|
||||
1 file changed, 1 insertion(+)
|
||||
|
||||
diff --git a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi
|
||||
index 973d39a7e0e0..0510d63f1b3a 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-rock-5b-5bp-5t.dtsi
|
||||
@@ -434,6 +434,7 @@ &sdhci {
|
||||
@@ -584,6 +584,7 @@ &sdhci {
|
||||
no-sdio;
|
||||
no-sd;
|
||||
non-removable;
|
||||
|
||||
@ -27,7 +27,7 @@ index 111111111111..222222222222 100644
|
||||
sound {
|
||||
compatible = "simple-audio-card";
|
||||
pinctrl-names = "default";
|
||||
@@ -580,6 +588,34 @@ &i2s6_8ch {
|
||||
@@ -591,6 +599,34 @@ &i2s6_8ch {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@ -12,7 +12,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boo
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
|
||||
@@ -1109,6 +1109,7 @@ &u2phy0 {
|
||||
@@ -1127,6 +1127,7 @@ &u2phy0 {
|
||||
};
|
||||
|
||||
&u2phy0_otg {
|
||||
@ -20,7 +20,7 @@ index 111111111111..222222222222 100644
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@@ -1185,6 +1186,7 @@ usb_host0_xhci_drd_sw: endpoint {
|
||||
@@ -1203,6 +1204,7 @@ usb_host0_xhci_drd_sw: endpoint {
|
||||
|
||||
&usb_host1_xhci {
|
||||
dr_mode = "host";
|
||||
|
||||
@ -11,7 +11,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588s-nanopi-r6.dtsi b/arch/arm64/bo
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588s-nanopi-r6.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588s-nanopi-r6.dtsi
|
||||
@@ -788,6 +788,15 @@ &u2phy0_otg {
|
||||
@@ -830,6 +830,15 @@ &u2phy0_otg {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@ -27,7 +27,7 @@ index 111111111111..222222222222 100644
|
||||
&u2phy2 {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -819,6 +828,16 @@ &usbdp_phy0 {
|
||||
@@ -861,6 +870,16 @@ &usbdp_phy0 {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
|
||||
@ -15,8 +15,8 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-friendlyelec-cm3588-nas.dts b/a
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-friendlyelec-cm3588-nas.dts
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-friendlyelec-cm3588-nas.dts
|
||||
@@ -335,6 +335,17 @@ hdmi0_out_con: endpoint {
|
||||
};
|
||||
@@ -346,6 +346,17 @@ &hdmi_receiver {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
+&hdmi_receiver_cma {
|
||||
@ -33,7 +33,7 @@ index 111111111111..222222222222 100644
|
||||
&hdptxphy0 {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -478,6 +489,12 @@ key1_pin: key1-pin {
|
||||
@@ -495,6 +506,12 @@ hdmirx_hpd: hdmirx-5v-detection {
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@ -15,7 +15,7 @@ diff --git a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi b/arch/arm64/boo
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
|
||||
+++ b/arch/arm64/boot/dts/rockchip/rk3588-nanopc-t6.dtsi
|
||||
@@ -399,6 +399,17 @@ &hdmi1_sound {
|
||||
@@ -410,6 +410,17 @@ &hdmi_receiver {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
@ -33,7 +33,7 @@ index 111111111111..222222222222 100644
|
||||
&hdptxphy0 {
|
||||
status = "okay";
|
||||
};
|
||||
@@ -665,6 +676,12 @@ usr_led_pin: usr-led-pin {
|
||||
@@ -682,6 +693,12 @@ hdmirx_hpd: hdmirx-5v-detection {
|
||||
};
|
||||
};
|
||||
|
||||
|
||||
@ -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
|
||||
@@ -2061,6 +2061,18 @@ rng@fe378000 {
|
||||
@@ -2256,6 +2256,18 @@ rng@fe378000 {
|
||||
resets = <&scmi_reset SCMI_SRST_H_TRNG_NS>;
|
||||
};
|
||||
|
||||
@ -345,9 +345,9 @@ diff --git a/drivers/crypto/Kconfig b/drivers/crypto/Kconfig
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/crypto/Kconfig
|
||||
+++ b/drivers/crypto/Kconfig
|
||||
@@ -720,6 +720,35 @@ config CRYPTO_DEV_TEGRA
|
||||
Select this to enable Tegra Security Engine which accelerates various
|
||||
AES encryption/decryption and HASH algorithms.
|
||||
@@ -745,6 +745,35 @@ config CRYPTO_DEV_XILINX_TRNG
|
||||
To compile this driver as a module, choose M here: the module
|
||||
will be called xilinx-trng.
|
||||
|
||||
+config CRYPTO_DEV_ROCKCHIP2
|
||||
+ tristate "Rockchip's cryptographic offloader V2"
|
||||
|
||||
@ -1,14 +1,23 @@
|
||||
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
||||
From: Paolo Sabatino <paolo.sabatino@gmail.com>
|
||||
Date: Wed, 20 Aug 2025 21:40:48 +0200
|
||||
Subject: [ARCHEOLOGY] workaround for rockchip gigabit ethernet not able to
|
||||
init dma
|
||||
|
||||
Temporary patch to workaround a DMA reset issue with rockchip
|
||||
devices experienced at least on rk3288 and rk3328 with a message
|
||||
like this:
|
||||
|
||||
rk_gmac-dwmac ff290000.ethernet end0: Failed to reset the dma
|
||||
---
|
||||
drivers/net/ethernet/stmicro/stmmac/stmmac_main.c | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
||||
index e0fb06af1f94..156a5d25d1fd 100644
|
||||
index 111111111111..222222222222 100644
|
||||
--- a/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
||||
+++ b/drivers/net/ethernet/stmicro/stmmac/stmmac_main.c
|
||||
@@ -3133,8 +3133,8 @@ static int stmmac_init_dma_engine(struct stmmac_priv *priv)
|
||||
@@ -3057,8 +3057,8 @@ static int stmmac_init_dma_engine(struct stmmac_priv *priv)
|
||||
|
||||
ret = stmmac_reset(priv, priv->ioaddr);
|
||||
if (ret) {
|
||||
@ -19,3 +28,6 @@ index e0fb06af1f94..156a5d25d1fd 100644
|
||||
}
|
||||
|
||||
/* DMA Configuration */
|
||||
--
|
||||
Armbian
|
||||
|
||||
|
||||
Loading…
Reference in New Issue
Block a user