2020-10-29 09:35:48

by Tero Kristo

[permalink] [raw]
Subject: [RESEND PATCH] soc: ti: ti_sci_pm_domains: check for proper args count in xlate

K2G devices still only use single parameter for power-domains property,
so check for this properly in the driver. Without this, every peripheral
fails to probe resulting in boot failure.

Fixes: efa5c01cd7ee ("soc: ti: ti_sci_pm_domains: switch to use multiple genpds instead of one")
Reported-by: Nishanth Menon <[email protected]>
Signed-off-by: Tero Kristo <[email protected]>
Acked-by: Nishanth Menon <[email protected]>
Acked-by: Santosh Shilimkar <[email protected]>
---
drivers/soc/ti/ti_sci_pm_domains.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/soc/ti/ti_sci_pm_domains.c b/drivers/soc/ti/ti_sci_pm_domains.c
index af2126d2b2ff..8afb3f45d263 100644
--- a/drivers/soc/ti/ti_sci_pm_domains.c
+++ b/drivers/soc/ti/ti_sci_pm_domains.c
@@ -91,7 +91,7 @@ static struct generic_pm_domain *ti_sci_pd_xlate(
struct genpd_onecell_data *genpd_data = data;
unsigned int idx = genpdspec->args[0];

- if (genpdspec->args_count < 2)
+ if (genpdspec->args_count != 1 && genpdspec->args_count != 2)
return ERR_PTR(-EINVAL);

if (idx >= genpd_data->num_domains) {
--
2.17.1

--
Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki. Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki


2020-10-29 20:24:06

by Santosh Shilimkar

[permalink] [raw]
Subject: Re: [RESEND PATCH] soc: ti: ti_sci_pm_domains: check for proper args count in xlate

Hi Arnd, olof,

On 10/29/20 2:33 AM, Tero Kristo wrote:
> K2G devices still only use single parameter for power-domains property,
> so check for this properly in the driver. Without this, every peripheral
> fails to probe resulting in boot failure.
>
> Fixes: efa5c01cd7ee ("soc: ti: ti_sci_pm_domains: switch to use multiple genpds instead of one")
> Reported-by: Nishanth Menon <[email protected]>
> Signed-off-by: Tero Kristo <[email protected]>
> Acked-by: Nishanth Menon <[email protected]>
> Acked-by: Santosh Shilimkar <[email protected]>
> ---
Can you please add this to your fixes queue ?
This fixes boot failures on K2Gdevices ?

> drivers/soc/ti/ti_sci_pm_domains.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/soc/ti/ti_sci_pm_domains.c b/drivers/soc/ti/ti_sci_pm_domains.c
> index af2126d2b2ff..8afb3f45d263 100644
> --- a/drivers/soc/ti/ti_sci_pm_domains.c
> +++ b/drivers/soc/ti/ti_sci_pm_domains.c
> @@ -91,7 +91,7 @@ static struct generic_pm_domain *ti_sci_pd_xlate(
> struct genpd_onecell_data *genpd_data = data;
> unsigned int idx = genpdspec->args[0];
>
> - if (genpdspec->args_count < 2)
> + if (genpdspec->args_count != 1 && genpdspec->args_count != 2)
> return ERR_PTR(-EINVAL);
>
> if (idx >= genpd_data->num_domains) {
>