Re: [PATCH 4/7] stih_cec: use new cec_notifier_find_hdmi_dev helper

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Le lun. 8 avr. 2019 à 13:04, Hans Verkuil <hverkuil-cisco@xxxxxxxxx> a écrit :
>
> The STI CEC driver increased the HDMI device refcount when
> it shouldn't. Use the new helper function to ensure that that
> doesn't happen and to simplify the driver code.
>
> Signed-off-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx>

Acked-by: Benjamin Gaignard <benjamin.gaignard@xxxxxxxxxx>

> ---
>  drivers/media/platform/sti/cec/stih-cec.c | 21 +++++++--------------
>  1 file changed, 7 insertions(+), 14 deletions(-)
>
> diff --git a/drivers/media/platform/sti/cec/stih-cec.c b/drivers/media/platform/sti/cec/stih-cec.c
> index d34099f75990..678d7cb38637 100644
> --- a/drivers/media/platform/sti/cec/stih-cec.c
> +++ b/drivers/media/platform/sti/cec/stih-cec.c
> @@ -301,26 +301,19 @@ static int stih_cec_probe(struct platform_device *pdev)
>         struct device *dev = &pdev->dev;
>         struct resource *res;
>         struct stih_cec *cec;
> -       struct device_node *np;
> -       struct platform_device *hdmi_dev;
> +       struct device *hdmi_dev;
>         int ret;
>
> +       hdmi_dev = cec_notifier_find_hdmi_dev(dev);
> +
> +       if (IS_ERR(hdmi_dev))
> +               return PTR_ERR(hdmi_dev);
> +
>         cec = devm_kzalloc(dev, sizeof(*cec), GFP_KERNEL);
>         if (!cec)
>                 return -ENOMEM;
>
> -       np = of_parse_phandle(pdev->dev.of_node, "hdmi-phandle", 0);
> -
> -       if (!np) {
> -               dev_err(&pdev->dev, "Failed to find hdmi node in device tree\n");
> -               return -ENODEV;
> -       }
> -
> -       hdmi_dev = of_find_device_by_node(np);
> -       if (!hdmi_dev)
> -               return -EPROBE_DEFER;
> -
> -       cec->notifier = cec_notifier_get(&hdmi_dev->dev);
> +       cec->notifier = cec_notifier_get(hdmi_dev);
>         if (!cec->notifier)
>                 return -ENOMEM;
>
> --
> 2.20.1
>




[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux