Re: [PATCH 06/11] firmware: qcom-shm-bridge: new driver

From: Krzysztof Kozlowski
Date: Wed Aug 30 2023 - 14:34:50 EST


On 30/08/2023 15:09, Bartosz Golaszewski wrote:

>>>>> +
>>>>> + return gen_pool_virt_to_phys(pool->genpool, (unsigned long)vaddr);
>>>>> +}
>>>>> +EXPORT_SYMBOL_GPL(qcom_shm_bridge_to_phys_addr);
>>>>> +
>>>>> +static int qcom_shm_bridge_probe(struct platform_device *pdev)
>>>>> +{
>>>>> + struct qcom_shm_bridge_pool *default_pool;
>>>>> + struct device *dev = &pdev->dev;
>>>>> + int ret;
>>>>> +
>>>>> + /*
>>>>> + * We need to wait for the SCM device to be created and bound to the
>>>>> + * SCM driver.
>>>>> + */
>>>>> + if (!qcom_scm_is_available())
>>>>> + return -EPROBE_DEFER;
>>>>
>>>> I think we miss here (and in all other drivers) device links to qcm.
>>>>
>>>
>>> Well, SCM, once probed, cannot be unbound. What would device links
>>> guarantee above that?
>>
>> Runtime PM, probe ordering (dependencies) detection.
>>
>
> Shouldn't we cross that bridge when we get there? SCM has no support
> for runtime PM. Probe ordering is quite well handled with a simple
> probe deferral. This is also not a parent-child relationship. SHM
> Bridge calls into the trustzone using SCM, but SCM is also a user of
> SHM Bridge.

OK

Best regards,
Krzysztof