diff mbox series

[U-Boot] imx: mx6: add is_boot_from_usb define

Message ID 20180424120554.18747-1-sean.nyekjaer@prevas.dk
State Changes Requested
Delegated to: Stefano Babic
Headers show
Series [U-Boot] imx: mx6: add is_boot_from_usb define | expand

Commit Message

Sean Nyekjær April 24, 2018, 12:05 p.m. UTC
This enables us to detect if the i.MX6 SoC
is booting from USB.

Signed-off-by: Sean Nyekjaer <sean.nyekjaer@prevas.dk>
---
 arch/arm/include/asm/arch-mx6/imx-regs.h | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Fabio Estevam April 24, 2018, 12:13 p.m. UTC | #1
Hi Sean,

On Tue, Apr 24, 2018 at 9:05 AM, Sean Nyekjaer <sean.nyekjaer@prevas.dk> wrote:
> This enables us to detect if the i.MX6 SoC
> is booting from USB.
>
> Signed-off-by: Sean Nyekjaer <sean.nyekjaer@prevas.dk>

Could you use is_usbotg_phy_active() for this purpose?

Please see:

commit 7d289d6239b29171bf9503869f1a92c084cf1c35
Author: Stefan Agner <stefan.agner@toradex.com>
Date:   Wed Sep 13 14:29:44 2017 -0700

    imx: add macro to detect whether USB PHY is active

    This macro allows to detect whether the USB PHY is active. This
    is helpful to detect if the boot ROM has previously started the
    USB serial downloader.

    The idea is taken from the mfgtool support in the NXP U-Boot:
    http://git.freescale.com/git/cgit.cgi/imx/uboot-imx.git/commit/?h=imx_v2016.03_4.1.15_2.0.0_ga&id=a352ed3c5184b95c4c9f7468f5fbb5f43de5e412

    Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
    Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
    Tested-by: Fabio Estevam <fabio.estevam@nxp.com>
    Reviewed-by: Eric Nelson <eric@nelint.com>
Sean Nyekjær April 24, 2018, 12:36 p.m. UTC | #2
Hi Fabio
On 24 April 2018 14:13:51 CEST, Fabio Estevam <festevam@gmail.com> wrote:
>Hi Sean,
>
>On Tue, Apr 24, 2018 at 9:05 AM, Sean Nyekjaer
><sean.nyekjaer@prevas.dk> wrote:
>> This enables us to detect if the i.MX6 SoC
>> is booting from USB.
>>
>> Signed-off-by: Sean Nyekjaer <sean.nyekjaer@prevas.dk>
>
>Could you use is_usbotg_phy_active() for this purpose?
>
>Please see:
>
>commit 7d289d6239b29171bf9503869f1a92c084cf1c35
>Author: Stefan Agner <stefan.agner@toradex.com>
>Date:   Wed Sep 13 14:29:44 2017 -0700
>
>    imx: add macro to detect whether USB PHY is active
>
>    This macro allows to detect whether the USB PHY is active. This
>    is helpful to detect if the boot ROM has previously started the
>    USB serial downloader.
>
>    The idea is taken from the mfgtool support in the NXP U-Boot:
>http://git.freescale.com/git/cgit.cgi/imx/uboot-imx.git/commit/?h=imx_v2016.03_4.1.15_2.0.0_ga&id=a352ed3c5184b95c4c9f7468f5fbb5f43de5e412
Mine was also taken from that commit.
Yes I could use this instead :-) the mx7 is using the same naming as the NXP uboot for the mx6 that why I missed that...

/Sean
>
>    Signed-off-by: Stefan Agner <stefan.agner@toradex.com>
>    Acked-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
>    Tested-by: Fabio Estevam <fabio.estevam@nxp.com>
>    Reviewed-by: Eric Nelson <eric@nelint.com>
diff mbox series

Patch

diff --git a/arch/arm/include/asm/arch-mx6/imx-regs.h b/arch/arm/include/asm/arch-mx6/imx-regs.h
index 095eb74195..10da611968 100644
--- a/arch/arm/include/asm/arch-mx6/imx-regs.h
+++ b/arch/arm/include/asm/arch-mx6/imx-regs.h
@@ -998,4 +998,11 @@  struct pwm_regs {
 	u32	cnr;
 };
 #endif /* __ASSEMBLER__*/
+
+/*
+ * If ROM fail back to USB recover mode, USBPH0_PWD will be clear to use USB
+ * If boot from the other mode, USB0_PWD will keep reset value
+ */
+#define is_boot_from_usb(void)	(!(readl(USB_PHY0_BASE_ADDR) & (1 << 20)))
+
 #endif /* __ASM_ARCH_MX6_IMX_REGS_H__ */