[U-Boot] [PATCH 1/4] power: make pfuze100 be able to coexist with other pmics

Stefano Babic
2014-04-24T08:03:12Z

Hi Tim,

On 23/04/2014 06:53, Tim Harvey wrote:
> Avoid uding pmic_init() as this forces the model of only allowing a
> single PMIC driver to be built at a time.
>
> Signed-off-by: Tim Harvey <tharvey@gateworks.com>
> ---
> drivers/power/pmic/pmic_pfuze100.c | 2 +-
> include/power/pfuze100_pmic.h | 1 +
> 2 files changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/power/pmic/pmic_pfuze100.c b/drivers/power/pmic/pmic_pfuze100.c
> index 22c1f15..21f12d2 100644
> --- a/drivers/power/pmic/pmic_pfuze100.c
> +++ b/drivers/power/pmic/pmic_pfuze100.c
> @@ -11,7 +11,7 @@
> #include <power/pmic.h>
> #include <power/pfuze100_pmic.h>
>
> -int pmic_init(unsigned char bus)
> +int power_pfuze100_init(unsigned char bus)
> {
> static const char name[] = "PFUZE100_PMIC";
> struct pmic *p = pmic_alloc();
> diff --git a/include/power/pfuze100_pmic.h b/include/power/pfuze100_pmic.h
> index 2a9032a..444aba6 100644
> --- a/include/power/pfuze100_pmic.h
> +++ b/include/power/pfuze100_pmic.h
> @@ -93,4 +93,5 @@ enum {
> #define SWBST_MODE_AUTO (2 << 2)
> #define SWBST_MODE_APS (2 << 3)
>
> +int power_pfuze100_init(unsigned char bus);

This is a change in the PMIC framework API and must be documented.

Currently, we support multiple instances of the same PMIC, but not
different PMIC on the same board.

We could add a CONFIG_MULTIPLE_PMIC, that must be added to the
documentation, and each driver will define pmic_init() if it is not define:

#ifndef CONFIG_MULTIPLE_PMIC
#define pmic_init power_pfuze100_init
#endif

Best regards,
Stefano Babic