diff mbox series

[U-Boot] ARM: mx6: pmu: Expose PMU LDO configuration interface

Message ID 20191126083532.4674-1-marex@denx.de
State Accepted
Commit df1b721f60027705ff0fb804c1da472ba31f978b
Delegated to: Stefano Babic
Headers show
Series [U-Boot] ARM: mx6: pmu: Expose PMU LDO configuration interface | expand

Commit Message

Marek Vasut Nov. 26, 2019, 8:35 a.m. UTC
Make the PMU LDO configuration interface available to board code,
so that board code can reconfigure the internal LDOs of the SoC.

Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Eric Nelson <eric@nelint.com>
Cc: Fabio Estevam <fabio.estevam@nxp.com>
Cc: Stefano Babic <sbabic@denx.de>
---
 arch/arm/include/asm/arch-mx6/sys_proto.h | 8 ++++++++
 arch/arm/mach-imx/mx6/soc.c               | 8 +-------
 2 files changed, 9 insertions(+), 7 deletions(-)

Comments

Eric Nelson Nov. 26, 2019, 4:28 p.m. UTC | #1
Hi Marek,

On 11/26/19 1:35 AM, Marek Vasut wrote:
> Make the PMU LDO configuration interface available to board code,
> so that board code can reconfigure the internal LDOs of the SoC.
> 
> Signed-off-by: Marek Vasut <marex@denx.de>
> Cc: Eric Nelson <eric@nelint.com>
> Cc: Fabio Estevam <fabio.estevam@nxp.com>
> Cc: Stefano Babic <sbabic@denx.de>
> ---
>   arch/arm/include/asm/arch-mx6/sys_proto.h | 8 ++++++++
>   arch/arm/mach-imx/mx6/soc.c               | 8 +-------
>   2 files changed, 9 insertions(+), 7 deletions(-)
> 
> diff --git a/arch/arm/include/asm/arch-mx6/sys_proto.h b/arch/arm/include/asm/arch-mx6/sys_proto.h
> index 4bf7dff8b4..1e5fa1a75e 100644
> --- a/arch/arm/include/asm/arch-mx6/sys_proto.h
> +++ b/arch/arm/include/asm/arch-mx6/sys_proto.h
> @@ -20,6 +20,14 @@
>   int imx6_pcie_toggle_power(void);
>   int imx6_pcie_toggle_reset(void);
>   
> +enum ldo_reg {
> +	LDO_ARM,
> +	LDO_SOC,
> +	LDO_PU,
> +};
> +
> +int set_ldo_voltage(enum ldo_reg ldo, u32 mv);
> +
>   /**
>    * iomuxc_set_rgmii_io_voltage - set voltage level of RGMII/USB pins
>    *
> diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
> index 6dccee484c..3560dd7ee7 100644
> --- a/arch/arm/mach-imx/mx6/soc.c
> +++ b/arch/arm/mach-imx/mx6/soc.c
> @@ -23,12 +23,6 @@
>   #include <imx_thermal.h>
>   #include <mmc.h>
>   
> -enum ldo_reg {
> -	LDO_ARM,
> -	LDO_SOC,
> -	LDO_PU,
> -};
> -
>   struct scu_regs {
>   	u32	ctrl;
>   	u32	config;
> @@ -254,7 +248,7 @@ static void clear_ldo_ramp(void)
>    * Possible values are from 0.725V to 1.450V in steps of
>    * 0.025V (25mV).
>    */
> -static int set_ldo_voltage(enum ldo_reg ldo, u32 mv)
> +int set_ldo_voltage(enum ldo_reg ldo, u32 mv)
>   {
>   	struct anatop_regs *anatop = (struct anatop_regs *)ANATOP_BASE_ADDR;
>   	u32 val, step, old, reg = readl(&anatop->reg_core);
> 

Reviewed-by: Eric Nelson <eric@nelint.com>
diff mbox series

Patch

diff --git a/arch/arm/include/asm/arch-mx6/sys_proto.h b/arch/arm/include/asm/arch-mx6/sys_proto.h
index 4bf7dff8b4..1e5fa1a75e 100644
--- a/arch/arm/include/asm/arch-mx6/sys_proto.h
+++ b/arch/arm/include/asm/arch-mx6/sys_proto.h
@@ -20,6 +20,14 @@ 
 int imx6_pcie_toggle_power(void);
 int imx6_pcie_toggle_reset(void);
 
+enum ldo_reg {
+	LDO_ARM,
+	LDO_SOC,
+	LDO_PU,
+};
+
+int set_ldo_voltage(enum ldo_reg ldo, u32 mv);
+
 /**
  * iomuxc_set_rgmii_io_voltage - set voltage level of RGMII/USB pins
  *
diff --git a/arch/arm/mach-imx/mx6/soc.c b/arch/arm/mach-imx/mx6/soc.c
index 6dccee484c..3560dd7ee7 100644
--- a/arch/arm/mach-imx/mx6/soc.c
+++ b/arch/arm/mach-imx/mx6/soc.c
@@ -23,12 +23,6 @@ 
 #include <imx_thermal.h>
 #include <mmc.h>
 
-enum ldo_reg {
-	LDO_ARM,
-	LDO_SOC,
-	LDO_PU,
-};
-
 struct scu_regs {
 	u32	ctrl;
 	u32	config;
@@ -254,7 +248,7 @@  static void clear_ldo_ramp(void)
  * Possible values are from 0.725V to 1.450V in steps of
  * 0.025V (25mV).
  */
-static int set_ldo_voltage(enum ldo_reg ldo, u32 mv)
+int set_ldo_voltage(enum ldo_reg ldo, u32 mv)
 {
 	struct anatop_regs *anatop = (struct anatop_regs *)ANATOP_BASE_ADDR;
 	u32 val, step, old, reg = readl(&anatop->reg_core);