patches-6.1: refresh patches

This commit is contained in:
sbwml 2023-09-06 21:24:05 +08:00
parent 8a4c26845f
commit bf3c435098
16 changed files with 81 additions and 146 deletions

View File

@ -1,5 +1,3 @@
diff --git a/drivers/gpio/Kconfig b/drivers/gpio/Kconfig
index 0642f5791..830bc9a8e 100644
--- a/drivers/gpio/Kconfig
+++ b/drivers/gpio/Kconfig
@@ -59,7 +59,7 @@ config DEBUG_GPIO

View File

@ -13,9 +13,6 @@ Subject: [PATCH] add hwrng for rk3568
create mode 100644 Documentation/devicetree/bindings/rng/rockchip,rk3568-rng.yaml
create mode 100644 drivers/char/hw_random/rk3568-rng.c
diff --git a/Documentation/devicetree/bindings/rng/rockchip,rk3568-rng.yaml b/Documentation/devicetree/bindings/rng/rockchip,rk3568-rng.yaml
new file mode 100644
index 000000000..c2f5ef69c
--- /dev/null
+++ b/Documentation/devicetree/bindings/rng/rockchip,rk3568-rng.yaml
@@ -0,0 +1,60 @@
@ -79,11 +76,9 @@ index 000000000..c2f5ef69c
+ };
+
+...
diff --git a/arch/arm64/boot/dts/rockchip/rk356x.dtsi b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
index 164708f1e..718171234 100644
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
@@ -1770,6 +1770,16 @@ usb2phy1_otg: otg-port {
@@ -1772,6 +1772,16 @@
};
};
@ -100,8 +95,6 @@ index 164708f1e..718171234 100644
pinctrl: pinctrl {
compatible = "rockchip,rk3568-pinctrl";
rockchip,grf = <&grf>;
diff --git a/drivers/char/hw_random/Kconfig b/drivers/char/hw_random/Kconfig
index 3da8e85f8..3e20e4421 100644
--- a/drivers/char/hw_random/Kconfig
+++ b/drivers/char/hw_random/Kconfig
@@ -372,6 +372,20 @@ config HW_RANDOM_STM32
@ -125,11 +118,9 @@ index 3da8e85f8..3e20e4421 100644
config HW_RANDOM_PIC32
tristate "Microchip PIC32 Random Number Generator support"
depends on HW_RANDOM && MACH_PIC32
diff --git a/drivers/char/hw_random/Makefile b/drivers/char/hw_random/Makefile
index 3e948cf04..460191bcf 100644
--- a/drivers/char/hw_random/Makefile
+++ b/drivers/char/hw_random/Makefile
@@ -34,6 +34,7 @@ obj-$(CONFIG_HW_RANDOM_IPROC_RNG200) += iproc-rng200.o
@@ -34,6 +34,7 @@ obj-$(CONFIG_HW_RANDOM_IPROC_RNG200) +=
obj-$(CONFIG_HW_RANDOM_ST) += st-rng.o
obj-$(CONFIG_HW_RANDOM_XGENE) += xgene-rng.o
obj-$(CONFIG_HW_RANDOM_STM32) += stm32-rng.o
@ -137,9 +128,6 @@ index 3e948cf04..460191bcf 100644
obj-$(CONFIG_HW_RANDOM_PIC32) += pic32-rng.o
obj-$(CONFIG_HW_RANDOM_MESON) += meson-rng.o
obj-$(CONFIG_HW_RANDOM_CAVIUM) += cavium-rng.o cavium-rng-vf.o
diff --git a/drivers/char/hw_random/rk3568-rng.c b/drivers/char/hw_random/rk3568-rng.c
new file mode 100644
index 000000000..b04346b23
--- /dev/null
+++ b/drivers/char/hw_random/rk3568-rng.c
@@ -0,0 +1,250 @@
@ -393,6 +381,3 @@ index 000000000..b04346b23
+MODULE_DESCRIPTION("Rockchip True Random Number Generator driver");
+MODULE_AUTHOR("Lin Jinhan <troy.lin@rock-chips.com>, Aurelien Jarno <aurelien@aurel32.net>");
+MODULE_LICENSE("GPL v2");
--
2.34.1

View File

@ -1,7 +1,6 @@
diff -Naur a/drivers/clk/rockchip/clk-half-divider.c b/drivers/clk/rockchip/clk-half-divider.c
--- a/drivers/clk/rockchip/clk-half-divider.c 2022-07-31 17:03:01.000000000 -0400
+++ b/drivers/clk/rockchip/clk-half-divider.c 2022-08-09 17:00:56.992472371 -0400
@@ -166,7 +166,7 @@
--- a/drivers/clk/rockchip/clk-half-divider.c
+++ b/drivers/clk/rockchip/clk-half-divider.c
@@ -166,7 +166,7 @@ struct clk *rockchip_clk_register_halfdi
unsigned long flags,
spinlock_t *lock)
{
@ -10,10 +9,9 @@ diff -Naur a/drivers/clk/rockchip/clk-half-divider.c b/drivers/clk/rockchip/clk-
struct clk_mux *mux = NULL;
struct clk_gate *gate = NULL;
struct clk_divider *div = NULL;
diff -Naur a/drivers/usb/dwc3/dwc3-of-simple.c b/drivers/usb/dwc3/dwc3-of-simple.c
--- a/drivers/usb/dwc3/dwc3-of-simple.c 2022-07-31 17:03:01.000000000 -0400
+++ b/drivers/usb/dwc3/dwc3-of-simple.c 2022-08-09 17:00:56.994472344 -0400
@@ -30,12 +30,16 @@
--- a/drivers/usb/dwc3/dwc3-of-simple.c
+++ b/drivers/usb/dwc3/dwc3-of-simple.c
@@ -30,12 +30,16 @@ struct dwc3_of_simple {
bool need_reset;
};
@ -31,7 +29,7 @@ diff -Naur a/drivers/usb/dwc3/dwc3-of-simple.c b/drivers/usb/dwc3/dwc3-of-simple
int ret;
simple = devm_kzalloc(dev, sizeof(*simple), GFP_KERNEL);
@@ -49,8 +53,8 @@
@@ -49,8 +53,8 @@ static int dwc3_of_simple_probe(struct p
* Some controllers need to toggle the usb3-otg reset before trying to
* initialize the PHY, otherwise the PHY times out.
*/
@ -42,7 +40,7 @@ diff -Naur a/drivers/usb/dwc3/dwc3-of-simple.c b/drivers/usb/dwc3/dwc3-of-simple
simple->resets = of_reset_control_array_get(np, false, true,
true);
@@ -170,13 +174,34 @@
@@ -170,13 +174,34 @@ static const struct dev_pm_ops dwc3_of_s
dwc3_of_simple_runtime_resume, NULL)
};
@ -83,10 +81,9 @@ diff -Naur a/drivers/usb/dwc3/dwc3-of-simple.c b/drivers/usb/dwc3/dwc3-of-simple
{ /* Sentinel */ }
};
MODULE_DEVICE_TABLE(of, of_dwc3_simple_match);
diff -Naur a/kernel/dma/pool.c b/kernel/dma/pool.c
--- a/kernel/dma/pool.c 2022-07-31 17:03:01.000000000 -0400
+++ b/kernel/dma/pool.c 2022-08-09 17:00:56.992472371 -0400
@@ -189,13 +189,10 @@
--- a/kernel/dma/pool.c
+++ b/kernel/dma/pool.c
@@ -189,13 +189,10 @@ static int __init dma_atomic_pool_init(v
int ret = 0;
/*
@ -102,9 +99,8 @@ diff -Naur a/kernel/dma/pool.c b/kernel/dma/pool.c
}
INIT_WORK(&atomic_pool_work, atomic_pool_work_fn);
diff -Naur a/sound/soc/codecs/rt5651.c b/sound/soc/codecs/rt5651.c
--- a/sound/soc/codecs/rt5651.c 2022-07-31 17:03:01.000000000 -0400
+++ b/sound/soc/codecs/rt5651.c 2022-08-09 17:00:56.993472358 -0400
--- a/sound/soc/codecs/rt5651.c
+++ b/sound/soc/codecs/rt5651.c
@@ -24,6 +24,7 @@
#include <sound/initval.h>
#include <sound/tlv.h>
@ -113,7 +109,7 @@ diff -Naur a/sound/soc/codecs/rt5651.c b/sound/soc/codecs/rt5651.c
#include "rl6231.h"
#include "rt5651.h"
@@ -1511,6 +1512,7 @@
@@ -1511,6 +1512,7 @@ static int rt5651_set_dai_pll(struct snd
static int rt5651_set_bias_level(struct snd_soc_component *component,
enum snd_soc_bias_level level)
{
@ -121,7 +117,7 @@ diff -Naur a/sound/soc/codecs/rt5651.c b/sound/soc/codecs/rt5651.c
switch (level) {
case SND_SOC_BIAS_PREPARE:
if (SND_SOC_BIAS_STANDBY == snd_soc_component_get_bias_level(component)) {
@@ -1518,6 +1520,13 @@
@@ -1518,6 +1520,13 @@ static int rt5651_set_bias_level(struct
snd_soc_component_update_bits(component, RT5651_D_MISC,
0xc00, 0xc00);
}
@ -135,7 +131,7 @@ diff -Naur a/sound/soc/codecs/rt5651.c b/sound/soc/codecs/rt5651.c
break;
case SND_SOC_BIAS_STANDBY:
if (SND_SOC_BIAS_OFF == snd_soc_component_get_bias_level(component)) {
@@ -2059,6 +2068,13 @@
@@ -2059,6 +2068,13 @@ static int rt5651_probe(struct snd_soc_c
{
struct rt5651_priv *rt5651 = snd_soc_component_get_drvdata(component);
@ -149,10 +145,9 @@ diff -Naur a/sound/soc/codecs/rt5651.c b/sound/soc/codecs/rt5651.c
rt5651->component = component;
snd_soc_component_update_bits(component, RT5651_PWR_ANLG1,
diff -Naur a/sound/soc/codecs/rt5651.h b/sound/soc/codecs/rt5651.h
--- a/sound/soc/codecs/rt5651.h 2022-07-31 17:03:01.000000000 -0400
+++ b/sound/soc/codecs/rt5651.h 2022-08-09 17:00:56.994472344 -0400
@@ -2097,6 +2097,7 @@
--- a/sound/soc/codecs/rt5651.h
+++ b/sound/soc/codecs/rt5651.h
@@ -2097,6 +2097,7 @@ struct rt5651_priv {
int dmic_en;
bool hp_mute;
@ -160,10 +155,9 @@ diff -Naur a/sound/soc/codecs/rt5651.h b/sound/soc/codecs/rt5651.h
};
#endif /* __RT5651_H__ */
diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c 2022-07-10 17:40:51.000000000 -0400
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c 2022-07-11 05:18:34.000000000 -0400
@@ -91,80 +91,88 @@
--- a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
+++ b/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c
@@ -91,80 +91,88 @@ static struct rockchip_hdmi *to_rockchip
static const struct dw_hdmi_mpll_config rockchip_mpll_cfg[] = {
{
@ -324,7 +318,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
},
}
};
@@ -172,20 +180,8 @@
@@ -172,20 +180,8 @@ static const struct dw_hdmi_mpll_config
static const struct dw_hdmi_curr_ctrl rockchip_cur_ctr[] = {
/* pixelclk bpp8 bpp10 bpp12 */
{
@ -347,7 +341,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
~0UL, { 0x0000, 0x0000, 0x0000},
}
};
@@ -195,6 +191,7 @@
@@ -195,6 +191,7 @@ static const struct dw_hdmi_phy_config r
{ 74250000, 0x8009, 0x0004, 0x0272},
{ 148500000, 0x802b, 0x0004, 0x028d},
{ 297000000, 0x8039, 0x0005, 0x028d},
@ -355,7 +349,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
{ ~0UL, 0x0000, 0x0000, 0x0000}
};
@@ -240,26 +237,6 @@
@@ -240,26 +237,6 @@ static int rockchip_hdmi_parse_dt(struct
return 0;
}
@ -382,7 +376,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
static void dw_hdmi_rockchip_encoder_disable(struct drm_encoder *encoder)
{
}
@@ -425,7 +402,6 @@
@@ -425,7 +402,6 @@ static struct rockchip_hdmi_chip_data rk
};
static const struct dw_hdmi_plat_data rk3228_hdmi_drv_data = {
@ -390,7 +384,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
.mpll_cfg = rockchip_mpll_cfg,
.cur_ctr = rockchip_cur_ctr,
.phy_config = rockchip_phy_config,
@@ -442,7 +418,6 @@
@@ -442,7 +418,6 @@ static struct rockchip_hdmi_chip_data rk
};
static const struct dw_hdmi_plat_data rk3288_hdmi_drv_data = {
@ -398,7 +392,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
.mpll_cfg = rockchip_mpll_cfg,
.cur_ctr = rockchip_cur_ctr,
.phy_config = rockchip_phy_config,
@@ -462,7 +437,6 @@
@@ -462,7 +437,6 @@ static struct rockchip_hdmi_chip_data rk
};
static const struct dw_hdmi_plat_data rk3328_hdmi_drv_data = {
@ -406,7 +400,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
.mpll_cfg = rockchip_mpll_cfg,
.cur_ctr = rockchip_cur_ctr,
.phy_config = rockchip_phy_config,
@@ -480,7 +454,6 @@
@@ -480,7 +454,6 @@ static struct rockchip_hdmi_chip_data rk
};
static const struct dw_hdmi_plat_data rk3399_hdmi_drv_data = {
@ -414,7 +408,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
.mpll_cfg = rockchip_mpll_cfg,
.cur_ctr = rockchip_cur_ctr,
.phy_config = rockchip_phy_config,
@@ -493,7 +466,6 @@
@@ -493,7 +466,6 @@ static struct rockchip_hdmi_chip_data rk
};
static const struct dw_hdmi_plat_data rk3568_hdmi_drv_data = {
@ -422,7 +416,7 @@ diff -Naur a/drivers/gpu/drm/rockchip/dw_hdmi-rockchip.c b/drivers/gpu/drm/rockc
.mpll_cfg = rockchip_mpll_cfg,
.cur_ctr = rockchip_cur_ctr,
.phy_config = rockchip_phy_config,
@@ -597,6 +569,14 @@
@@ -598,6 +570,14 @@ static int dw_hdmi_rockchip_bind(struct
}
if (hdmi->chip_data == &rk3568_chip_data) {

View File

@ -1,8 +1,6 @@
diff --git a/arch/arm64/boot/dts/rockchip/Makefile b/arch/arm64/boot/dts/rockchip/Makefile
index 8c15593..1e8c317 100644
--- a/arch/arm64/boot/dts/rockchip/Makefile
+++ b/arch/arm64/boot/dts/rockchip/Makefile
@@ -71,4 +71,6 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-roc-pc.dtb
@@ -71,4 +71,6 @@ dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-ro
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3566-soquartz-cm4.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-bpi-r2-pro.dtb
dtb-$(CONFIG_ARCH_ROCKCHIP) += rk3568-evb1-v10.dtb

View File

@ -14,8 +14,6 @@ Subject: [PATCH] friendlyelec-nanopi-series
create mode 100644 drivers/soc/friendlyelec/Makefile
create mode 100644 drivers/soc/friendlyelec/board.c
diff --git a/drivers/soc/Kconfig b/drivers/soc/Kconfig
index e461c0711..a65fa9f4f 100644
--- a/drivers/soc/Kconfig
+++ b/drivers/soc/Kconfig
@@ -27,5 +27,6 @@ source "drivers/soc/ti/Kconfig"
@ -25,8 +23,6 @@ index e461c0711..a65fa9f4f 100644
+source "drivers/soc/friendlyelec/Kconfig"
endmenu
diff --git a/drivers/soc/Makefile b/drivers/soc/Makefile
index 69ba6508c..16ac16900 100644
--- a/drivers/soc/Makefile
+++ b/drivers/soc/Makefile
@@ -33,3 +33,4 @@ obj-y += ti/
@ -34,9 +30,6 @@ index 69ba6508c..16ac16900 100644
obj-$(CONFIG_PLAT_VERSATILE) += versatile/
obj-y += xilinx/
+obj-$(CONFIG_VENDOR_FRIENDLYELEC) += friendlyelec/
diff --git a/drivers/soc/friendlyelec/Kconfig b/drivers/soc/friendlyelec/Kconfig
new file mode 100644
index 000000000..642629ab7
--- /dev/null
+++ b/drivers/soc/friendlyelec/Kconfig
@@ -0,0 +1,11 @@
@ -51,16 +44,10 @@ index 000000000..642629ab7
+ default n
+
+endif
diff --git a/drivers/soc/friendlyelec/Makefile b/drivers/soc/friendlyelec/Makefile
new file mode 100644
index 000000000..870542f05
--- /dev/null
+++ b/drivers/soc/friendlyelec/Makefile
@@ -0,0 +1 @@
+obj-$(CONFIG_VENDOR_FRIENDLYELEC) += board.o
diff --git a/drivers/soc/friendlyelec/board.c b/drivers/soc/friendlyelec/board.c
new file mode 100644
index 000000000..886a8e1f7
--- /dev/null
+++ b/drivers/soc/friendlyelec/board.c
@@ -0,0 +1,143 @@
@ -207,6 +194,3 @@ index 000000000..886a8e1f7
+MODULE_AUTHOR("support@friendlyarm.com");
+MODULE_DESCRIPTION("FriendlyElec NanoPi Series Machine Driver");
+MODULE_LICENSE("GPL v2");
--
2.34.1

View File

@ -1,8 +1,6 @@
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
index fe5b52610..993d85f47 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
@@ -68,6 +68,15 @@ &emmc_phy {
@@ -68,6 +68,15 @@
status = "disabled";
};

View File

@ -1,8 +1,6 @@
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
index 993d85f47..15feab9a4 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
@@ -19,6 +19,13 @@ / {
@@ -19,6 +19,13 @@
model = "FriendlyElec NanoPi R4S";
compatible = "friendlyarm,nanopi-r4s", "rockchip,rk3399";

View File

@ -1,8 +1,6 @@
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
index 15feab9a4..038d17276 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
@@ -128,6 +128,11 @@ &sdio0 {
@@ -128,6 +128,11 @@
status = "disabled";
};

View File

@ -1,8 +1,6 @@
diff --git a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
index 038d17276..16d2d8cc2 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
+++ b/arch/arm64/boot/dts/rockchip/rk3399-nanopi-r4s.dts
@@ -92,6 +92,19 @@ &pcie0 {
@@ -92,6 +92,19 @@
max-link-speed = <1>;
num-lanes = <1>;
vpcie3v3-supply = <&vcc3v3_sys>;

View File

@ -1,8 +1,6 @@
diff --git a/arch/arm64/boot/dts/rockchip/rk356x.dtsi b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
index cc4848914..5262580ae 100644
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
@@ -297,6 +297,7 @@ usb_host0_xhci: usb@fcc00000 {
@@ -292,6 +292,7 @@
power-domains = <&power RK3568_PD_PIPE>;
resets = <&cru SRST_USB3OTG0>;
snps,dis_u2_susphy_quirk;
@ -10,7 +8,7 @@ index cc4848914..5262580ae 100644
status = "disabled";
};
@@ -315,6 +316,7 @@ usb_host1_xhci: usb@fd000000 {
@@ -310,6 +311,7 @@
power-domains = <&power RK3568_PD_PIPE>;
resets = <&cru SRST_USB3OTG1>;
snps,dis_u2_susphy_quirk;
@ -18,11 +16,9 @@ index cc4848914..5262580ae 100644
status = "disabled";
};
diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
index 476b63618..2241fcc31 100644
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -1551,6 +1551,8 @@ static void dwc3_get_properties(struct dwc3 *dwc)
@@ -1535,6 +1535,8 @@ static void dwc3_get_properties(struct d
"snps,dis-del-phy-power-chg-quirk");
dwc->dis_tx_ipgap_linecheck_quirk = device_property_read_bool(dev,
"snps,dis-tx-ipgap-linecheck-quirk");
@ -31,11 +27,9 @@ index 476b63618..2241fcc31 100644
dwc->resume_hs_terminations = device_property_read_bool(dev,
"snps,resume-hs-terminations");
dwc->parkmode_disable_ss_quirk = device_property_read_bool(dev,
diff --git a/drivers/usb/dwc3/core.h b/drivers/usb/dwc3/core.h
index 8f9959ba9..992d1cdf9 100644
--- a/drivers/usb/dwc3/core.h
+++ b/drivers/usb/dwc3/core.h
@@ -1098,6 +1098,9 @@ struct dwc3_scratchpad_array {
@@ -1095,6 +1095,9 @@ struct dwc3_scratchpad_array {
* change quirk.
* @dis_tx_ipgap_linecheck_quirk: set if we disable u2mac linestate
* check during HS transmit.
@ -45,7 +39,7 @@ index 8f9959ba9..992d1cdf9 100644
* @resume-hs-terminations: Set if we enable quirk for fixing improper crc
* generation after resume from suspend.
* @parkmode_disable_ss_quirk: set if we need to disable all SuperSpeed
@@ -1315,6 +1318,7 @@ struct dwc3 {
@@ -1314,6 +1317,7 @@ struct dwc3 {
unsigned dis_u2_freeclk_exists_quirk:1;
unsigned dis_del_phy_power_chg_quirk:1;
unsigned dis_tx_ipgap_linecheck_quirk:1;
@ -53,11 +47,9 @@ index 8f9959ba9..992d1cdf9 100644
unsigned resume_hs_terminations:1;
unsigned parkmode_disable_ss_quirk:1;
unsigned gfladj_refclk_lpm_sel:1;
diff --git a/drivers/usb/dwc3/host.c b/drivers/usb/dwc3/host.c
index f6f13e7f1..08a528693 100644
--- a/drivers/usb/dwc3/host.c
+++ b/drivers/usb/dwc3/host.c
@@ -66,7 +66,7 @@ static int dwc3_host_get_irq(struct dwc3 *dwc)
@@ -66,7 +66,7 @@ out:
int dwc3_host_init(struct dwc3 *dwc)
{
@ -76,11 +68,9 @@ index f6f13e7f1..08a528693 100644
if (dwc->usb2_lpm_disable)
props[prop_idx++] = PROPERTY_ENTRY_BOOL("usb2-lpm-disable");
diff --git a/drivers/usb/host/xhci-plat.c b/drivers/usb/host/xhci-plat.c
index 5fb55bf19..44e3c87d2 100644
--- a/drivers/usb/host/xhci-plat.c
+++ b/drivers/usb/host/xhci-plat.c
@@ -301,6 +301,9 @@ static int xhci_plat_probe(struct platform_device *pdev)
@@ -301,6 +301,9 @@ static int xhci_plat_probe(struct platfo
if (device_property_read_bool(tmpdev, "quirk-broken-port-ped"))
xhci->quirks |= XHCI_BROKEN_PORT_PED;
@ -90,11 +80,9 @@ index 5fb55bf19..44e3c87d2 100644
device_property_read_u32(tmpdev, "imod-interval-ns",
&xhci->imod_interval);
}
diff --git a/drivers/usb/host/xhci-ring.c b/drivers/usb/host/xhci-ring.c
index 343709af4..785e5263f 100644
--- a/drivers/usb/host/xhci-ring.c
+++ b/drivers/usb/host/xhci-ring.c
@@ -3526,6 +3526,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *xhci, gfp_t mem_flags,
@@ -3533,6 +3533,7 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
bool more_trbs_coming = true;
bool need_zero_pkt = false;
bool first_trb = true;
@ -102,7 +90,7 @@ index 343709af4..785e5263f 100644
unsigned int num_trbs;
unsigned int start_cycle, num_sgs = 0;
unsigned int enqd_len, block_len, trb_buff_len, full_len;
@@ -3562,6 +3563,13 @@ int xhci_queue_bulk_tx(struct xhci_hcd *xhci, gfp_t mem_flags,
@@ -3569,6 +3570,13 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
if (urb->transfer_flags & URB_ZERO_PACKET && urb_priv->num_tds > 1)
need_zero_pkt = true;
@ -116,7 +104,7 @@ index 343709af4..785e5263f 100644
td = &urb_priv->td[0];
/*
@@ -3590,6 +3598,13 @@ int xhci_queue_bulk_tx(struct xhci_hcd *xhci, gfp_t mem_flags,
@@ -3597,6 +3605,13 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
first_trb = false;
if (start_cycle == 0)
field |= TRB_CYCLE;
@ -130,7 +118,7 @@ index 343709af4..785e5263f 100644
} else
field |= ring->cycle_state;
@@ -3598,6 +3613,8 @@ int xhci_queue_bulk_tx(struct xhci_hcd *xhci, gfp_t mem_flags,
@@ -3605,6 +3620,8 @@ int xhci_queue_bulk_tx(struct xhci_hcd *
*/
if (enqd_len + trb_buff_len < full_len) {
field |= TRB_CHAIN;
@ -139,11 +127,9 @@ index 343709af4..785e5263f 100644
if (trb_is_link(ring->enqueue + 1)) {
if (xhci_align_td(xhci, urb, enqd_len,
&trb_buff_len,
diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h
index c9f06c5e4..e57460e21 100644
--- a/drivers/usb/host/xhci.h
+++ b/drivers/usb/host/xhci.h
@@ -1525,7 +1525,11 @@ static inline const char *xhci_trb_type_string(u8 type)
@@ -1525,7 +1525,11 @@ static inline const char *xhci_trb_type_
#define TRB_SEGMENT_SIZE (TRBS_PER_SEGMENT*16)
#define TRB_SEGMENT_SHIFT (ilog2(TRB_SEGMENT_SIZE))
/* TRB buffer pointers can't cross 64KB boundaries */
@ -155,7 +141,7 @@ index c9f06c5e4..e57460e21 100644
#define TRB_MAX_BUFF_SIZE (1 << TRB_MAX_BUFF_SHIFT)
/* How much data is left before the 64KB boundary? */
#define TRB_BUFF_LEN_UP_TO_BOUNDARY(addr) (TRB_MAX_BUFF_SIZE - \
@@ -1842,6 +1846,7 @@ struct xhci_hcd {
@@ -1843,6 +1847,7 @@ struct xhci_hcd {
#define XHCI_STATE_HALTED (1 << 1)
#define XHCI_STATE_REMOVING (1 << 2)
unsigned long long quirks;

View File

@ -1,8 +1,6 @@
diff --git a/arch/arm64/boot/dts/rockchip/rk3399.dtsi b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
index 59858f2dc8b9..2b8f11aebf13 100644
--- a/arch/arm64/boot/dts/rockchip/rk3399.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk3399.dtsi
@@ -459,6 +459,7 @@ usbdrd_dwc3_0: usb@fe800000 {
@@ -459,6 +459,7 @@
snps,dis_enblslpm_quirk;
snps,dis-u2-freeclk-exists-quirk;
snps,dis_u2_susphy_quirk;
@ -10,7 +8,7 @@ index 59858f2dc8b9..2b8f11aebf13 100644
snps,dis-del-phy-power-chg-quirk;
snps,dis-tx-ipgap-linecheck-quirk;
power-domains = <&power RK3399_PD_USB3>;
@@ -495,6 +496,7 @@ usbdrd_dwc3_1: usb@fe900000 {
@@ -495,6 +496,7 @@
snps,dis_enblslpm_quirk;
snps,dis-u2-freeclk-exists-quirk;
snps,dis_u2_susphy_quirk;

View File

@ -1,6 +1,6 @@
--- a/arch/arm64/Kconfig
+++ b/arch/arm64/Kconfig
@@ -1133,6 +1133,14 @@ config SOCIONEXT_SYNQUACER_PREITS
@@ -1152,6 +1152,14 @@ config SOCIONEXT_SYNQUACER_PREITS
If unsure, say Y.
@ -35,7 +35,7 @@
num-lanes = <1>;
phys = <&pcie30phy>;
phy-names = "pcie-phy";
@@ -116,7 +116,7 @@
@@ -117,7 +117,7 @@
compatible = "rockchip,rk3568-pcie";
#address-cells = <3>;
#size-cells = <2>;
@ -44,7 +44,7 @@
clocks = <&cru ACLK_PCIE30X2_MST>, <&cru ACLK_PCIE30X2_SLV>,
<&cru ACLK_PCIE30X2_DBI>, <&cru PCLK_PCIE30X2>,
<&cru CLK_PCIE30X2_AUX_NDFT>;
@@ -139,7 +139,7 @@
@@ -140,7 +140,7 @@
num-ib-windows = <6>;
num-ob-windows = <2>;
max-link-speed = <3>;
@ -55,7 +55,7 @@
phy-names = "pcie-phy";
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
@@ -315,14 +315,21 @@
@@ -317,14 +317,21 @@
gic: interrupt-controller@fd400000 {
compatible = "arm,gic-v3";
@ -83,7 +83,7 @@
};
usb_host0_ehci: usb@fd800000 {
@@ -975,7 +982,7 @@
@@ -978,7 +985,7 @@
num-ib-windows = <6>;
num-ob-windows = <2>;
max-link-speed = <2>;

View File

@ -17,7 +17,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
#define RD_LOCAL_LPI_ENABLED BIT(0)
#define RD_LOCAL_PENDTABLE_PREALLOCATED BIT(1)
@@ -2172,6 +2173,11 @@ static struct page *its_allocate_prop_table(gfp_t gfp_flags)
@@ -2203,6 +2204,11 @@ static struct page *its_allocate_prop_ta
{
struct page *prop_page;
@ -29,7 +29,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
prop_page = alloc_pages(gfp_flags, get_order(LPI_PROPBASE_SZ));
if (!prop_page)
return NULL;
@@ -2295,6 +2301,7 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
@@ -2326,6 +2332,7 @@ static int its_setup_baser(struct its_no
u32 alloc_pages, psz;
struct page *page;
void *base;
@ -37,7 +37,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
psz = baser->psz;
alloc_pages = (PAGE_ORDER_TO_SIZE(order) / psz);
@@ -2306,7 +2313,10 @@ static int its_setup_baser(struct its_node *its, struct its_baser *baser,
@@ -2337,7 +2344,10 @@ static int its_setup_baser(struct its_no
order = get_order(GITS_BASER_PAGES_MAX * psz);
}
@ -49,7 +49,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
if (!page)
return -ENOMEM;
@@ -2353,6 +2363,13 @@ retry_baser:
@@ -2384,6 +2394,13 @@ retry_baser:
its_write_baser(its, baser, val);
tmp = baser->val;
@ -63,7 +63,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
if ((val ^ tmp) & GITS_BASER_SHAREABILITY_MASK) {
/*
* Shareability didn't stick. Just use
@@ -2935,6 +2952,10 @@ static struct page *its_allocate_pending_table(gfp_t gfp_flags)
@@ -2966,6 +2983,10 @@ static struct page *its_allocate_pending
{
struct page *pend_page;
@ -74,7 +74,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
pend_page = alloc_pages(gfp_flags | __GFP_ZERO,
get_order(LPI_PENDBASE_SZ));
if (!pend_page)
@@ -3092,6 +3113,9 @@ static void its_cpu_init_lpis(void)
@@ -3121,6 +3142,9 @@ static void its_cpu_init_lpis(void)
gicr_write_propbaser(val, rbase + GICR_PROPBASER);
tmp = gicr_read_propbaser(rbase + GICR_PROPBASER);
@ -84,7 +84,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
if ((tmp ^ val) & GICR_PROPBASER_SHAREABILITY_MASK) {
if (!(tmp & GICR_PROPBASER_SHAREABILITY_MASK)) {
/*
@@ -3116,6 +3140,9 @@ static void its_cpu_init_lpis(void)
@@ -3145,6 +3169,9 @@ static void its_cpu_init_lpis(void)
gicr_write_pendbaser(val, rbase + GICR_PENDBASER);
tmp = gicr_read_pendbaser(rbase + GICR_PENDBASER);
@ -94,7 +94,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
if (!(tmp & GICR_PENDBASER_SHAREABILITY_MASK)) {
/*
* The HW reports non-shareable, we must remove the
@@ -3278,7 +3305,12 @@ static bool its_alloc_table_entry(struct its_node *its,
@@ -3308,7 +3335,12 @@ static bool its_alloc_table_entry(struct
/* Allocate memory for 2nd level table */
if (!table[idx]) {
@ -108,7 +108,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
get_order(baser->psz));
if (!page)
return false;
@@ -3367,6 +3399,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
@@ -3397,6 +3429,7 @@ static struct its_device *its_create_dev
int nr_lpis;
int nr_ites;
int sz;
@ -116,7 +116,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
if (!its_alloc_device_table(its, dev_id))
return NULL;
@@ -3374,7 +3407,11 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
@@ -3404,7 +3437,11 @@ static struct its_device *its_create_dev
if (WARN_ON(!is_power_of_2(nvecs)))
nvecs = roundup_pow_of_two(nvecs);
@ -129,7 +129,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
/*
* Even if the device wants a single LPI, the ITT must be
* sized as a power of two (and you need at least one bit...).
@@ -3382,7 +3419,7 @@ static struct its_device *its_create_device(struct its_node *its, u32 dev_id,
@@ -3412,7 +3449,7 @@ static struct its_device *its_create_dev
nr_ites = max(2, nvecs);
sz = nr_ites * (FIELD_GET(GITS_TYPER_ITT_ENTRY_SIZE, its->typer) + 1);
sz = max(sz, ITS_ITT_ALIGN) + ITS_ITT_ALIGN - 1;
@ -138,7 +138,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
if (alloc_lpis) {
lpi_map = its_lpi_alloc(nvecs, &lpi_base, &nr_lpis);
if (lpi_map)
@@ -4705,6 +4742,13 @@ static bool __maybe_unused its_enable_quirk_hip07_161600802(void *data)
@@ -4727,6 +4764,13 @@ static bool __maybe_unused its_enable_qu
return true;
}
@ -152,11 +152,10 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
static const struct gic_quirk its_quirks[] = {
#ifdef CONFIG_CAVIUM_ERRATUM_22375
{
@@ -4750,6 +4794,14 @@ static const struct gic_quirk its_quirks[] = {
.mask = 0xffffffff,
@@ -4773,6 +4817,14 @@ static const struct gic_quirk its_quirks
.init = its_enable_quirk_hip07_161600802,
},
+#endif
#endif
+#ifdef CONFIG_ROCKCHIP_ERRATUM_114514
+ {
+ .desc = "ITS: Rockchip erratum 114514",
@ -164,10 +163,11 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
+ .mask = 0xffffffff,
+ .init = its_enable_quirk_rk3568,
+ },
#endif
+#endif
{
}
@@ -4974,6 +5026,7 @@ static int __init its_probe_one(struct resource *res,
};
@@ -5028,6 +5080,7 @@ static int __init its_probe_one(struct r
struct page *page;
u32 ctlr;
int err;
@ -175,7 +175,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
its_base = its_map_one(res, &err);
if (!its_base)
@@ -5042,7 +5095,9 @@ static int __init its_probe_one(struct resource *res,
@@ -5081,7 +5134,9 @@ static int __init its_probe_one(struct r
its->numa_node = numa_node;
@ -186,7 +186,7 @@ Subject: [PATCH] irqchip: gic-v3: add hackaround for rk3568 its
get_order(ITS_CMD_QUEUE_SZ));
if (!page) {
err = -ENOMEM;
@@ -5073,6 +5128,9 @@ static int __init its_probe_one(struct resource *res,
@@ -5112,6 +5167,9 @@ static int __init its_probe_one(struct r
gits_write_cbaser(baser, its->base + GITS_CBASER);
tmp = gits_read_cbaser(its->base + GITS_CBASER);

View File

@ -15,7 +15,7 @@ Signed-off-by: Heiko Stuebner <heiko@sntech.de>
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
@@ -1049,20 +1049,6 @@
@@ -1060,20 +1060,6 @@
status = "disabled";
};
@ -36,7 +36,7 @@ Signed-off-by: Heiko Stuebner <heiko@sntech.de>
i2s0_8ch: i2s@fe400000 {
compatible = "rockchip,rk3568-i2s-tdm";
reg = <0x0 0xfe400000 0x0 0x1000>;
@@ -1141,6 +1127,20 @@
@@ -1152,6 +1138,20 @@
#sound-dai-cells = <0>;
status = "disabled";
};

View File

@ -14,7 +14,7 @@ Signed-off-by: Heiko Stuebner <heiko@sntech.de>
--- a/arch/arm64/boot/dts/rockchip/rk356x.dtsi
+++ b/arch/arm64/boot/dts/rockchip/rk356x.dtsi
@@ -1091,6 +1091,28 @@
@@ -1102,6 +1102,28 @@
status = "disabled";
};

View File

@ -15,7 +15,7 @@
$(Q)$(MAKE) $(build)=$(boot) $(boot)/$@
--- a/scripts/Makefile
+++ b/scripts/Makefile
@@ -10,6 +10,7 @@ hostprogs-always-$(CONFIG_BUILDTIME_TABLE_SORT) += sorttable
@@ -10,6 +10,7 @@ hostprogs-always-$(CONFIG_BUILDTIME_TABL
hostprogs-always-$(CONFIG_ASN1) += asn1_compiler
hostprogs-always-$(CONFIG_MODULE_SIG_FORMAT) += sign-file
hostprogs-always-$(CONFIG_SYSTEM_EXTRA_CERTIFICATE) += insert-sys-cert