[media] s5p_cec: set the CEC_CAP_NEEDS_HPD flag if needed
authorHans Verkuil <hans.verkuil@cisco.com>
Wed, 7 Jun 2017 14:46:15 +0000 (11:46 -0300)
committerMauro Carvalho Chehab <mchehab@s-opensource.com>
Tue, 20 Jun 2017 09:56:31 +0000 (06:56 -0300)
Use the needs-hpd DT property to determine if the CEC_CAP_NEEDS_HPD
should be set.

Signed-off-by: Hans Verkuil <hans.verkuil@cisco.com>
Acked-by: Sylwester Nawrocki <s.nawrocki@samsung.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@s-opensource.com>
drivers/media/platform/s5p-cec/s5p_cec.c

index 65a223e578ed8b22a84c4bd129d276ea160c7d08..8e06071a79778dc94148a9ce2ec7ae5f47e76ba2 100644 (file)
@@ -173,6 +173,7 @@ static int s5p_cec_probe(struct platform_device *pdev)
        struct platform_device *hdmi_dev;
        struct resource *res;
        struct s5p_cec_dev *cec;
+       bool needs_hpd = of_property_read_bool(pdev->dev.of_node, "needs-hpd");
        int ret;
 
        np = of_parse_phandle(pdev->dev.of_node, "hdmi-phandle", 0);
@@ -221,7 +222,8 @@ static int s5p_cec_probe(struct platform_device *pdev)
        cec->adap = cec_allocate_adapter(&s5p_cec_adap_ops, cec,
                CEC_NAME,
                CEC_CAP_LOG_ADDRS | CEC_CAP_TRANSMIT |
-               CEC_CAP_PASSTHROUGH | CEC_CAP_RC, 1);
+               CEC_CAP_PASSTHROUGH | CEC_CAP_RC |
+               (needs_hpd ? CEC_CAP_NEEDS_HPD : 0), 1);
        ret = PTR_ERR_OR_ZERO(cec->adap);
        if (ret)
                return ret;