2ead4e36671157b53496e8aa9604ca9ba44477d5
[openwrt/staging/linusw.git] /
1 From 8fb908fe3f80d6bbc0a7f5e7fe14ababe7f87f83 Mon Sep 17 00:00:00 2001
2 From: Maxime Ripard <maxime@cerno.tech>
3 Date: Mon, 11 Jan 2021 15:23:06 +0100
4 Subject: [PATCH] drm/vc4: hdmi: Don't register the CEC adapter if
5 there's no interrupts
6
7 We introduced the BCM2711 support to the vc4 HDMI controller with 5.10,
8 but this was lacking any of the interrupts of the CEC controller so we
9 have to deal with the backward compatibility.
10
11 Do so by simply ignoring the CEC setup if the DT doesn't have the
12 interrupts property.
13
14 Reviewed-by: Dave Stevenson <dave.stevenson@raspberrypi.com>
15 Signed-off-by: Maxime Ripard <maxime@cerno.tech>
16 ---
17 drivers/gpu/drm/vc4/vc4_hdmi.c | 6 ++++++
18 1 file changed, 6 insertions(+)
19
20 --- a/drivers/gpu/drm/vc4/vc4_hdmi.c
21 +++ b/drivers/gpu/drm/vc4/vc4_hdmi.c
22 @@ -1785,9 +1785,15 @@ static int vc4_hdmi_cec_init(struct vc4_
23 {
24 struct cec_connector_info conn_info;
25 struct platform_device *pdev = vc4_hdmi->pdev;
26 + struct device *dev = &pdev->dev;
27 u32 value;
28 int ret;
29
30 + if (!of_find_property(dev->of_node, "interrupts", NULL)) {
31 + dev_warn(dev, "'interrupts' DT property is missing, no CEC\n");
32 + return 0;
33 + }
34 +
35 vc4_hdmi->cec_adap = cec_allocate_adapter(&vc4_hdmi_cec_adap_ops,
36 vc4_hdmi, "vc4",
37 CEC_CAP_DEFAULTS |