[PATCH] arm: dts: imx8mm_evk: Fix PMIC definition

Fabio Estevam festevam at gmail.com
Fri Dec 15 20:07:24 CET 2023


Hi Alexander,

On Tue, Sep 26, 2023 at 3:55 AM Alexander Koch <akoch at initse.com> wrote:
>
> Newer revisions of the i.MX8MM EVK are equipped with a different PMIC than
> the initial ones (PCA9540 instead of BD71847), which has already been
> reflected in 4c07a21e5.

This commit hash does not exist:

$ git show 4c07a21e5
fatal: ambiguous argument '4c07a21e5': unknown revision or path not in
the working tree.

> These changes have been reverted implicitly as part of the device tree
> re-sync with the Linux kernel done in 24a7a3c1c.
>
> This lead to an inconsistent state: while the device tree describes the old
> PMIC again the code in board/freescale/imx8mm_evk/spl.c tries to initialize
> the new PMIC:
>
>     ret = pmic_get("pca9450 at 25", &dev);
>     if (ret == -ENODEV) {
>             puts("No pmic\n");
>             return 0;
>     }

Yes, I agree this is inconsistent and we need to fix it.

>
> This leads to the expected error message from SPL:

> -       pmic at 4b {
> -               compatible = "rohm,bd71847";
> -               reg = <0x4b>;
> -               pinctrl-names = "default";
> +       pmic: pca9450 at 25 {
> +               reg = <0x25>;
> +               compatible = "nxp,pca9450a";

If we change like this, we will lose the change after a sync with the Linux dts.

In Linux we have arch/arm64/boot/dts/freescale/imx8mm-evk.dtsi that contains:

pmic at 4b {
compatible = "rohm,bd71847";

and arch/arm64/boot/dts/freescale/imx8mm-evkb.dts that contains:

&i2c1 {
/delete-node/ pmic at 4b;

pmic at 25 {
compatible = "nxp,pca9450a";

We need to have a new imx8mm-evkb_defconfig in U-Boot to deal with the
PCA9450 PMIC.


More information about the U-Boot mailing list