Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1331327 > unrolled thread
| Started by | Lee Jones <lee.jones@linaro.org> |
|---|---|
| First post | 2016-02-10 18:00 +0100 |
| Last post | 2016-02-11 10:20 +0100 |
| Articles | 3 — 2 participants |
Back to article view | Back to linux.kernel
This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by
below is the oldest one visible, not the original post.
Re: [PATCH V1] mfd: da9062: fix missing volatile registers in the core regmap_range volatile lists Lee Jones <lee.jones@linaro.org> - 2016-02-10 18:00 +0100
RE: [PATCH V1] mfd: da9062: fix missing volatile registers in the core regmap_range volatile lists "Opensource [Steve Twiss]" <stwiss.opensource@diasemi.com> - 2016-02-10 18:10 +0100
Re: [PATCH V1] mfd: da9062: fix missing volatile registers in the core regmap_range volatile lists Lee Jones <lee.jones@linaro.org> - 2016-02-11 10:20 +0100
| From | Lee Jones <lee.jones@linaro.org> |
|---|---|
| Date | 2016-02-10 18:00 +0100 |
| Subject | Re: [PATCH V1] mfd: da9062: fix missing volatile registers in the core regmap_range volatile lists |
| Message-ID | <r0Ghs-4Nm-3@gated-at.bofh.it> |
On Mon, 01 Feb 2016, Steve Twiss wrote:
> From: Steve Twiss <stwiss.opensource@diasemi.com>
>
> Add an updated set of registers listed in the core regmap_range volatile
> ranges defined for the DA9062.
>
> These new registers contain bits that cannot be considered under the full
> control of software. Under various conditions the hardware will set and/or
> automatically clear bit(s) contained in these registers.
>
> When using a cached version of regmap, the volatility of these registers must
> be identified otherwise the regmap operations may not ensure the registers
> are explicitly altered.
>
> As well as updating the list of volatile registers, this change will fix a
> corner case discovered in the DA9063 ONKEY which is used by the DA9062 core.
>
> In the ONKEY case, the CONTROL_B register is now listed as volatile in the
> regmap_range because it contains the bit field NONKEY_LOCK. This bit can be
> altered by hardware, in which case regmap must be notified of its ability
> to be manpiulated outside of software control.
>
> Signed-off-by: Steve Twiss <stwiss.opensource@diasemi.com>
Applied, thanks.
> ---
> Checks performed with linux-next/v4.5-rc1/scripts/checkpatch.pl
> da9062-core.c total: 0 errors, 0 warnings, 554 lines checked
> This patch applies against linux-next and v4.5-rc1
>
> Regards,
> Steve
>
>
> drivers/mfd/da9062-core.c | 23 ++++++++++++++++++++++-
> 1 file changed, 22 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/mfd/da9062-core.c b/drivers/mfd/da9062-core.c
> index a9ad024..8f873866 100644
> --- a/drivers/mfd/da9062-core.c
> +++ b/drivers/mfd/da9062-core.c
> @@ -388,11 +388,32 @@ static const struct regmap_range da9062_aa_volatile_ranges[] = {
> .range_min = DA9062AA_STATUS_D,
> .range_max = DA9062AA_EVENT_C,
> }, {
> - .range_min = DA9062AA_CONTROL_F,
> + .range_min = DA9062AA_CONTROL_A,
> + .range_max = DA9062AA_CONTROL_B,
> + }, {
> + .range_min = DA9062AA_CONTROL_E,
> .range_max = DA9062AA_CONTROL_F,
> }, {
> + .range_min = DA9062AA_BUCK2_CONT,
> + .range_max = DA9062AA_BUCK4_CONT,
> + }, {
> + .range_min = DA9062AA_BUCK3_CONT,
> + .range_max = DA9062AA_BUCK3_CONT,
> + }, {
> + .range_min = DA9062AA_LDO1_CONT,
> + .range_max = DA9062AA_LDO4_CONT,
> + }, {
> + .range_min = DA9062AA_DVC_1,
> + .range_max = DA9062AA_DVC_1,
> + }, {
> .range_min = DA9062AA_COUNT_S,
> .range_max = DA9062AA_SECOND_D,
> + }, {
> + .range_min = DA9062AA_SEQ,
> + .range_max = DA9062AA_SEQ,
> + }, {
> + .range_min = DA9062AA_EN_32K,
> + .range_max = DA9062AA_EN_32K,
> },
> };
>
--
Lee Jones
Linaro STMicroelectronics Landing Team Lead
Linaro.org │ Open source software for ARM SoCs
Follow Linaro: Facebook | Twitter | Blog
[toc] | [next] | [standalone]
| From | "Opensource [Steve Twiss]" <stwiss.opensource@diasemi.com> |
|---|---|
| Date | 2016-02-10 18:10 +0100 |
| Message-ID | <r0Gr7-59L-3@gated-at.bofh.it> |
| In reply to | #1331327 |
On 10 February 2016 16:56, Lee Jones wrote: > To: Opensource [Steve Twiss] > Cc: LINUXKERNEL; David Dajun Chen; Support Opensource > Subject: Re: [PATCH V1] mfd: da9062: fix missing volatile registers in the core > regmap_range volatile lists > > On Mon, 01 Feb 2016, Steve Twiss wrote: > > > From: Steve Twiss <stwiss.opensource@diasemi.com> > > > > Add an updated set of registers listed in the core regmap_range volatile > > ranges defined for the DA9062. > > > > These new registers contain bits that cannot be considered under the full > > control of software. Under various conditions the hardware will set and/or > > automatically clear bit(s) contained in these registers. > > > > When using a cached version of regmap, the volatility of these registers must > > be identified otherwise the regmap operations may not ensure the registers > > are explicitly altered. > > > > As well as updating the list of volatile registers, this change will fix a > > corner case discovered in the DA9063 ONKEY which is used by the DA9062 core. > > > > In the ONKEY case, the CONTROL_B register is now listed as volatile in the > > regmap_range because it contains the bit field NONKEY_LOCK. This bit can be > > altered by hardware, in which case regmap must be notified of its ability > > to be manpiulated outside of software control. > > > > Signed-off-by: Steve Twiss <stwiss.opensource@diasemi.com> > > Applied, thanks. Thanks. Regards, Steve [...]
[toc] | [prev] | [next] | [standalone]
| From | Lee Jones <lee.jones@linaro.org> |
|---|---|
| Date | 2016-02-11 10:20 +0100 |
| Message-ID | <r0VzR-6IR-39@gated-at.bofh.it> |
| In reply to | #1331339 |
On Wed, 10 Feb 2016, Opensource [Steve Twiss] wrote: > > On 10 February 2016 16:56, Lee Jones wrote: > > > To: Opensource [Steve Twiss] > > Cc: LINUXKERNEL; David Dajun Chen; Support Opensource > > Subject: Re: [PATCH V1] mfd: da9062: fix missing volatile registers in the core > > regmap_range volatile lists > > > > On Mon, 01 Feb 2016, Steve Twiss wrote: > > > > > From: Steve Twiss <stwiss.opensource@diasemi.com> > > > > > > Add an updated set of registers listed in the core regmap_range volatile > > > ranges defined for the DA9062. > > > > > > These new registers contain bits that cannot be considered under the full > > > control of software. Under various conditions the hardware will set and/or > > > automatically clear bit(s) contained in these registers. > > > > > > When using a cached version of regmap, the volatility of these registers must > > > be identified otherwise the regmap operations may not ensure the registers > > > are explicitly altered. > > > > > > As well as updating the list of volatile registers, this change will fix a > > > corner case discovered in the DA9063 ONKEY which is used by the DA9062 core. > > > > > > In the ONKEY case, the CONTROL_B register is now listed as volatile in the > > > regmap_range because it contains the bit field NONKEY_LOCK. This bit can be > > > altered by hardware, in which case regmap must be notified of its ability > > > to be manpiulated outside of software control. > > > > > > Signed-off-by: Steve Twiss <stwiss.opensource@diasemi.com> > > > > Applied, thanks. > > Thanks. > Regards, > Steve No need for thank yous. They're implied. ;) [... and they just account for churn in my already very busy inbox]. -- Lee Jones Linaro STMicroelectronics Landing Team Lead Linaro.org │ Open source software for ARM SoCs Follow Linaro: Facebook | Twitter | Blog
[toc] | [prev] | [standalone]
Back to top | Article view | linux.kernel
csiph-web