[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <eea14133-2152-37bb-e2ff-fcc7ed4c47f5@quicinc.com>
Date: Fri, 25 Oct 2024 12:33:41 +0530
From: Dikshita Agarwal <quic_dikshita@...cinc.com>
To: Dmitry Baryshkov <dmitry.baryshkov@...aro.org>
CC: Jianhua Lu <lujianhua000@...il.com>,
Vikash Garodia
<quic_vgarodia@...cinc.com>,
Abhinav Kumar <quic_abhinavk@...cinc.com>,
"Mauro Carvalho Chehab" <mchehab@...nel.org>,
Rob Herring <robh@...nel.org>,
Krzysztof Kozlowski <krzk+dt@...nel.org>,
Conor Dooley <conor+dt@...nel.org>,
Philipp Zabel <p.zabel@...gutronix.de>,
Hans Verkuil <hverkuil@...all.nl>,
Sebastian Fricke <sebastian.fricke@...labora.com>,
<linux-arm-msm@...r.kernel.org>, <linux-media@...r.kernel.org>,
<devicetree@...r.kernel.org>, <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH v4 27/28] media: iris: enable video driver probe of SM8250
SoC
Hi Dmitry,
On 10/15/2024 5:56 PM, Dmitry Baryshkov wrote:
> On Tue, 15 Oct 2024 at 12:22, Dikshita Agarwal
> <quic_dikshita@...cinc.com> wrote:
>>
>>
>>
>> On 10/14/2024 7:38 PM, Dmitry Baryshkov wrote:
>>> On Mon, Oct 14, 2024 at 10:00:21PM +0800, Jianhua Lu wrote:
>>>> On Mon, Oct 14, 2024 at 02:37:48PM +0530, Dikshita Agarwal wrote:
>>>>> Initialize the platform data and enable video driver
>>>>> probe of SM8250 SoC.
>>>>>
>>>>> Signed-off-by: Dikshita Agarwal <quic_dikshita@...cinc.com>
>>>>> ---
>>>> [..]
>>>>> diff --git a/drivers/media/platform/qcom/iris/iris_probe.c b/drivers/media/platform/qcom/iris/iris_probe.c
>>>>> index 86ef2e5c488e..a2aadd48926f 100644
>>>>> --- a/drivers/media/platform/qcom/iris/iris_probe.c
>>>>> +++ b/drivers/media/platform/qcom/iris/iris_probe.c
>>>>> @@ -325,6 +325,10 @@ static const struct of_device_id iris_dt_match[] = {
>>>>> .compatible = "qcom,sm8550-iris",
>>>>> .data = &sm8550_data,
>>>>> },
>>>>> + {
>>>>> + .compatible = "qcom,sm8250-venus",
>>>>> + .data = &sm8250_data,
>>>>> + },
>>>>> { },
>>>>> };
>>>>> MODULE_DEVICE_TABLE(of, iris_dt_match);
>>>>
>>>> qcom-venus driver has already supported sm8250 soc, I think you should add
>>>> an extra patch to drop sm8250 releated code from qcom-venus driver if you
>>>> tend to add support for sm8250 in qcom-iris driver.
>>>
>>> Iris driver did not feature parity with the venus driver, so it is
>>> expected that two drivers will exist side by side for some time.
>>> Nevertheless ideally we should have a way to specify which driver should
>>> be used for sm8250 (and other platforms being migrated).
>>>
>> Agree, we should have a way to specify this. Any suggestions to achieve
>> this are welcomed.
>
> See how this is handled for the drm/msm/mdp5 vs dpu drivers.
>
We are also thinking to handle this as combination of compatible + module
param similar to display driver, like below:
static bool prefer_venus = true;
MODULE_PARM_DESC(prefer_venus, "Select whether venus or iris driver should
be preferred");
module_param(prefer_venus, bool, 0444);
/* list all platforms supported by only iris driver */
static const char *const iris_only_platforms[] = {
"qcom,sm8550-iris",
NULL,
};
/* list all platforms supported by both venus and iris drivers */
static const char *const venus_to_iris_migration[] = {
"qcom,sm8250-venus",
NULL,
};
static bool video_drv_should_bind(struct device *dev, bool iris_driver)
{
if (of_device_compatible_match(dev->of_node, iris_only_platforms))
return iris_driver;
/* If it is not in the migration list, use venus */
if (!of_device_compatible_match(dev->of_node, venus_to_iris_migration))
return !iris_driver;
return prefer_venus ? !iris_driver : iris_driver;
}
And invoke "video_drv_should_bind" API in iris driver probe.
Please see if this approach looks good to you.
Thanks,
Dikshita
Powered by blists - more mailing lists