All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper
@ 2020-02-19 13:04 Igor Opaniuk
  2020-02-19 13:04 ` [PATCH v1 2/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
                   ` (3 more replies)
  0 siblings, 4 replies; 9+ messages in thread
From: Igor Opaniuk @ 2020-02-19 13:04 UTC (permalink / raw)
  To: u-boot

From: Igor Opaniuk <igor.opaniuk@toradex.com>

For non-SPL/TPL setups dm-spl, dm-tpl, dm-pre-proper, dm-pre-reloc are
handled equally, forcing the nodes with these properties
to be accessible and device being probed
before pre-relocation of U-Boot proper (drivers/core/util.c):

bool ofnode_pre_reloc(ofnode node)
{
    /* for SPL and TPL the remaining nodes after the fdtgrep 1st pass
     * had property dm-pre-reloc or u-boot,dm-spl/tpl.
     * They are removed in final dtb (fdtgrep 2nd pass)
     */
    return true;
    if (ofnode_read_bool(node, "u-boot,dm-pre-reloc"))
        return true;
    if (ofnode_read_bool(node, "u-boot,dm-pre-proper"))
        return true;

    /*
     * In regular builds individual spl and tpl handling both
     * count as handled pre-relocation for later second init.
     */
    if (ofnode_read_bool(node, "u-boot,dm-spl") ||
        ofnode_read_bool(node, "u-boot,dm-tpl"))
        return true;

    return false;
}

Howewer, to avoid confusion in future, replace dm-spl
`%s/dm-spl/dm-pre-proper/g` properties to dm-pre-proper
to explicitly state that they are handled during pre-relocation
stage of U-Boot proper.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
---

 arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi | 62 +++++++++++-----------
 1 file changed, 31 insertions(+), 31 deletions(-)

diff --git a/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi b/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
index 7b1a9550e4..6cdf58c8ad 100644
--- a/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
+++ b/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
@@ -4,125 +4,125 @@
  */
 
 &mu {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &clk {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &iomuxc {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio0 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio3 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio4 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio5 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio6 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio7 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_conn {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_conn_sdch0 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_conn_sdch1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_conn_sdch2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio0 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio3 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio4 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio5 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio6 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio7 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &lpuart0 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &lpuart1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &lpuart2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &lpuart3 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &usdhc1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &usdhc2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &usdhc3 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH v1 2/4] ARM: dts: imx8qxp-colibri: replace dm-spl with dm-pre-proper
  2020-02-19 13:04 [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper Igor Opaniuk
@ 2020-02-19 13:04 ` Igor Opaniuk
  2020-02-19 13:36   ` Oleksandr Suvorov
  2020-02-19 13:04 ` [PATCH v1 3/4] ARM: dts: imx8qm-apalis: dm-pre-proper for pd_dma nodes Igor Opaniuk
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 9+ messages in thread
From: Igor Opaniuk @ 2020-02-19 13:04 UTC (permalink / raw)
  To: u-boot

From: Igor Opaniuk <igor.opaniuk@toradex.com>

For non-SPL/TPL setups dm-spl, dm-tpl, dm-pre-proper, dm-pre-reloc are
handled equally, forcing the nodes with these properties
to be accessible and device being probed
before pre-relocation of U-Boot proper (drivers/core/util.c):

bool ofnode_pre_reloc(ofnode node)
{
    /* for SPL and TPL the remaining nodes after the fdtgrep 1st pass
     * had property dm-pre-reloc or u-boot,dm-spl/tpl.
     * They are removed in final dtb (fdtgrep 2nd pass)
     */
    return true;
    if (ofnode_read_bool(node, "u-boot,dm-pre-reloc"))
        return true;
    if (ofnode_read_bool(node, "u-boot,dm-pre-proper"))
        return true;

    /*
     * In regular builds individual spl and tpl handling both
     * count as handled pre-relocation for later second init.
     */
    if (ofnode_read_bool(node, "u-boot,dm-spl") ||
        ofnode_read_bool(node, "u-boot,dm-tpl"))
        return true;

    return false;
}

Howewer, to avoid confusion in future, replace dm-spl
`%s/dm-spl/dm-pre-proper/g` properties to dm-pre-proper
to explicitly state that they are handled during pre-relocation
stage of U-Boot proper.

Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
---

 arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi | 56 ++++++++++----------
 1 file changed, 28 insertions(+), 28 deletions(-)

diff --git a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
index 5b061f94ba..87de9b5653 100644
--- a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
+++ b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
@@ -5,113 +5,113 @@
 
 &{/imx8qx-pm} {
 
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &mu {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &clk {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &iomuxc {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio0 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio3 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio4 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio5 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio6 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_lsio_gpio7 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_conn {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_conn_sdch0 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_conn_sdch1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &pd_conn_sdch2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio0 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio3 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio4 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio5 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio6 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &gpio7 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &lpuart3 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &usdhc1 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
 
 &usdhc2 {
-	u-boot,dm-spl;
+	u-boot,dm-pre-proper;
 };
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH v1 3/4] ARM: dts: imx8qm-apalis: dm-pre-proper for pd_dma nodes
  2020-02-19 13:04 [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper Igor Opaniuk
  2020-02-19 13:04 ` [PATCH v1 2/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
@ 2020-02-19 13:04 ` Igor Opaniuk
  2020-02-19 13:37   ` Oleksandr Suvorov
  2020-02-19 13:04 ` [PATCH v1 4/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
  2020-02-19 13:36 ` [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper Oleksandr Suvorov
  3 siblings, 1 reply; 9+ messages in thread
From: Igor Opaniuk @ 2020-02-19 13:04 UTC (permalink / raw)
  To: u-boot

From: Igor Opaniuk <igor.opaniuk@toradex.com>

pd_dma_* nodes should be accessible during pre-relocation stage of
U-Boot proper for properly handling power domains.

This fixes the issue with permanent failing of invocation of
power_domain_get_by_index() in the common code of DM power domain
uclass (drivers/power/domain/power-domain-uclass.c).

Fixes: f0cc4eae9a ("core: device: use dev_power_domain_on")
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
---

 arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi | 8 ++++++++
 1 file changed, 8 insertions(+)

diff --git a/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi b/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
index 6cdf58c8ad..956d724979 100644
--- a/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
+++ b/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
@@ -51,6 +51,14 @@
 	u-boot,dm-pre-proper;
 };
 
+&pd_dma {
+	u-boot,dm-pre-proper;
+};
+
+&pd_dma_lpuart1 {
+	u-boot,dm-pre-proper;
+};
+
 &pd_conn {
 	u-boot,dm-pre-proper;
 };
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH v1 4/4] ARM: dts: imx8qxp-colibri: dm-pre-proper for pd_dma nodes
  2020-02-19 13:04 [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper Igor Opaniuk
  2020-02-19 13:04 ` [PATCH v1 2/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
  2020-02-19 13:04 ` [PATCH v1 3/4] ARM: dts: imx8qm-apalis: dm-pre-proper for pd_dma nodes Igor Opaniuk
@ 2020-02-19 13:04 ` Igor Opaniuk
  2020-02-19 13:38   ` Oleksandr Suvorov
  2020-02-19 13:36 ` [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper Oleksandr Suvorov
  3 siblings, 1 reply; 9+ messages in thread
From: Igor Opaniuk @ 2020-02-19 13:04 UTC (permalink / raw)
  To: u-boot

From: Igor Opaniuk <igor.opaniuk@toradex.com>

pd_dma_* nodes should be accessible during pre-relocation stage of
U-Boot proper for properly handling power domains.

This fixes the issue with permanent failing of invocation of
power_domain_get_by_index() in the common code of DM power domain
uclass (drivers/power/domain/power-domain-uclass.c).

Fixes: f0cc4eae9a ("core: device: use dev_power_domain_on")
Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
---

 arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
index 87de9b5653..322429a98a 100644
--- a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
+++ b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
@@ -56,6 +56,18 @@
 	u-boot,dm-pre-proper;
 };
 
+&pd_dma {
+	u-boot,dm-pre-proper;
+};
+
+&pd_dma_lpuart0 {
+	u-boot,dm-pre-proper;
+};
+
+&pd_dma_lpuart3 {
+	u-boot,dm-pre-proper;
+};
+
 &pd_conn {
 	u-boot,dm-pre-proper;
 };
-- 
2.17.1

^ permalink raw reply related	[flat|nested] 9+ messages in thread

* [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper
  2020-02-19 13:04 [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper Igor Opaniuk
                   ` (2 preceding siblings ...)
  2020-02-19 13:04 ` [PATCH v1 4/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
@ 2020-02-19 13:36 ` Oleksandr Suvorov
  3 siblings, 0 replies; 9+ messages in thread
From: Oleksandr Suvorov @ 2020-02-19 13:36 UTC (permalink / raw)
  To: u-boot

On Wed, Feb 19, 2020 at 3:05 PM Igor Opaniuk <igor.opaniuk@gmail.com> wrote:
>
> From: Igor Opaniuk <igor.opaniuk@toradex.com>
>
> For non-SPL/TPL setups dm-spl, dm-tpl, dm-pre-proper, dm-pre-reloc are
> handled equally, forcing the nodes with these properties
> to be accessible and device being probed
> before pre-relocation of U-Boot proper (drivers/core/util.c):
>
> bool ofnode_pre_reloc(ofnode node)
> {
>     /* for SPL and TPL the remaining nodes after the fdtgrep 1st pass
>      * had property dm-pre-reloc or u-boot,dm-spl/tpl.
>      * They are removed in final dtb (fdtgrep 2nd pass)
>      */
>     return true;
>     if (ofnode_read_bool(node, "u-boot,dm-pre-reloc"))
>         return true;
>     if (ofnode_read_bool(node, "u-boot,dm-pre-proper"))
>         return true;
>
>     /*
>      * In regular builds individual spl and tpl handling both
>      * count as handled pre-relocation for later second init.
>      */
>     if (ofnode_read_bool(node, "u-boot,dm-spl") ||
>         ofnode_read_bool(node, "u-boot,dm-tpl"))
>         return true;
>
>     return false;
> }
>
> Howewer, to avoid confusion in future, replace dm-spl
> `%s/dm-spl/dm-pre-proper/g` properties to dm-pre-proper
> to explicitly state that they are handled during pre-relocation
> stage of U-Boot proper.
>
> Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>

Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>

> ---
>
>  arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi | 62 +++++++++++-----------
>  1 file changed, 31 insertions(+), 31 deletions(-)
>
> diff --git a/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi b/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
> index 7b1a9550e4..6cdf58c8ad 100644
> --- a/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
> +++ b/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
> @@ -4,125 +4,125 @@
>   */
>
>  &mu {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &clk {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &iomuxc {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio0 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio3 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio4 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio5 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio6 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio7 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_conn {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_conn_sdch0 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_conn_sdch1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_conn_sdch2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio0 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio3 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio4 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio5 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio6 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio7 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &lpuart0 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &lpuart1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &lpuart2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &lpuart3 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &usdhc1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &usdhc2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &usdhc3 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
> --
> 2.17.1
>


-- 
Best regards
Oleksandr Suvorov

Toradex AG
Altsagenstrasse 5 | 6048 Horw/Luzern | Switzerland | T: +41 41 500
4800 (main line)

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v1 2/4] ARM: dts: imx8qxp-colibri: replace dm-spl with dm-pre-proper
  2020-02-19 13:04 ` [PATCH v1 2/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
@ 2020-02-19 13:36   ` Oleksandr Suvorov
  0 siblings, 0 replies; 9+ messages in thread
From: Oleksandr Suvorov @ 2020-02-19 13:36 UTC (permalink / raw)
  To: u-boot

On Wed, Feb 19, 2020 at 3:05 PM Igor Opaniuk <igor.opaniuk@gmail.com> wrote:
>
> From: Igor Opaniuk <igor.opaniuk@toradex.com>
>
> For non-SPL/TPL setups dm-spl, dm-tpl, dm-pre-proper, dm-pre-reloc are
> handled equally, forcing the nodes with these properties
> to be accessible and device being probed
> before pre-relocation of U-Boot proper (drivers/core/util.c):
>
> bool ofnode_pre_reloc(ofnode node)
> {
>     /* for SPL and TPL the remaining nodes after the fdtgrep 1st pass
>      * had property dm-pre-reloc or u-boot,dm-spl/tpl.
>      * They are removed in final dtb (fdtgrep 2nd pass)
>      */
>     return true;
>     if (ofnode_read_bool(node, "u-boot,dm-pre-reloc"))
>         return true;
>     if (ofnode_read_bool(node, "u-boot,dm-pre-proper"))
>         return true;
>
>     /*
>      * In regular builds individual spl and tpl handling both
>      * count as handled pre-relocation for later second init.
>      */
>     if (ofnode_read_bool(node, "u-boot,dm-spl") ||
>         ofnode_read_bool(node, "u-boot,dm-tpl"))
>         return true;
>
>     return false;
> }
>
> Howewer, to avoid confusion in future, replace dm-spl
> `%s/dm-spl/dm-pre-proper/g` properties to dm-pre-proper
> to explicitly state that they are handled during pre-relocation
> stage of U-Boot proper.
>
> Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>

Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>

> ---
>
>  arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi | 56 ++++++++++----------
>  1 file changed, 28 insertions(+), 28 deletions(-)
>
> diff --git a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> index 5b061f94ba..87de9b5653 100644
> --- a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> +++ b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> @@ -5,113 +5,113 @@
>
>  &{/imx8qx-pm} {
>
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &mu {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &clk {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &iomuxc {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio0 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio3 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio4 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio5 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio6 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_lsio_gpio7 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_conn {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_conn_sdch0 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_conn_sdch1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &pd_conn_sdch2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio0 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio3 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio4 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio5 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio6 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &gpio7 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &lpuart3 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &usdhc1 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
>
>  &usdhc2 {
> -       u-boot,dm-spl;
> +       u-boot,dm-pre-proper;
>  };
> --
> 2.17.1
>


-- 
Best regards
Oleksandr Suvorov

Toradex AG
Altsagenstrasse 5 | 6048 Horw/Luzern | Switzerland | T: +41 41 500
4800 (main line)

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v1 3/4] ARM: dts: imx8qm-apalis: dm-pre-proper for pd_dma nodes
  2020-02-19 13:04 ` [PATCH v1 3/4] ARM: dts: imx8qm-apalis: dm-pre-proper for pd_dma nodes Igor Opaniuk
@ 2020-02-19 13:37   ` Oleksandr Suvorov
  0 siblings, 0 replies; 9+ messages in thread
From: Oleksandr Suvorov @ 2020-02-19 13:37 UTC (permalink / raw)
  To: u-boot

On Wed, Feb 19, 2020 at 3:05 PM Igor Opaniuk <igor.opaniuk@gmail.com> wrote:
>
> From: Igor Opaniuk <igor.opaniuk@toradex.com>
>
> pd_dma_* nodes should be accessible during pre-relocation stage of
> U-Boot proper for properly handling power domains.
>
> This fixes the issue with permanent failing of invocation of
> power_domain_get_by_index() in the common code of DM power domain
> uclass (drivers/power/domain/power-domain-uclass.c).
>
> Fixes: f0cc4eae9a ("core: device: use dev_power_domain_on")
> Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>

Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>

> ---
>
>  arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi | 8 ++++++++
>  1 file changed, 8 insertions(+)
>
> diff --git a/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi b/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
> index 6cdf58c8ad..956d724979 100644
> --- a/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
> +++ b/arch/arm/dts/fsl-imx8qm-apalis-u-boot.dtsi
> @@ -51,6 +51,14 @@
>         u-boot,dm-pre-proper;
>  };
>
> +&pd_dma {
> +       u-boot,dm-pre-proper;
> +};
> +
> +&pd_dma_lpuart1 {
> +       u-boot,dm-pre-proper;
> +};
> +
>  &pd_conn {
>         u-boot,dm-pre-proper;
>  };
> --
> 2.17.1
>


-- 
Best regards
Oleksandr Suvorov

Toradex AG
Altsagenstrasse 5 | 6048 Horw/Luzern | Switzerland | T: +41 41 500
4800 (main line)

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v1 4/4] ARM: dts: imx8qxp-colibri: dm-pre-proper for pd_dma nodes
  2020-02-19 13:04 ` [PATCH v1 4/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
@ 2020-02-19 13:38   ` Oleksandr Suvorov
  2020-03-11 13:37     ` Igor Opaniuk
  0 siblings, 1 reply; 9+ messages in thread
From: Oleksandr Suvorov @ 2020-02-19 13:38 UTC (permalink / raw)
  To: u-boot

On Wed, Feb 19, 2020 at 3:05 PM Igor Opaniuk <igor.opaniuk@gmail.com> wrote:
>
> From: Igor Opaniuk <igor.opaniuk@toradex.com>
>
> pd_dma_* nodes should be accessible during pre-relocation stage of
> U-Boot proper for properly handling power domains.
>
> This fixes the issue with permanent failing of invocation of
> power_domain_get_by_index() in the common code of DM power domain
> uclass (drivers/power/domain/power-domain-uclass.c).
>
> Fixes: f0cc4eae9a ("core: device: use dev_power_domain_on")
> Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>

Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>

> ---
>
>  arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi | 12 ++++++++++++
>  1 file changed, 12 insertions(+)
>
> diff --git a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> index 87de9b5653..322429a98a 100644
> --- a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> +++ b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> @@ -56,6 +56,18 @@
>         u-boot,dm-pre-proper;
>  };
>
> +&pd_dma {
> +       u-boot,dm-pre-proper;
> +};
> +
> +&pd_dma_lpuart0 {
> +       u-boot,dm-pre-proper;
> +};
> +
> +&pd_dma_lpuart3 {
> +       u-boot,dm-pre-proper;
> +};
> +
>  &pd_conn {
>         u-boot,dm-pre-proper;
>  };
> --
> 2.17.1
>


-- 
Best regards
Oleksandr Suvorov

Toradex AG
Altsagenstrasse 5 | 6048 Horw/Luzern | Switzerland | T: +41 41 500
4800 (main line)

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [PATCH v1 4/4] ARM: dts: imx8qxp-colibri: dm-pre-proper for pd_dma nodes
  2020-02-19 13:38   ` Oleksandr Suvorov
@ 2020-03-11 13:37     ` Igor Opaniuk
  0 siblings, 0 replies; 9+ messages in thread
From: Igor Opaniuk @ 2020-03-11 13:37 UTC (permalink / raw)
  To: u-boot

Hi Stefano,

On Wed, Feb 19, 2020 at 3:38 PM Oleksandr Suvorov
<oleksandr.suvorov@toradex.com> wrote:
>
> On Wed, Feb 19, 2020 at 3:05 PM Igor Opaniuk <igor.opaniuk@gmail.com> wrote:
> >
> > From: Igor Opaniuk <igor.opaniuk@toradex.com>
> >
> > pd_dma_* nodes should be accessible during pre-relocation stage of
> > U-Boot proper for properly handling power domains.
> >
> > This fixes the issue with permanent failing of invocation of
> > power_domain_get_by_index() in the common code of DM power domain
> > uclass (drivers/power/domain/power-domain-uclass.c).
> >
> > Fixes: f0cc4eae9a ("core: device: use dev_power_domain_on")
> > Signed-off-by: Igor Opaniuk <igor.opaniuk@toradex.com>
>
> Reviewed-by: Oleksandr Suvorov <oleksandr.suvorov@toradex.com>
>
> > ---
> >
> >  arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi | 12 ++++++++++++
> >  1 file changed, 12 insertions(+)
> >
> > diff --git a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> > index 87de9b5653..322429a98a 100644
> > --- a/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> > +++ b/arch/arm/dts/fsl-imx8qxp-colibri-u-boot.dtsi
> > @@ -56,6 +56,18 @@
> >         u-boot,dm-pre-proper;
> >  };
> >
> > +&pd_dma {
> > +       u-boot,dm-pre-proper;
> > +};
> > +
> > +&pd_dma_lpuart0 {
> > +       u-boot,dm-pre-proper;
> > +};
> > +
> > +&pd_dma_lpuart3 {
> > +       u-boot,dm-pre-proper;
> > +};
> > +
> >  &pd_conn {
> >         u-boot,dm-pre-proper;
> >  };
> > --
> > 2.17.1
> >
>
>
> --
> Best regards
> Oleksandr Suvorov
>
> Toradex AG
> Altsagenstrasse 5 | 6048 Horw/Luzern | Switzerland | T: +41 41 500
> 4800 (main line)

Could you please pull this patch-series for v2020.04, as it fixes
broken U-Boot on both Colibri iMX8QXP/Apalis iMX8QM?

Thanks!

-- 
Best regards - Freundliche Gr?sse - Meilleures salutations

Igor Opaniuk

mailto: igor.opaniuk at gmail.com
skype: igor.opanyuk
+380 (93) 836 40 67
http://ua.linkedin.com/in/iopaniuk

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2020-03-11 13:37 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-02-19 13:04 [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper Igor Opaniuk
2020-02-19 13:04 ` [PATCH v1 2/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
2020-02-19 13:36   ` Oleksandr Suvorov
2020-02-19 13:04 ` [PATCH v1 3/4] ARM: dts: imx8qm-apalis: dm-pre-proper for pd_dma nodes Igor Opaniuk
2020-02-19 13:37   ` Oleksandr Suvorov
2020-02-19 13:04 ` [PATCH v1 4/4] ARM: dts: imx8qxp-colibri: " Igor Opaniuk
2020-02-19 13:38   ` Oleksandr Suvorov
2020-03-11 13:37     ` Igor Opaniuk
2020-02-19 13:36 ` [PATCH v1 1/4] ARM: dts: imx8qm-apalis: replace dm-spl with dm-pre-proper Oleksandr Suvorov

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.