Re: [PATCH v5 2/4] interconnect: qcom: sc7280: enable QoS configuration

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

 




On 7/2/2024 5:02 AM, Georgi Djakov wrote:
> On 1.07.24 19:42, Bjorn Andersson wrote:
>> On Fri, Jun 07, 2024 at 11:09:25PM GMT, Odelu Kukatla wrote:
>>> Enable QoS configuration for master ports with predefined values
>>> for priority and urgency forawrding.
>>>
>>
>> This patch causes QCS6490 RB3Gen2 to hit a bus timeout and crash during
>> boot, unless the associated DeviceTree change (adding clocks) is
>> present.
>>
>> The two patches are reaching linux-next, and hence mainline, through
>> different code paths we now have periods where rb3gen2 is not bootable.
>> But more importantly, devices with current .dtbs installed can not boot
>> the new kernel.
>>
>>
>> It is not acceptable to introduce non-backwards compatible changes in
>> drivers (unless there's extraordinary reasons to do so).
>>
> 
> Thanks for the report, Bjorn! The intent of the patches is to keep it
> backwards compatible. I think that the patch below should fix it.
> I'll try to validate it and get it merged.
> 
> BR,
> Georgi
> 

Thanks Bjorn and Georgi!
I will send a patch to address the boot up issue on old devices and keep it backwards compatible.

> -->8--
> diff --git a/drivers/interconnect/qcom/icc-rpmh.c b/drivers/interconnect/qcom/icc-rpmh.c
> index 93047defd5e2..487e562dbd22 100644
> --- a/drivers/interconnect/qcom/icc-rpmh.c
> +++ b/drivers/interconnect/qcom/icc-rpmh.c
> @@ -311,7 +311,7 @@ int qcom_icc_rpmh_probe(struct platform_device *pdev)
>   		}
> 
>   		qp->num_clks = devm_clk_bulk_get_all(qp->dev, &qp->clks);
> -		if (qp->num_clks < 0) {
> +		if (qp->num_clks <= 0) {
>   			dev_info(dev, "Skipping QoS, failed to get clk: %d\n", qp->num_clks);
>   			goto skip_qos_config;
>   		}
This will skip the QOS configuration for the providers which don't need any clock to be enabled.
we may have to add a flag at provider level to check if it is associated with qos clocks.


Thanks,
Odelu




[Index of Archives]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [Linux for Sparc]     [IETF Annouce]     [Security]     [Bugtraq]     [Linux MIPS]     [ECOS]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux