[U-Boot] [PATCH v2 3/5] pmic_fsl: Introduce CONFIG_SYS_FSL_PMIC_I2C_LENGTH
Lukasz Majewski
l.majewski at samsung.com
Mon Oct 22 18:05:54 CEST 2012
Hi Fabio,
> On Tue, Oct 16, 2012 at 11:39 AM, Stefano Babic <sbabic at denx.de>
> wrote:
>
> >> --- a/drivers/misc/pmic_fsl.c
> >> +++ b/drivers/misc/pmic_fsl.c
> >> @@ -53,7 +53,7 @@ int pmic_init(void)
> >> #elif defined(CONFIG_PMIC_I2C)
> >> p->interface = PMIC_I2C;
> >> p->hw.i2c.addr = CONFIG_SYS_FSL_PMIC_I2C_ADDR;
> >> - p->hw.i2c.tx_num = 3;
> >> + p->hw.i2c.tx_num = CONFIG_SYS_FSL_PMIC_I2C_LENGTH;
> >
> > The bad thing with it is that it seems that each board can have a
> > different value. However, this is bound to the selected pmic and
> > not to the board. So IMHO it should not go into the board
> > configuration file, but in the pmic specific initialization.
>
> Ok, understood.
>
> What about putting CONFIG_SYS_FSL_PMIC_I2C_LENGTH inside the PMIC
> include file, such as
> include/dialog_pmic.h
> include/mc13783.h
> include/mc13892.h ?
>
I totally agree.
This definition looks like PMIC device specific and shall be defined at
proper *.h file (as you proposed).
Moreover the
p->hw.i2c.tx_num = CONFIG_SYS_FSL_PMIC_I2C_LENGTH;
shall be assigned at per pmic instantiation:
int pmic_init(bus)
{
...
p->hw.i2c.tx_num = CONFIG_SYS_FSL_PMIC_I2C_LENGTH;
...
}
This should solve your problem.
--
Best regards,
Lukasz Majewski
Samsung Poland R&D Center | Linux Platform Group
More information about the U-Boot
mailing list