[PATCH v7 1/3] arm64: dts: imx8mm-evk: move PMIC configuration
Ahmad Fatoum
a.fatoum at pengutronix.de
Thu Jan 19 02:02:58 PST 2023
Hello Marco,
On 19.01.23 10:51, Marco Felsch wrote:
> Do we really need to move it into another dtsi file? I would either
> suggest to move the pmic description into the .dts file since it is not
> common anymore. This way we can avoid the imx8mm-evk-rohm-pmic.dtsi.
The PMIC DTSIs were my suggestion. The Rohm PMIC is still common between
old LPDDR4 EVK and DDR4 EVK.
Cheers,
Ahmad
>
> Regards,
> Marco
>
>> / {
>> model = "FSL i.MX8MM DDR4 EVK with CYW43455 WIFI/BT board";
>> diff --git a/arch/arm64/boot/dts/freescale/imx8mm-evk-rohm-pmic.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-evk-rohm-pmic.dtsi
>> new file mode 100644
>> index 000000000000..0b056996a27b
>> --- /dev/null
>> +++ b/arch/arm64/boot/dts/freescale/imx8mm-evk-rohm-pmic.dtsi
>> @@ -0,0 +1,118 @@
>> +// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
>> +/*
>> + * Copyright 2020 NXP
>> + */
>> +
>> +&i2c1 {
>> + pmic at 4b {
>> + compatible = "rohm,bd71847";
>> + reg = <0x4b>;
>> + pinctrl-names = "default";
>> + pinctrl-0 = <&pinctrl_pmic>;
>> + interrupt-parent = <&gpio1>;
>> + interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
>> + rohm,reset-snvs-powered;
>> +
>> + #clock-cells = <0>;
>> + clocks = <&osc_32k 0>;
>> + clock-output-names = "clk-32k-out";
>> +
>> + regulators {
>> + buck1_reg: BUCK1 {
>> + regulator-name = "buck1";
>> + regulator-min-microvolt = <700000>;
>> + regulator-max-microvolt = <1300000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + regulator-ramp-delay = <1250>;
>> + };
>> +
>> + buck2_reg: BUCK2 {
>> + regulator-name = "buck2";
>> + regulator-min-microvolt = <700000>;
>> + regulator-max-microvolt = <1300000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + regulator-ramp-delay = <1250>;
>> + rohm,dvs-run-voltage = <1000000>;
>> + rohm,dvs-idle-voltage = <900000>;
>> + };
>> +
>> + buck3_reg: BUCK3 {
>> + // BUCK5 in datasheet
>> + regulator-name = "buck3";
>> + regulator-min-microvolt = <700000>;
>> + regulator-max-microvolt = <1350000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + buck4_reg: BUCK4 {
>> + // BUCK6 in datasheet
>> + regulator-name = "buck4";
>> + regulator-min-microvolt = <3000000>;
>> + regulator-max-microvolt = <3300000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + buck5_reg: BUCK5 {
>> + // BUCK7 in datasheet
>> + regulator-name = "buck5";
>> + regulator-min-microvolt = <1605000>;
>> + regulator-max-microvolt = <1995000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + buck6_reg: BUCK6 {
>> + // BUCK8 in datasheet
>> + regulator-name = "buck6";
>> + regulator-min-microvolt = <800000>;
>> + regulator-max-microvolt = <1400000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + ldo1_reg: LDO1 {
>> + regulator-name = "ldo1";
>> + regulator-min-microvolt = <1600000>;
>> + regulator-max-microvolt = <3300000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + ldo2_reg: LDO2 {
>> + regulator-name = "ldo2";
>> + regulator-min-microvolt = <800000>;
>> + regulator-max-microvolt = <900000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + ldo3_reg: LDO3 {
>> + regulator-name = "ldo3";
>> + regulator-min-microvolt = <1800000>;
>> + regulator-max-microvolt = <3300000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + ldo4_reg: LDO4 {
>> + regulator-name = "ldo4";
>> + regulator-min-microvolt = <900000>;
>> + regulator-max-microvolt = <1800000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> +
>> + ldo6_reg: LDO6 {
>> + regulator-name = "ldo6";
>> + regulator-min-microvolt = <900000>;
>> + regulator-max-microvolt = <1800000>;
>> + regulator-boot-on;
>> + regulator-always-on;
>> + };
>> + };
>> + };
>> +};
>> diff --git a/arch/arm64/boot/dts/freescale/imx8mm-evk.dts b/arch/arm64/boot/dts/freescale/imx8mm-evk.dts
>> index a2b24d4d4e3e..d2b6d7de7e53 100644
>> --- a/arch/arm64/boot/dts/freescale/imx8mm-evk.dts
>> +++ b/arch/arm64/boot/dts/freescale/imx8mm-evk.dts
>> @@ -7,6 +7,7 @@
>>
>> #include <dt-bindings/usb/pd.h>
>> #include "imx8mm-evk.dtsi"
>> +#include "imx8mm-evk-rohm-pmic.dtsi"
>>
>> / {
>> model = "FSL i.MX8MM EVK board";
>> diff --git a/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi b/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
>> index 7d6317d95b13..21d0614af44c 100644
>> --- a/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
>> +++ b/arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi
>> @@ -182,118 +182,6 @@ &i2c1 {
>> pinctrl-names = "default";
>> pinctrl-0 = <&pinctrl_i2c1>;
>> status = "okay";
>> -
>> - pmic at 4b {
>> - compatible = "rohm,bd71847";
>> - reg = <0x4b>;
>> - pinctrl-names = "default";
>> - pinctrl-0 = <&pinctrl_pmic>;
>> - interrupt-parent = <&gpio1>;
>> - interrupts = <3 IRQ_TYPE_LEVEL_LOW>;
>> - rohm,reset-snvs-powered;
>> -
>> - #clock-cells = <0>;
>> - clocks = <&osc_32k 0>;
>> - clock-output-names = "clk-32k-out";
>> -
>> - regulators {
>> - buck1_reg: BUCK1 {
>> - regulator-name = "buck1";
>> - regulator-min-microvolt = <700000>;
>> - regulator-max-microvolt = <1300000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - regulator-ramp-delay = <1250>;
>> - };
>> -
>> - buck2_reg: BUCK2 {
>> - regulator-name = "buck2";
>> - regulator-min-microvolt = <700000>;
>> - regulator-max-microvolt = <1300000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - regulator-ramp-delay = <1250>;
>> - rohm,dvs-run-voltage = <1000000>;
>> - rohm,dvs-idle-voltage = <900000>;
>> - };
>> -
>> - buck3_reg: BUCK3 {
>> - // BUCK5 in datasheet
>> - regulator-name = "buck3";
>> - regulator-min-microvolt = <700000>;
>> - regulator-max-microvolt = <1350000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> -
>> - buck4_reg: BUCK4 {
>> - // BUCK6 in datasheet
>> - regulator-name = "buck4";
>> - regulator-min-microvolt = <3000000>;
>> - regulator-max-microvolt = <3300000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> -
>> - buck5_reg: BUCK5 {
>> - // BUCK7 in datasheet
>> - regulator-name = "buck5";
>> - regulator-min-microvolt = <1605000>;
>> - regulator-max-microvolt = <1995000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> -
>> - buck6_reg: BUCK6 {
>> - // BUCK8 in datasheet
>> - regulator-name = "buck6";
>> - regulator-min-microvolt = <800000>;
>> - regulator-max-microvolt = <1400000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> -
>> - ldo1_reg: LDO1 {
>> - regulator-name = "ldo1";
>> - regulator-min-microvolt = <1600000>;
>> - regulator-max-microvolt = <3300000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> -
>> - ldo2_reg: LDO2 {
>> - regulator-name = "ldo2";
>> - regulator-min-microvolt = <800000>;
>> - regulator-max-microvolt = <900000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> -
>> - ldo3_reg: LDO3 {
>> - regulator-name = "ldo3";
>> - regulator-min-microvolt = <1800000>;
>> - regulator-max-microvolt = <3300000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> -
>> - ldo4_reg: LDO4 {
>> - regulator-name = "ldo4";
>> - regulator-min-microvolt = <900000>;
>> - regulator-max-microvolt = <1800000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> -
>> - ldo6_reg: LDO6 {
>> - regulator-name = "ldo6";
>> - regulator-min-microvolt = <900000>;
>> - regulator-max-microvolt = <1800000>;
>> - regulator-boot-on;
>> - regulator-always-on;
>> - };
>> - };
>> - };
>> };
>>
>> &i2c2 {
>> --
>> 2.25.1
>>
>>
>>
>
>
--
Pengutronix e.K. | |
Steuerwalder Str. 21 | http://www.pengutronix.de/ |
31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
More information about the linux-arm-kernel
mailing list