Message ID | 20220901105414.1171813-3-bhupesh.sharma@linaro.org |
---|---|
State | New |
Headers | show |
Series | Add support for tsens controller reinit via trustzone | expand |
On Thu, Sep 01, 2022 at 04:24:12PM +0530, Bhupesh Sharma wrote: > Add hooks inside platform specific data which can be > used by Qualcomm tsens controller(s) which might need > reinitialization via trustzone. > > Cc: Bjorn Andersson <andersson@kernel.org> > Cc: Amit Kucheria <amitk@kernel.org> > Cc: Thara Gopinath <thara.gopinath@gmail.com> > Cc: linux-pm@vger.kernel.org > Cc: linux-arm-msm@vger.kernel.org > Signed-off-by: Bhupesh Sharma <bhupesh.sharma@linaro.org> > --- > drivers/thermal/qcom/tsens.h | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/drivers/thermal/qcom/tsens.h b/drivers/thermal/qcom/tsens.h > index ba05c8233356..92787017c6ab 100644 > --- a/drivers/thermal/qcom/tsens.h > +++ b/drivers/thermal/qcom/tsens.h > @@ -513,6 +513,7 @@ struct tsens_features { > * @num_sensors: Number of sensors supported by platform > * @ops: operations the tsens instance supports > * @hw_ids: Subset of sensors ids supported by platform, if not the first n > + * @needs_reinit_wa: tsens controller might need reinit via trustzone What does "_wa" mean, and what value does it add? needs_reinit captures the intent pretty well in my view. Regards, Bjorn > * @feat: features of the IP > * @fields: bitfield locations > */ > @@ -520,6 +521,7 @@ struct tsens_plat_data { > const u32 num_sensors; > const struct tsens_ops *ops; > unsigned int *hw_ids; > + bool needs_reinit_wa; > struct tsens_features *feat; > const struct reg_field *fields; > }; > @@ -542,6 +544,7 @@ struct tsens_context { > * @srot_map: pointer to SROT register address space > * @tm_offset: deal with old device trees that don't address TM and SROT > * address space separately > + * @needs_reinit_wa: tsens controller might need reinit via trustzone > * @ul_lock: lock while processing upper/lower threshold interrupts > * @crit_lock: lock while processing critical threshold interrupts > * @rf: array of regmap_fields used to store value of the field > @@ -559,6 +562,7 @@ struct tsens_priv { > struct regmap *tm_map; > struct regmap *srot_map; > u32 tm_offset; > + bool needs_reinit_wa; > > /* lock for upper/lower threshold interrupts */ > spinlock_t ul_lock; > -- > 2.37.1 >
diff --git a/drivers/thermal/qcom/tsens.h b/drivers/thermal/qcom/tsens.h index ba05c8233356..92787017c6ab 100644 --- a/drivers/thermal/qcom/tsens.h +++ b/drivers/thermal/qcom/tsens.h @@ -513,6 +513,7 @@ struct tsens_features { * @num_sensors: Number of sensors supported by platform * @ops: operations the tsens instance supports * @hw_ids: Subset of sensors ids supported by platform, if not the first n + * @needs_reinit_wa: tsens controller might need reinit via trustzone * @feat: features of the IP * @fields: bitfield locations */ @@ -520,6 +521,7 @@ struct tsens_plat_data { const u32 num_sensors; const struct tsens_ops *ops; unsigned int *hw_ids; + bool needs_reinit_wa; struct tsens_features *feat; const struct reg_field *fields; }; @@ -542,6 +544,7 @@ struct tsens_context { * @srot_map: pointer to SROT register address space * @tm_offset: deal with old device trees that don't address TM and SROT * address space separately + * @needs_reinit_wa: tsens controller might need reinit via trustzone * @ul_lock: lock while processing upper/lower threshold interrupts * @crit_lock: lock while processing critical threshold interrupts * @rf: array of regmap_fields used to store value of the field @@ -559,6 +562,7 @@ struct tsens_priv { struct regmap *tm_map; struct regmap *srot_map; u32 tm_offset; + bool needs_reinit_wa; /* lock for upper/lower threshold interrupts */ spinlock_t ul_lock;
Add hooks inside platform specific data which can be used by Qualcomm tsens controller(s) which might need reinitialization via trustzone. Cc: Bjorn Andersson <andersson@kernel.org> Cc: Amit Kucheria <amitk@kernel.org> Cc: Thara Gopinath <thara.gopinath@gmail.com> Cc: linux-pm@vger.kernel.org Cc: linux-arm-msm@vger.kernel.org Signed-off-by: Bhupesh Sharma <bhupesh.sharma@linaro.org> --- drivers/thermal/qcom/tsens.h | 4 ++++ 1 file changed, 4 insertions(+)