[U-Boot] [PATCH v2 3/7] i.MX6DL: mamoj: Add PFUZE100 support
Stefano Babic
sbabic at denx.de
Thu Apr 26 07:18:47 UTC 2018
On 11/04/2018 14:36, Jagan Teki wrote:
> MX6DL Mamoj boards has Freescale PFUZE100 PMIC, add support
> for it through DM_PMIC dt definition.
>
> pmic log:
> ========
> => pmic list
> | Name | Parent name | Parent uclass @ seq
> | pfuze100 at 08 | i2c at 021f8000 | i2c @ 3
> => pmic dev pfuze100 at 08
> dev: 0 @ pfuze100 at 08
> => pmic dump
> Dump pmic: pfuze100 at 08 registers
>
> 0x00: 10 00 00 21 00 01 3f 01 00 7f 00 00 00 00 00 81
> 0x10: 00 00 3f 00 00 00 00 00 00 00 00 10 00 00 00 00
> 0x20: 2b 2b 2b 08 c4 00 00 00 00 00 00 00 00 00 2b 2b
> 0x30: 2b 08 c4 00 00 72 72 72 08 d4 00 00 2c 2c 2c 08
> 0x40: e4 00 00 2c 2c 2c 08 e4 00 00 6f 6f 6f 08 f4 00
> 0x50: 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> 0x60: 00 00 00 00 00 00 48 00 00 00 10 06 1e 1e 17 10
> 0x70: 1a 1f 00 00 00 00 00 00 00 00 00 00 00 00 00
>
> Signed-off-by: Jagan Teki <jagan at amarulasolutions.com>
> Signed-off-by: Simone CIANNI <simone.cianni at bticino.it>
> Signed-off-by: Raffaele RECALCATI <raffaele.recalcati at bticino.it>
> ---
> arch/arm/dts/imx6dl-mamoj.dts | 113 +++++++++++++++++++++++++++++++++++++++++
> arch/arm/mach-imx/mx6/Kconfig | 2 +
> configs/imx6dl_mamoj_defconfig | 1 +
> 3 files changed, 116 insertions(+)
>
> diff --git a/arch/arm/dts/imx6dl-mamoj.dts b/arch/arm/dts/imx6dl-mamoj.dts
> index 558043445b..3f6d8aa4a2 100644
> --- a/arch/arm/dts/imx6dl-mamoj.dts
> +++ b/arch/arm/dts/imx6dl-mamoj.dts
> @@ -33,6 +33,119 @@
> pinctrl-names = "default";
> pinctrl-0 = <&pinctrl_i2c4>;
> status = "okay";
> +
> + pmic: pfuze100 at 08 {
> + compatible = "fsl,pfuze100";
> + reg = <0x08>;
> +
> + regulators {
> + /* CPU vdd_arm core */
> + sw1a_reg: sw1ab {
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-boot-on;
> + regulator-always-on;
> + regulator-ramp-delay = <6250>;
> + };
> +
> + /* SOC vdd_soc */
> + sw1c_reg: sw1c {
> + regulator-min-microvolt = <300000>;
> + regulator-max-microvolt = <1875000>;
> + regulator-boot-on;
> + regulator-always-on;
> + regulator-ramp-delay = <6250>;
> + };
> +
> + /* I/O power GEN_3V3 */
> + sw2_reg: sw2 {
> + regulator-min-microvolt = <800000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-boot-on;
> + regulator-always-on;
> + };
> +
> + /* DDR memory */
> + sw3a_reg: sw3a {
> + regulator-min-microvolt = <400000>;
> + regulator-max-microvolt = <1975000>;
> + regulator-boot-on;
> + regulator-always-on;
> + };
> +
> + /* DDR memory */
> + sw3b_reg: sw3b {
> + regulator-min-microvolt = <400000>;
> + regulator-max-microvolt = <1975000>;
> + regulator-boot-on;
> + regulator-always-on;
> + };
> +
> + /* not used */
> + sw4_reg: sw4 {
> + regulator-min-microvolt = <800000>;
> + regulator-max-microvolt = <3300000>;
> + };
> +
> + /* not used */
> + swbst_reg: swbst {
> + regulator-min-microvolt = <5000000>;
> + regulator-max-microvolt = <5150000>;
> + };
> +
> + /* PMIC vsnvs. EX boot mode */
> + snvs_reg: vsnvs {
> + regulator-min-microvolt = <1000000>;
> + regulator-max-microvolt = <3000000>;
> + regulator-boot-on;
> + regulator-always-on;
> + };
> +
> + vref_reg: vrefddr {
> + regulator-boot-on;
> + regulator-always-on;
> + };
> +
> + /* not used */
> + vgen1_reg: vgen1 {
> + regulator-min-microvolt = <800000>;
> + regulator-max-microvolt = <1550000>;
> + };
> +
> + /* not used */
> + vgen2_reg: vgen2 {
> + regulator-min-microvolt = <800000>;
> + regulator-max-microvolt = <1550000>;
> + };
> +
> + /* not used */
> + vgen3_reg: vgen3 {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <3300000>;
> + };
> +
> + /* 1v8 general power */
> + vgen4_reg: vgen4 {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> +
> + /* 2v8 general power IMX6 */
> + vgen5_reg: vgen5 {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> +
> + /* 3v3 Ethernet */
> + vgen6_reg: vgen6 {
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <3300000>;
> + regulator-always-on;
> + };
> + };
> + };
> };
>
> &uart3 {
> diff --git a/arch/arm/mach-imx/mx6/Kconfig b/arch/arm/mach-imx/mx6/Kconfig
> index 5007fe3941..ccc754b123 100644
> --- a/arch/arm/mach-imx/mx6/Kconfig
> +++ b/arch/arm/mach-imx/mx6/Kconfig
> @@ -235,6 +235,8 @@ config TARGET_MX6DL_MAMOJ
> select DM_GPIO
> select DM_I2C
> select DM_MMC
> + select DM_PMIC
> + select DM_PMIC_PFUZE100
> select DM_THERMAL
> select SPL
> select SUPPORT_SPL
> diff --git a/configs/imx6dl_mamoj_defconfig b/configs/imx6dl_mamoj_defconfig
> index e2a18d2c30..362962fdf3 100644
> --- a/configs/imx6dl_mamoj_defconfig
> +++ b/configs/imx6dl_mamoj_defconfig
> @@ -16,6 +16,7 @@ CONFIG_CMD_I2C=y
> CONFIG_CMD_MMC=y
> CONFIG_CMD_MII=y
> CONFIG_CMD_PING=y
> +CONFIG_CMD_PMIC=y
> CONFIG_CMD_CACHE=y
> CONFIG_CMD_EXT2=y
> CONFIG_CMD_EXT4=y
>
Reviewed-by: Stefano Babic <sbabic at denx.de>
Best regards,
Stefano Babic
--
=====================================================================
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: +49-8142-66989-53 Fax: +49-8142-66989-80 Email: sbabic at denx.de
=====================================================================
More information about the U-Boot
mailing list