[U-Boot] [PATCH 8/8] arm: imx7s-warp: Convert to DM PMIC

Peng Fan peng.fan at nxp.com
Tue Jan 8 13:29:25 UTC 2019



> -----Original Message-----
> From: Bryan O'Donoghue [mailto:bryan.odonoghue at linaro.org]
> Sent: 2019年1月3日 9:45
> To: u-boot at lists.denx.de
> Cc: Fabio Estevam <fabio.estevam at nxp.com>; Peng Fan
> <peng.fan at nxp.com>; Bryan O'Donoghue <bryan.odonoghue at linaro.org>;
> Stefano Babic <sbabic at denx.de>
> Subject: [PATCH 8/8] arm: imx7s-warp: Convert to DM PMIC
> 
> This patch converts the warp7 and warp7_bl33 board ports over to using the
> DM PMIC model.
> 
> Signed-off-by: Bryan O'Donoghue <bryan.odonoghue at linaro.org>
> Cc: Peng Fan <peng.fan at nxp.com>
> Cc: Fabio Estevam <fabio.estevam at nxp.com>
> Cc: Stefano Babic <sbabic at denx.de>
> ---
>  board/warp7/warp7.c          | 27 +++++++++++----------------
>  configs/warp7_bl33_defconfig |  6 ++++++
>  configs/warp7_defconfig      |  6 ++++++
>  include/configs/warp7.h      |  6 ------
>  4 files changed, 23 insertions(+), 22 deletions(-)
> 
> diff --git a/board/warp7/warp7.c b/board/warp7/warp7.c index
> 19f0df4d09..6ebeb08e33 100644
> --- a/board/warp7/warp7.c
> +++ b/board/warp7/warp7.c
> @@ -64,29 +64,24 @@ int board_early_init_f(void)
>  	return 0;
>  }
> 
> -#ifdef CONFIG_POWER
> -#define I2C_PMIC       0
> -static struct pmic *pfuze;
> +#ifdef CONFIG_DM_PMIC
>  int power_init_board(void)
>  {
> -	int ret;
> -	unsigned int reg, rev_id;
> +	struct udevice *dev;
> +	int ret, dev_id, rev_id;
> 
> -	ret = power_pfuze3000_init(I2C_PMIC);
> -	if (ret)
> +	ret = pmic_get("pfuze3000", &dev);
> +	if (ret == -ENODEV)
> +		return 0;
> +	if (ret != 0)
>  		return ret;
> 
> -	pfuze = pmic_get("PFUZE3000");
> -	ret = pmic_probe(pfuze);
> -	if (ret)
> -		return ret;
> -
> -	pmic_reg_read(pfuze, PFUZE3000_DEVICEID, &reg);
> -	pmic_reg_read(pfuze, PFUZE3000_REVID, &rev_id);
> -	printf("PMIC: PFUZE3000 DEV_ID=0x%x REV_ID=0x%x\n", reg, rev_id);
> +	dev_id = pmic_reg_read(dev, PFUZE3000_DEVICEID);
> +	rev_id = pmic_reg_read(dev, PFUZE3000_REVID);
> +	printf("PMIC: PFUZE3000 DEV_ID=0x%x REV_ID=0x%x\n", dev_id,
> rev_id);
> 
>  	/* disable Low Power Mode during standby mode */
> -	pmic_reg_write(pfuze, PFUZE3000_LDOGCTL, 0x1);
> +	pmic_clrsetbits(dev, PFUZE3000_LDOGCTL, 0, 1);
> 
>  	return 0;
>  }
> diff --git a/configs/warp7_bl33_defconfig b/configs/warp7_bl33_defconfig
> index 2e80011cbc..7b40bfbd6d 100644
> --- a/configs/warp7_bl33_defconfig
> +++ b/configs/warp7_bl33_defconfig
> @@ -45,3 +45,9 @@ CONFIG_PINCTRL=y
>  CONFIG_PINCTRL_IMX7=y
>  CONFIG_DM_GPIO=y
>  CONFIG_DM_I2C=y
> +CONFIG_DM_PMIC=y
> +CONFIG_DM_PMIC_PFUZE100=y
> +CONFIG_DM_REGULATOR=y
> +CONFIG_DM_REGULATOR_PFUZE100=y
> +CONFIG_DM_REGULATOR_FIXED=y
> +CONFIG_DM_REGULATOR_GPIO=y
> diff --git a/configs/warp7_defconfig b/configs/warp7_defconfig index
> 9f7dc73a11..d1c8e403a7 100644
> --- a/configs/warp7_defconfig
> +++ b/configs/warp7_defconfig
> @@ -58,3 +58,9 @@ CONFIG_PINCTRL=y
>  CONFIG_PINCTRL_IMX7=y
>  CONFIG_DM_GPIO=y
>  CONFIG_DM_I2C=y
> +CONFIG_DM_PMIC=y
> +CONFIG_DM_PMIC_PFUZE100=y
> +CONFIG_DM_REGULATOR=y
> +CONFIG_DM_REGULATOR_PFUZE100=y
> +CONFIG_DM_REGULATOR_FIXED=y
> +CONFIG_DM_REGULATOR_GPIO=y
> diff --git a/include/configs/warp7.h b/include/configs/warp7.h index
> 41eb8d7e1d..043f2861b6 100644
> --- a/include/configs/warp7.h
> +++ b/include/configs/warp7.h
> @@ -129,12 +129,6 @@
>  #define CONFIG_SYS_I2C_MXC
>  #define CONFIG_SYS_I2C_SPEED		100000
> 
> -/* PMIC */
> -#define CONFIG_POWER
> -#define CONFIG_POWER_I2C
> -#define CONFIG_POWER_PFUZE3000
> -#define CONFIG_POWER_PFUZE3000_I2C_ADDR	0x08
> -
>  /* environment organization */
>  #define CONFIG_ENV_SIZE			SZ_8K
> 

Reviewed-by: Peng Fan <peng.fan at nxp.com>

> --
> 2.20.0



More information about the U-Boot mailing list