Re: [PATCH] remoteproc: qcom: Introduce Hexagon V5 based WCSS driver

From: Sricharan R
Date: Wed Jun 06 2018 - 05:51:32 EST


Hi Vinod,

On 6/6/2018 12:19 PM, Vinod wrote:
> Hi Sricharan,
>
> On 06-06-18, 12:09, Sricharan R wrote:
>
>>>>>> +config QCOM_Q6V5_WCSS
>>>>>> + tristate "Qualcomm Hexagon based WCSS Peripheral Image Loader"
>>>>>> + depends on OF && ARCH_QCOM
>>>>>> + depends on QCOM_SMEM
>>>>>> + depends on RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)
>>>>>> + depends on RPMSG_QCOM_GLINK_SMEM || RPMSG_QCOM_GLINK_SMEM=n
>>>>>
>>>>> Is there a reason why it depends on RPMSG_QCOM_GLINK_SMEM=n? What would
>>>>> happen if distro wants both this and RPMSG_QCOM_GLINK_SMEM
>>>>>
>>>> RPMSG_QCOM_GLINK_SMEM=n should be for the COMPILE_TEST. Probably that
>>>
>>> why would that be a limitation? I am more worried about
>>> RPMSG_QCOM_GLINK_SMEM=n being the condition here. In new drivers we
>>> should not typically have dependency on some symbol being not there
>>
>> Without that, if RPMSG_QCOM_GLINK_SMEM=m is compiled as a module, then
>> it would break the build.
>
> Okay I do not know the details, but that doesn't sound correct to me.
> Breaking build sounds a bit extreme to me. Can you give details on this
> part..
>

Having, just, depends on RPMSG_QCOM_GLINK_SMEM || COMPILE_TEST,
is going to break when RPMSG_QCOM_GLINK_SMEM=m and COMPILE_TEST=y.
Hence the COMPILE_TEST && RPMSG_QCOM_GLINK_SMEM=n.

Having said that, COMPILE_TEST is getting tested for RPMSG_QCOM_SMD=n in
the previous line. So that's the reason for not having it in below line for
RPMSG_QCOM_GLINK_SMEM.

>>>> means that it should be corrected here and for ADSP, Q6V5_PIL as well.
>>>> Bjorn, is that correct ?, should it be, below ?
>>>>
>>>> depends on (RPMSG_QCOM_SMD || (COMPILE_TEST && RPMSG_QCOM_SMD=n)) || (RPMSG_QCOM_GLINK_SMEM || (COMPILE_TEST && RPMSG_QCOM_GLINK_SMEM=n))
>>>
>>> that doesnt really sound good :(
>>
>> Hmm, but i was thinking it should functionally depend on either SMD or GLINK and not both.
>
> If you are depedent upon a symbol provided by a module you should say
> depends on. If a machine is not supposed to have both SMD or GLINK then
> the driver will not get probed.
>

This is where, i was thinking, it should be functional if either of SMD or GLINK
is there, but should not require both.

Regards,
Sricharan

--
"QUALCOMM INDIA, on behalf of Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, hosted by The Linux Foundation

---
This email has been checked for viruses by Avast antivirus software.
https://www.avast.com/antivirus