diff mbox

[1/2] mfd: arizona: Add support for INn_MODE register control

Message ID 20140809173138.767b97fd@songinha-Samsung-DeskTop-System (mailing list archive)
State New, archived
Headers show

Commit Message

Inha Song Aug. 9, 2014, 8:31 a.m. UTC
Some boards need to set the INn_MODE[1:0] register to change
the input signal patch. This wlf,inmode property is optional.
If present values must be specified by the number of
ARIZONA_MAX_INPUT.

Example:
   - wlf,inmode = <2 0 2 0>;	/* IN1, IN3 use DMIC */

Signed-off-by: Inha Song <ideal.song@samsung.com>
---
 drivers/mfd/arizona-core.c | 4 ++++
 1 file changed, 4 insertions(+)

Comments

Charles Keepax Aug. 12, 2014, 8:28 a.m. UTC | #1
On Sat, Aug 09, 2014 at 05:31:38PM +0900, Inha Song wrote:
> Some boards need to set the INn_MODE[1:0] register to change
> the input signal patch. This wlf,inmode property is optional.
> If present values must be specified by the number of
> ARIZONA_MAX_INPUT.
> 
> Example:
>    - wlf,inmode = <2 0 2 0>;	/* IN1, IN3 use DMIC */
> 
> Signed-off-by: Inha Song <ideal.song@samsung.com>
> ---
>  drivers/mfd/arizona-core.c | 4 ++++
>  1 file changed, 4 insertions(+)
> 
> diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c
> index 10a0cb9..4b2eb73 100644
> --- a/drivers/mfd/arizona-core.c
> +++ b/drivers/mfd/arizona-core.c
> @@ -560,6 +560,10 @@ static int arizona_of_get_core_pdata(struct arizona *arizona)
>  			ret);
>  	}
>  
> +	of_property_read_u32_array(arizona->dev->of_node,
> +					 "wlf,inmode",
> +					 arizona->pdata.inmode,
> +					 ARRAY_SIZE(arizona->pdata.inmode));

Might be better to allow the device tree to be shorter than the
array in pdata, should this get expanded on future devices.

Thanks,
Charles
Inha Song Aug. 13, 2014, 12:26 a.m. UTC | #2
Hi, Charles.

Thanks for your review.

On Tue, 12 Aug 2014 09:28:11 +0100
Charles Keepax <ckeepax@opensource.wolfsonmicro.com> wrote:

> On Sat, Aug 09, 2014 at 05:31:38PM +0900, Inha Song wrote:
> > Some boards need to set the INn_MODE[1:0] register to change
> > the input signal patch. This wlf,inmode property is optional.
> > If present values must be specified by the number of
> > ARIZONA_MAX_INPUT.
> > 
> > Example:
> >    - wlf,inmode = <2 0 2 0>;	/* IN1, IN3 use DMIC */
> > 
> > Signed-off-by: Inha Song <ideal.song@samsung.com>
> > ---
> >  drivers/mfd/arizona-core.c | 4 ++++
> >  1 file changed, 4 insertions(+)
> > 
> > diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c
> > index 10a0cb9..4b2eb73 100644
> > --- a/drivers/mfd/arizona-core.c
> > +++ b/drivers/mfd/arizona-core.c
> > @@ -560,6 +560,10 @@ static int arizona_of_get_core_pdata(struct arizona *arizona)
> >  			ret);
> >  	}
> >  
> > +	of_property_read_u32_array(arizona->dev->of_node,
> > +					 "wlf,inmode",
> > +					 arizona->pdata.inmode,
> > +					 ARRAY_SIZE(arizona->pdata.inmode));
> 
> Might be better to allow the device tree to be shorter than the
> array in pdata, should this get expanded on future devices.
> 

OK, I will fix in v2 to use "of_property_count_u32_elems" and "of_property_read_u32_index".

Best regards,
Inha Song.

> Thanks,
> Charles
diff mbox

Patch

diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c
index 10a0cb9..4b2eb73 100644
--- a/drivers/mfd/arizona-core.c
+++ b/drivers/mfd/arizona-core.c
@@ -560,6 +560,10 @@  static int arizona_of_get_core_pdata(struct arizona *arizona)
 			ret);
 	}
 
+	of_property_read_u32_array(arizona->dev->of_node,
+					 "wlf,inmode",
+					 arizona->pdata.inmode,
+					 ARRAY_SIZE(arizona->pdata.inmode));
 	return 0;
 }