From 584d4bf1d3c2265a810e1494eb5c8ef0a72ee934 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20Fern=C3=A1ndez=20Rojas?= Date: Wed, 27 May 2020 15:12:04 +0200 Subject: bcm27xx: update patches from RPi foundation MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit bcm2708: boot tested on RPi B+ v1.2 bcm2709: boot tested on RPi 3B v1.2 bcm2710: boot tested on RPi 3B v1.2 bcm2711: boot tested on RPi 4B v1.1 4G Signed-off-by: Álvaro Fernández Rojas --- ...-drm-vc4-hdmi-Use-local-vc4_hdmi-directly.patch | 45 ++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 target/linux/bcm27xx/patches-5.4/950-0577-drm-vc4-hdmi-Use-local-vc4_hdmi-directly.patch (limited to 'target/linux/bcm27xx/patches-5.4/950-0577-drm-vc4-hdmi-Use-local-vc4_hdmi-directly.patch') diff --git a/target/linux/bcm27xx/patches-5.4/950-0577-drm-vc4-hdmi-Use-local-vc4_hdmi-directly.patch b/target/linux/bcm27xx/patches-5.4/950-0577-drm-vc4-hdmi-Use-local-vc4_hdmi-directly.patch new file mode 100644 index 0000000000..9b60fbb72b --- /dev/null +++ b/target/linux/bcm27xx/patches-5.4/950-0577-drm-vc4-hdmi-Use-local-vc4_hdmi-directly.patch @@ -0,0 +1,45 @@ +From 985efd0f9da3d2b60e34d10efee969e4dfd85a12 Mon Sep 17 00:00:00 2001 +From: Maxime Ripard +Date: Mon, 6 Jan 2020 18:44:36 +0100 +Subject: [PATCH] drm/vc4: hdmi: Use local vc4_hdmi directly + +The function vc4_hdmi_connector_detect access its vc4_hdmi struct by +dereferencing the pointer in the structure vc4_dev. This will cause some +issues when we will have multiple HDMI controllers, so let's just use the +local variable for now instead of dereferencing that pointer all the time, +and we'll fix the local variable later. + +Signed-off-by: Maxime Ripard +--- + drivers/gpu/drm/vc4/vc4_hdmi.c | 12 ++++++------ + 1 file changed, 6 insertions(+), 6 deletions(-) + +--- a/drivers/gpu/drm/vc4/vc4_hdmi.c ++++ b/drivers/gpu/drm/vc4/vc4_hdmi.c +@@ -124,20 +124,20 @@ vc4_hdmi_connector_detect(struct drm_con + struct vc4_dev *vc4 = to_vc4_dev(dev); + struct vc4_hdmi *vc4_hdmi = vc4->hdmi; + +- if (vc4->hdmi->hpd_gpio) { +- if (gpio_get_value_cansleep(vc4->hdmi->hpd_gpio) ^ +- vc4->hdmi->hpd_active_low) ++ if (vc4_hdmi->hpd_gpio) { ++ if (gpio_get_value_cansleep(vc4_hdmi->hpd_gpio) ^ ++ vc4_hdmi->hpd_active_low) + return connector_status_connected; +- cec_phys_addr_invalidate(vc4->hdmi->cec_adap); ++ cec_phys_addr_invalidate(vc4_hdmi->cec_adap); + return connector_status_disconnected; + } + +- if (drm_probe_ddc(vc4->hdmi->ddc)) ++ if (drm_probe_ddc(vc4_hdmi->ddc)) + return connector_status_connected; + + if (HDMI_READ(VC4_HDMI_HOTPLUG) & VC4_HDMI_HOTPLUG_CONNECTED) + return connector_status_connected; +- cec_phys_addr_invalidate(vc4->hdmi->cec_adap); ++ cec_phys_addr_invalidate(vc4_hdmi->cec_adap); + return connector_status_disconnected; + } + -- cgit v1.2.3