aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/bcm27xx/patches-5.10
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/bcm27xx/patches-5.10')
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0310-vc4_hdmi-Remove-cec_available-flag-as-always-support.patch4
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0349-drm-vc4-Add-all-the-HDMI-registers-into-the-debugfs-.patch4
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0457-drm-vc4-hdmi-Introduce-a-CEC-clock.patch4
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0459-drm-vc4-hdmi-Support-BCM2711-CEC-interrupt-setup.patch10
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0460-drm-vc4-hdmi-Don-t-register-the-CEC-adapter-if-there.patch2
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0475-drm-vc4-Add-HDR-metadata-property-to-the-VC5-HDMI-co.patch6
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0576-drm-vc4-hdmi-Raise-the-maximum-clock-rate.patch2
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0601-drm-vc4-hdmi-Rely-on-interrupts-to-handle-hotplug.patch2
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0602-drm-vc4-hdmi-Add-a-workqueue-to-set-scrambling.patch2
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0639-cgroup-Disable-cgroup-memory-by-default.patch8
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0654-drm-vc4-hdmi-Use-a-fixed-rate-for-the-HSM-clock-on-B.patch6
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0668-drm-vc4-hdmi-Split-the-CEC-disable-enable-functions-.patch2
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0675-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-CEC-int.patch38
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0676-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-hotplug.patch6
-rw-r--r--target/linux/bcm27xx/patches-5.10/950-0717-drm-vc4-hdmi-Make-sure-the-controller-is-powered-up-.patch8
15 files changed, 45 insertions, 59 deletions
diff --git a/target/linux/bcm27xx/patches-5.10/950-0310-vc4_hdmi-Remove-cec_available-flag-as-always-support.patch b/target/linux/bcm27xx/patches-5.10/950-0310-vc4_hdmi-Remove-cec_available-flag-as-always-support.patch
index 2f2199e722..d7610cabb0 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0310-vc4_hdmi-Remove-cec_available-flag-as-always-support.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0310-vc4_hdmi-Remove-cec_available-flag-as-always-support.patch
@@ -12,7 +12,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
-@@ -1497,9 +1497,6 @@ static int vc4_hdmi_cec_init(struct vc4_
+@@ -1491,9 +1491,6 @@ static int vc4_hdmi_cec_init(struct vc4_
u32 value;
int ret;
@@ -22,7 +22,7 @@ Signed-off-by: Dom Cobley <popcornmix@gmail.com>
vc4_hdmi->cec_adap = cec_allocate_adapter(&vc4_hdmi_cec_adap_ops,
vc4_hdmi, "vc4",
CEC_CAP_DEFAULTS |
-@@ -1934,7 +1931,6 @@ static const struct vc4_hdmi_variant bcm
+@@ -1926,7 +1923,6 @@ static const struct vc4_hdmi_variant bcm
.debugfs_name = "hdmi_regs",
.card_name = "vc4-hdmi",
.max_pixel_clock = 162000000,
diff --git a/target/linux/bcm27xx/patches-5.10/950-0349-drm-vc4-Add-all-the-HDMI-registers-into-the-debugfs-.patch b/target/linux/bcm27xx/patches-5.10/950-0349-drm-vc4-Add-all-the-HDMI-registers-into-the-debugfs-.patch
index 0aa1d2e48e..edc5be80ab 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0349-drm-vc4-Add-all-the-HDMI-registers-into-the-debugfs-.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0349-drm-vc4-Add-all-the-HDMI-registers-into-the-debugfs-.patch
@@ -29,7 +29,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
return 0;
}
-@@ -1740,6 +1746,7 @@ static int vc5_hdmi_init_resources(struc
+@@ -1732,6 +1738,7 @@ static int vc5_hdmi_init_resources(struc
struct platform_device *pdev = vc4_hdmi->pdev;
struct device *dev = &pdev->dev;
struct resource *res;
@@ -37,7 +37,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
res = platform_get_resource_byname(pdev, IORESOURCE_MEM, "hdmi");
if (!res)
-@@ -1830,6 +1837,38 @@ static int vc5_hdmi_init_resources(struc
+@@ -1822,6 +1829,38 @@ static int vc5_hdmi_init_resources(struc
return PTR_ERR(vc4_hdmi->reset);
}
diff --git a/target/linux/bcm27xx/patches-5.10/950-0457-drm-vc4-hdmi-Introduce-a-CEC-clock.patch b/target/linux/bcm27xx/patches-5.10/950-0457-drm-vc4-hdmi-Introduce-a-CEC-clock.patch
index a5b127ded7..36f46a71ba 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0457-drm-vc4-hdmi-Introduce-a-CEC-clock.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0457-drm-vc4-hdmi-Introduce-a-CEC-clock.patch
@@ -27,7 +27,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
value |= clk_cnt << VC4_HDMI_CEC_DIV_CLK_CNT_SHIFT;
HDMI_WRITE(HDMI_CEC_CNTRL_1, value);
}
-@@ -1875,6 +1875,7 @@ static int vc4_hdmi_init_resources(struc
+@@ -1867,6 +1867,7 @@ static int vc4_hdmi_init_resources(struc
return PTR_ERR(vc4_hdmi->hsm_clock);
}
vc4_hdmi->audio_clock = vc4_hdmi->hsm_clock;
@@ -35,7 +35,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
return 0;
}
-@@ -1969,6 +1970,12 @@ static int vc5_hdmi_init_resources(struc
+@@ -1961,6 +1962,12 @@ static int vc5_hdmi_init_resources(struc
return PTR_ERR(vc4_hdmi->audio_clock);
}
diff --git a/target/linux/bcm27xx/patches-5.10/950-0459-drm-vc4-hdmi-Support-BCM2711-CEC-interrupt-setup.patch b/target/linux/bcm27xx/patches-5.10/950-0459-drm-vc4-hdmi-Support-BCM2711-CEC-interrupt-setup.patch
index dc7896978f..39b80a2a2c 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0459-drm-vc4-hdmi-Support-BCM2711-CEC-interrupt-setup.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0459-drm-vc4-hdmi-Support-BCM2711-CEC-interrupt-setup.patch
@@ -20,7 +20,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
-@@ -1729,9 +1729,11 @@ static int vc4_hdmi_cec_adap_enable(stru
+@@ -1723,9 +1723,11 @@ static int vc4_hdmi_cec_adap_enable(stru
((3600 / usecs) << VC4_HDMI_CEC_CNT_TO_3600_US_SHIFT) |
((3500 / usecs) << VC4_HDMI_CEC_CNT_TO_3500_US_SHIFT));
@@ -34,7 +34,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
HDMI_WRITE(HDMI_CEC_CNTRL_5, val |
VC4_HDMI_CEC_TX_SW_RESET | VC4_HDMI_CEC_RX_SW_RESET);
}
-@@ -1803,8 +1805,6 @@ static int vc4_hdmi_cec_init(struct vc4_
+@@ -1797,8 +1799,6 @@ static int vc4_hdmi_cec_init(struct vc4_
cec_fill_conn_info_from_drm(&conn_info, &vc4_hdmi->connector);
cec_s_conn_info(vc4_hdmi->cec_adap, &conn_info);
@@ -43,7 +43,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
value = HDMI_READ(HDMI_CEC_CNTRL_1);
/* Set the logical address to Unregistered */
value |= VC4_HDMI_CEC_ADDR_MASK;
-@@ -1812,12 +1812,32 @@ static int vc4_hdmi_cec_init(struct vc4_
+@@ -1806,12 +1806,32 @@ static int vc4_hdmi_cec_init(struct vc4_
vc4_hdmi_cec_update_clk_div(vc4_hdmi);
@@ -82,7 +82,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
ret = cec_register_adapter(vc4_hdmi->cec_adap, &pdev->dev);
if (ret < 0)
-@@ -2294,6 +2314,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2286,6 +2306,7 @@ static const struct vc4_hdmi_variant bcm
PHY_LANE_CK,
},
.unsupported_odd_h_timings = true,
@@ -90,7 +90,7 @@ Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
.init_resources = vc5_hdmi_init_resources,
.csc_setup = vc5_hdmi_csc_setup,
-@@ -2320,6 +2341,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2312,6 +2333,7 @@ static const struct vc4_hdmi_variant bcm
PHY_LANE_2,
},
.unsupported_odd_h_timings = true,
diff --git a/target/linux/bcm27xx/patches-5.10/950-0460-drm-vc4-hdmi-Don-t-register-the-CEC-adapter-if-there.patch b/target/linux/bcm27xx/patches-5.10/950-0460-drm-vc4-hdmi-Don-t-register-the-CEC-adapter-if-there.patch
index 8b82f7719d..2ead4e3667 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0460-drm-vc4-hdmi-Don-t-register-the-CEC-adapter-if-there.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0460-drm-vc4-hdmi-Don-t-register-the-CEC-adapter-if-there.patch
@@ -19,7 +19,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
-@@ -1791,9 +1791,15 @@ static int vc4_hdmi_cec_init(struct vc4_
+@@ -1785,9 +1785,15 @@ static int vc4_hdmi_cec_init(struct vc4_
{
struct cec_connector_info conn_info;
struct platform_device *pdev = vc4_hdmi->pdev;
diff --git a/target/linux/bcm27xx/patches-5.10/950-0475-drm-vc4-Add-HDR-metadata-property-to-the-VC5-HDMI-co.patch b/target/linux/bcm27xx/patches-5.10/950-0475-drm-vc4-Add-HDR-metadata-property-to-the-VC5-HDMI-co.patch
index a70c3bda1e..01bf5901aa 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0475-drm-vc4-Add-HDR-metadata-property-to-the-VC5-HDMI-co.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0475-drm-vc4-Add-HDR-metadata-property-to-the-VC5-HDMI-co.patch
@@ -61,7 +61,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
}
static void vc4_hdmi_encoder_post_crtc_disable(struct drm_encoder *encoder,
-@@ -2304,6 +2329,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2296,6 +2321,7 @@ static const struct vc4_hdmi_variant bcm
.phy_rng_enable = vc4_hdmi_phy_rng_enable,
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
.channel_map = vc4_hdmi_channel_map,
@@ -69,7 +69,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
};
static const struct vc4_hdmi_variant bcm2711_hdmi0_variant = {
-@@ -2331,6 +2357,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2323,6 +2349,7 @@ static const struct vc4_hdmi_variant bcm
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
.channel_map = vc5_hdmi_channel_map,
@@ -77,7 +77,7 @@ Signed-off-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
};
static const struct vc4_hdmi_variant bcm2711_hdmi1_variant = {
-@@ -2358,6 +2385,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2350,6 +2377,7 @@ static const struct vc4_hdmi_variant bcm
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
.channel_map = vc5_hdmi_channel_map,
diff --git a/target/linux/bcm27xx/patches-5.10/950-0576-drm-vc4-hdmi-Raise-the-maximum-clock-rate.patch b/target/linux/bcm27xx/patches-5.10/950-0576-drm-vc4-hdmi-Raise-the-maximum-clock-rate.patch
index 657fc46ff1..d1deaa8841 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0576-drm-vc4-hdmi-Raise-the-maximum-clock-rate.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0576-drm-vc4-hdmi-Raise-the-maximum-clock-rate.patch
@@ -19,7 +19,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
-@@ -2440,7 +2440,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2432,7 +2432,7 @@ static const struct vc4_hdmi_variant bcm
.encoder_type = VC4_ENCODER_TYPE_HDMI0,
.debugfs_name = "hdmi0_regs",
.card_name = "vc4-hdmi-0",
diff --git a/target/linux/bcm27xx/patches-5.10/950-0601-drm-vc4-hdmi-Rely-on-interrupts-to-handle-hotplug.patch b/target/linux/bcm27xx/patches-5.10/950-0601-drm-vc4-hdmi-Rely-on-interrupts-to-handle-hotplug.patch
index a15af69948..a193b4d6f2 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0601-drm-vc4-hdmi-Rely-on-interrupts-to-handle-hotplug.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0601-drm-vc4-hdmi-Rely-on-interrupts-to-handle-hotplug.patch
@@ -65,7 +65,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
#ifdef CONFIG_DRM_VC4_HDMI_CEC
static irqreturn_t vc4_cec_irq_handler_rx_thread(int irq, void *priv)
{
-@@ -2325,6 +2365,10 @@ static int vc4_hdmi_bind(struct device *
+@@ -2317,6 +2357,10 @@ static int vc4_hdmi_bind(struct device *
if (ret)
goto err_destroy_encoder;
diff --git a/target/linux/bcm27xx/patches-5.10/950-0602-drm-vc4-hdmi-Add-a-workqueue-to-set-scrambling.patch b/target/linux/bcm27xx/patches-5.10/950-0602-drm-vc4-hdmi-Add-a-workqueue-to-set-scrambling.patch
index dbc29f6049..b937aa97fc 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0602-drm-vc4-hdmi-Add-a-workqueue-to-set-scrambling.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0602-drm-vc4-hdmi-Add-a-workqueue-to-set-scrambling.patch
@@ -70,7 +70,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
static void vc4_hdmi_encoder_post_crtc_disable(struct drm_encoder *encoder,
struct drm_atomic_state *state)
{
-@@ -2283,6 +2307,7 @@ static int vc4_hdmi_bind(struct device *
+@@ -2275,6 +2299,7 @@ static int vc4_hdmi_bind(struct device *
vc4_hdmi = devm_kzalloc(dev, sizeof(*vc4_hdmi), GFP_KERNEL);
if (!vc4_hdmi)
return -ENOMEM;
diff --git a/target/linux/bcm27xx/patches-5.10/950-0639-cgroup-Disable-cgroup-memory-by-default.patch b/target/linux/bcm27xx/patches-5.10/950-0639-cgroup-Disable-cgroup-memory-by-default.patch
index aa3aeeaa42..2fa648a233 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0639-cgroup-Disable-cgroup-memory-by-default.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0639-cgroup-Disable-cgroup-memory-by-default.patch
@@ -17,7 +17,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
--- a/kernel/cgroup/cgroup.c
+++ b/kernel/cgroup/cgroup.c
-@@ -5690,6 +5690,9 @@ int __init cgroup_init_early(void)
+@@ -5695,6 +5695,9 @@ int __init cgroup_init_early(void)
return 0;
}
@@ -27,7 +27,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
/**
* cgroup_init - cgroup initialization
*
-@@ -5728,6 +5731,12 @@ int __init cgroup_init(void)
+@@ -5733,6 +5736,12 @@ int __init cgroup_init(void)
mutex_unlock(&cgroup_mutex);
@@ -40,7 +40,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
for_each_subsys(ss, ssid) {
if (ss->early_init) {
struct cgroup_subsys_state *css =
-@@ -6265,6 +6274,10 @@ static int __init cgroup_disable(char *s
+@@ -6270,6 +6279,10 @@ static int __init cgroup_disable(char *s
strcmp(token, ss->legacy_name))
continue;
@@ -51,7 +51,7 @@ Signed-off-by: Phil Elwell <phil@raspberrypi.org>
static_branch_disable(cgroup_subsys_enabled_key[i]);
pr_info("Disabling %s control group subsystem\n",
ss->name);
-@@ -6274,6 +6287,31 @@ static int __init cgroup_disable(char *s
+@@ -6279,6 +6292,31 @@ static int __init cgroup_disable(char *s
}
__setup("cgroup_disable=", cgroup_disable);
diff --git a/target/linux/bcm27xx/patches-5.10/950-0654-drm-vc4-hdmi-Use-a-fixed-rate-for-the-HSM-clock-on-B.patch b/target/linux/bcm27xx/patches-5.10/950-0654-drm-vc4-hdmi-Use-a-fixed-rate-for-the-HSM-clock-on-B.patch
index e08ad7d320..e8f206af0c 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0654-drm-vc4-hdmi-Use-a-fixed-rate-for-the-HSM-clock-on-B.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0654-drm-vc4-hdmi-Use-a-fixed-rate-for-the-HSM-clock-on-B.patch
@@ -102,7 +102,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
static u32 vc4_hdmi_channel_map(struct vc4_hdmi *vc4_hdmi, u32 channel_mask)
{
int i;
-@@ -2344,6 +2361,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2336,6 +2353,7 @@ static const struct vc4_hdmi_variant bcm
.phy_disable = vc4_hdmi_phy_disable,
.phy_rng_enable = vc4_hdmi_phy_rng_enable,
.phy_rng_disable = vc4_hdmi_phy_rng_disable,
@@ -110,7 +110,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
.channel_map = vc4_hdmi_channel_map,
.supports_hdr = false,
};
-@@ -2372,6 +2390,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2364,6 +2382,7 @@ static const struct vc4_hdmi_variant bcm
.phy_disable = vc5_hdmi_phy_disable,
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
@@ -118,7 +118,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
.channel_map = vc5_hdmi_channel_map,
.supports_hdr = true,
};
-@@ -2400,6 +2419,7 @@ static const struct vc4_hdmi_variant bcm
+@@ -2392,6 +2411,7 @@ static const struct vc4_hdmi_variant bcm
.phy_disable = vc5_hdmi_phy_disable,
.phy_rng_enable = vc5_hdmi_phy_rng_enable,
.phy_rng_disable = vc5_hdmi_phy_rng_disable,
diff --git a/target/linux/bcm27xx/patches-5.10/950-0668-drm-vc4-hdmi-Split-the-CEC-disable-enable-functions-.patch b/target/linux/bcm27xx/patches-5.10/950-0668-drm-vc4-hdmi-Split-the-CEC-disable-enable-functions-.patch
index 2c12f57d2a..0c01a4eded 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0668-drm-vc4-hdmi-Split-the-CEC-disable-enable-functions-.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0668-drm-vc4-hdmi-Split-the-CEC-disable-enable-functions-.patch
@@ -24,7 +24,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
{
struct vc4_hdmi *vc4_hdmi = cec_get_drvdata(adap);
/* clock period in microseconds */
-@@ -1775,38 +1775,53 @@ static int vc4_hdmi_cec_adap_enable(stru
+@@ -1769,38 +1769,53 @@ static int vc4_hdmi_cec_adap_enable(stru
val |= ((4700 / usecs) << VC4_HDMI_CEC_CNT_TO_4700_US_SHIFT) |
((4500 / usecs) << VC4_HDMI_CEC_CNT_TO_4500_US_SHIFT);
diff --git a/target/linux/bcm27xx/patches-5.10/950-0675-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-CEC-int.patch b/target/linux/bcm27xx/patches-5.10/950-0675-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-CEC-int.patch
index a4b9df85dc..4c3f170067 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0675-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-CEC-int.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0675-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-CEC-int.patch
@@ -25,57 +25,43 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
-@@ -1902,40 +1902,49 @@ static int vc4_hdmi_cec_init(struct vc4_
+@@ -1896,25 +1896,23 @@ static int vc4_hdmi_cec_init(struct vc4_
vc4_hdmi_cec_update_clk_div(vc4_hdmi);
if (vc4_hdmi->variant->external_irq_controller) {
- ret = devm_request_threaded_irq(&pdev->dev,
- platform_get_irq_byname(pdev, "cec-rx"),
-- vc4_cec_irq_handler_rx_bare,
-- vc4_cec_irq_handler_rx_thread, 0,
-- "vc4 hdmi cec rx", vc4_hdmi);
+ ret = request_threaded_irq(platform_get_irq_byname(pdev, "cec-rx"),
-+ vc4_cec_irq_handler_rx_bare,
-+ vc4_cec_irq_handler_rx_thread, 0,
-+ "vc4 hdmi cec rx", vc4_hdmi);
+ vc4_cec_irq_handler_rx_bare,
+ vc4_cec_irq_handler_rx_thread, 0,
+ "vc4 hdmi cec rx", vc4_hdmi);
if (ret)
goto err_delete_cec_adap;
- ret = devm_request_threaded_irq(&pdev->dev,
- platform_get_irq_byname(pdev, "cec-tx"),
-- vc4_cec_irq_handler_tx_bare,
-- vc4_cec_irq_handler_tx_thread, 0,
-- "vc4 hdmi cec tx", vc4_hdmi);
+ ret = request_threaded_irq(platform_get_irq_byname(pdev, "cec-tx"),
-+ vc4_cec_irq_handler_tx_bare,
-+ vc4_cec_irq_handler_tx_thread, 0,
-+ "vc4 hdmi cec tx", vc4_hdmi);
+ vc4_cec_irq_handler_tx_bare,
+ vc4_cec_irq_handler_tx_thread, 0,
+ "vc4 hdmi cec tx", vc4_hdmi);
if (ret)
- goto err_delete_cec_adap;
+ goto err_remove_cec_rx_handler;
-+
} else {
HDMI_WRITE(HDMI_CEC_CPU_MASK_SET, 0xffffffff);
- ret = devm_request_threaded_irq(&pdev->dev, platform_get_irq(pdev, 0),
-- vc4_cec_irq_handler,
-- vc4_cec_irq_handler_thread, 0,
-- "vc4 hdmi cec", vc4_hdmi);
+ ret = request_threaded_irq(platform_get_irq(pdev, 0),
-+ vc4_cec_irq_handler,
-+ vc4_cec_irq_handler_thread, 0,
-+ "vc4 hdmi cec", vc4_hdmi);
- if (ret)
- goto err_delete_cec_adap;
- }
+ vc4_cec_irq_handler,
+ vc4_cec_irq_handler_thread, 0,
+ "vc4 hdmi cec", vc4_hdmi);
+@@ -1924,10 +1922,20 @@ static int vc4_hdmi_cec_init(struct vc4_
ret = cec_register_adapter(vc4_hdmi->cec_adap, &pdev->dev);
if (ret < 0)
- goto err_delete_cec_adap;
+ goto err_remove_handlers;
- pm_runtime_put(&vc4_hdmi->pdev->dev);
-
return 0;
+err_remove_handlers:
@@ -91,7 +77,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
err_delete_cec_adap:
cec_delete_adapter(vc4_hdmi->cec_adap);
-@@ -1944,6 +1953,15 @@ err_delete_cec_adap:
+@@ -1936,6 +1944,15 @@ err_delete_cec_adap:
static void vc4_hdmi_cec_exit(struct vc4_hdmi *vc4_hdmi)
{
diff --git a/target/linux/bcm27xx/patches-5.10/950-0676-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-hotplug.patch b/target/linux/bcm27xx/patches-5.10/950-0676-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-hotplug.patch
index 062804814c..b5e43f76b2 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0676-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-hotplug.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0676-drm-vc4-hdmi-Drop-devm-interrupt-handler-for-hotplug.patch
@@ -83,7 +83,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
#ifdef CONFIG_DRM_VC4_HDMI_CEC
static irqreturn_t vc4_cec_irq_handler_rx_thread(int irq, void *priv)
{
-@@ -2314,7 +2326,7 @@ static int vc4_hdmi_bind(struct device *
+@@ -2305,7 +2317,7 @@ static int vc4_hdmi_bind(struct device *
ret = vc4_hdmi_cec_init(vc4_hdmi);
if (ret)
@@ -92,7 +92,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
ret = vc4_hdmi_audio_init(vc4_hdmi);
if (ret)
-@@ -2328,6 +2340,8 @@ static int vc4_hdmi_bind(struct device *
+@@ -2319,6 +2331,8 @@ static int vc4_hdmi_bind(struct device *
err_free_cec:
vc4_hdmi_cec_exit(vc4_hdmi);
@@ -101,7 +101,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
err_destroy_conn:
vc4_hdmi_connector_destroy(&vc4_hdmi->connector);
err_destroy_encoder:
-@@ -2369,6 +2383,7 @@ static void vc4_hdmi_unbind(struct devic
+@@ -2360,6 +2374,7 @@ static void vc4_hdmi_unbind(struct devic
kfree(vc4_hdmi->hd_regset.regs);
vc4_hdmi_cec_exit(vc4_hdmi);
diff --git a/target/linux/bcm27xx/patches-5.10/950-0717-drm-vc4-hdmi-Make-sure-the-controller-is-powered-up-.patch b/target/linux/bcm27xx/patches-5.10/950-0717-drm-vc4-hdmi-Make-sure-the-controller-is-powered-up-.patch
index f2424cbfac..8f5b96541e 100644
--- a/target/linux/bcm27xx/patches-5.10/950-0717-drm-vc4-hdmi-Make-sure-the-controller-is-powered-up-.patch
+++ b/target/linux/bcm27xx/patches-5.10/950-0717-drm-vc4-hdmi-Make-sure-the-controller-is-powered-up-.patch
@@ -18,7 +18,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
--- a/drivers/gpu/drm/vc4/vc4_hdmi.c
+++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
-@@ -2304,6 +2304,18 @@ static int vc4_hdmi_bind(struct device *
+@@ -2295,6 +2295,18 @@ static int vc4_hdmi_bind(struct device *
if (ret)
goto err_put_ddc;
@@ -37,7 +37,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
if (vc4_hdmi->variant->reset)
vc4_hdmi->variant->reset(vc4_hdmi);
-@@ -2315,8 +2327,6 @@ static int vc4_hdmi_bind(struct device *
+@@ -2306,8 +2318,6 @@ static int vc4_hdmi_bind(struct device *
clk_prepare_enable(vc4_hdmi->pixel_bvb_clock);
}
@@ -46,7 +46,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
drm_simple_encoder_init(drm, encoder, DRM_MODE_ENCODER_TMDS);
drm_encoder_helper_add(encoder, &vc4_hdmi_encoder_helper_funcs);
-@@ -2340,6 +2350,8 @@ static int vc4_hdmi_bind(struct device *
+@@ -2331,6 +2341,8 @@ static int vc4_hdmi_bind(struct device *
vc4_hdmi_debugfs_regs,
vc4_hdmi);
@@ -55,7 +55,7 @@ Signed-off-by: Maxime Ripard <maxime@cerno.tech>
return 0;
err_free_cec:
-@@ -2350,6 +2362,7 @@ err_destroy_conn:
+@@ -2341,6 +2353,7 @@ err_destroy_conn:
vc4_hdmi_connector_destroy(&vc4_hdmi->connector);
err_destroy_encoder:
drm_encoder_cleanup(encoder);