On Sat, Aug 12, 2023 at 01:24:44PM +0200, Adam Skladowski wrote: Please drop the "drivers:" prefix in $subject, and resubmit this with patch (alone should be fine) with the new maintainer, and appropriate mailing list, included. Thanks, Bjorn > Downstream kernel parses resource names based on pm8950-rpm-regulator.dtsi > in such file qcom,resource-name takes three values: smpa,ldoa and clk0. > First appearance of RWSC/RWSM point to msm-4.4 kernel > which is way newer than what this platform was shipped with (msm-3.10). > For the max_state downstream code limit value to TURBO inside dts > with only one turbo_high being placed in msm-thermal bindings. > One of effects of requesting TURBO_HIGH vote is rebooting of device > which happens during voting inside WCNSS/IRIS, > this behavior was observed on LeEco S2 smartphone. > Fix regulator setup and drop unused resources. > > Fixes: b1d522443b4b ("soc: qcom: rpmpd: Add rpm power domains for msm8976") > Signed-off-by: Adam Skladowski <a39.skl@xxxxxxxxx> > Reviewed-by: Dmitry Baryshkov <dmitry.baryshkov@xxxxxxxxxx> > --- > drivers/genpd/qcom/rpmpd.c | 27 ++++++++++----------------- > 1 file changed, 10 insertions(+), 17 deletions(-) > > diff --git a/drivers/genpd/qcom/rpmpd.c b/drivers/genpd/qcom/rpmpd.c > index 3135dd1dafe0..59caa4e7b99a 100644 > --- a/drivers/genpd/qcom/rpmpd.c > +++ b/drivers/genpd/qcom/rpmpd.c > @@ -166,13 +166,6 @@ static struct rpmpd cx_rwcx0_vfl = { > .key = KEY_FLOOR_LEVEL, > }; > > -static struct rpmpd cx_rwsc2_vfl = { > - .pd = { .name = "cx_vfl", }, > - .res_type = RPMPD_RWSC, > - .res_id = 2, > - .key = KEY_FLOOR_LEVEL, > -}; > - > static struct rpmpd cx_s1a_vfc = { > .pd = { .name = "cx_vfc", }, > .res_type = RPMPD_SMPA, > @@ -329,6 +322,13 @@ static struct rpmpd mx_s6a_lvl_ao = { > .key = KEY_LEVEL, > }; > > +static struct rpmpd mx_s6a_vfl = { > + .pd = { .name = "mx_vfl", }, > + .res_type = RPMPD_SMPA, > + .res_id = 6, > + .key = KEY_FLOOR_LEVEL, > +}; > + > static struct rpmpd mx_s7a_lvl_ao; > static struct rpmpd mx_s7a_lvl = { > .pd = { .name = "mx", }, > @@ -361,13 +361,6 @@ static struct rpmpd mx_rwmx0_vfl = { > .key = KEY_FLOOR_LEVEL, > }; > > -static struct rpmpd mx_rwsm6_vfl = { > - .pd = { .name = "mx_vfl", }, > - .res_type = RPMPD_RWSM, > - .res_id = 6, > - .key = KEY_FLOOR_LEVEL, > -}; > - > /* MD */ > static struct rpmpd md_s1a_corner_ao; > static struct rpmpd md_s1a_corner = { > @@ -591,16 +584,16 @@ static const struct rpmpd_desc msm8953_desc = { > static struct rpmpd *msm8976_rpmpds[] = { > [MSM8976_VDDCX] = &cx_s2a_lvl, > [MSM8976_VDDCX_AO] = &cx_s2a_lvl_ao, > - [MSM8976_VDDCX_VFL] = &cx_rwsc2_vfl, > + [MSM8976_VDDCX_VFL] = &cx_s2a_vfl, > [MSM8976_VDDMX] = &mx_s6a_lvl, > [MSM8976_VDDMX_AO] = &mx_s6a_lvl_ao, > - [MSM8976_VDDMX_VFL] = &mx_rwsm6_vfl, > + [MSM8976_VDDMX_VFL] = &mx_s6a_vfl, > }; > > static const struct rpmpd_desc msm8976_desc = { > .rpmpds = msm8976_rpmpds, > .num_pds = ARRAY_SIZE(msm8976_rpmpds), > - .max_state = RPM_SMD_LEVEL_TURBO_HIGH, > + .max_state = RPM_SMD_LEVEL_TURBO, > }; > > static struct rpmpd *msm8994_rpmpds[] = { > -- > 2.41.0 >