All of lore.kernel.org
 help / color / mirror / Atom feed
From: Aswath Govindraju <a-govindraju@ti.com>
Cc: Kishon Vijay Abraham I <kishon@ti.com>,
	Praneeth Bajjuri <praneeth@ti.com>,
	Aswath Govindraju <a-govindraju@ti.com>,
	Lokesh Vutla <lokeshvutla@ti.com>,
	Dave Gerlach <d-gerlach@ti.com>,
	Vignesh Raghavendra <vigneshr@ti.com>, Nishanth Menon <nm@ti.com>,
	Suman Anna <s-anna@ti.com>, Keerthy <j-keerthy@ti.com>,
	<u-boot@lists.denx.de>
Subject: [PATCH v3 02/10] arm: mach-k3: am642_init: Add support for USB boot mode
Date: Fri, 4 Jun 2021 22:00:32 +0530	[thread overview]
Message-ID: <20210604163043.12811-3-a-govindraju@ti.com> (raw)
In-Reply-To: <20210604163043.12811-1-a-govindraju@ti.com>

Add support for identifying USB host and device boot modes

Signed-off-by: Aswath Govindraju <a-govindraju@ti.com>
---
 arch/arm/mach-k3/am642_init.c                 | 13 +++++++++++--
 arch/arm/mach-k3/include/mach/am64_hardware.h |  5 +++++
 arch/arm/mach-k3/include/mach/am64_spl.h      |  6 ++++--
 3 files changed, 20 insertions(+), 4 deletions(-)

diff --git a/arch/arm/mach-k3/am642_init.c b/arch/arm/mach-k3/am642_init.c
index a433702b4e30..1a2bc4bb9048 100644
--- a/arch/arm/mach-k3/am642_init.c
+++ b/arch/arm/mach-k3/am642_init.c
@@ -192,8 +192,11 @@ static u32 __get_backup_bootmedia(u32 main_devstat)
 	case BACKUP_BOOT_DEVICE_UART:
 		return BOOT_DEVICE_UART;
 
-	case BACKUP_BOOT_DEVICE_USB:
-		return BOOT_DEVICE_USB;
+	case BACKUP_BOOT_DEVICE_DFU:
+		if (bkup_bootmode_cfg & MAIN_DEVSTAT_BACKUP_USB_MODE_MASK)
+			return BOOT_DEVICE_USB;
+		return BOOT_DEVICE_DFU;
+
 
 	case BACKUP_BOOT_DEVICE_ETHERNET:
 		return BOOT_DEVICE_ETHERNET;
@@ -245,6 +248,12 @@ static u32 __get_primary_bootmedia(u32 main_devstat)
 			return BOOT_DEVICE_MMC2;
 		return BOOT_DEVICE_MMC1;
 
+	case BOOT_DEVICE_DFU:
+		if ((bootmode_cfg & MAIN_DEVSTAT_PRIMARY_USB_MODE_MASK) >>
+		    MAIN_DEVSTAT_PRIMARY_USB_MODE_SHIFT)
+			return BOOT_DEVICE_USB;
+		return BOOT_DEVICE_DFU;
+
 	case BOOT_DEVICE_NOBOOT:
 		return BOOT_DEVICE_RAM;
 	}
diff --git a/arch/arm/mach-k3/include/mach/am64_hardware.h b/arch/arm/mach-k3/include/mach/am64_hardware.h
index c368aa7e6bf1..4ee41ad762ba 100644
--- a/arch/arm/mach-k3/include/mach/am64_hardware.h
+++ b/arch/arm/mach-k3/include/mach/am64_hardware.h
@@ -30,6 +30,11 @@
 #define MAIN_DEVSTAT_PRIMARY_MMC_PORT_SHIFT		2
 #define MAIN_DEVSTAT_PRIMARY_MMC_PORT_MASK		0x04
 
+#define MAIN_DEVSTAT_PRIMARY_USB_MODE_SHIFT		1
+#define MAIN_DEVSTAT_PRIMARY_USB_MODE_MASK		0x02
+
+#define MAIN_DEVSTAT_BACKUP_USB_MODE_MASK		0x01
+
 /*
  * The CTRL_MMR and PADCFG_MMR memory space is divided into several
  * equally-spaced partitions, so defining the partition size allows us to
diff --git a/arch/arm/mach-k3/include/mach/am64_spl.h b/arch/arm/mach-k3/include/mach/am64_spl.h
index 36826cfc4ed0..607b09c2e5dc 100644
--- a/arch/arm/mach-k3/include/mach/am64_spl.h
+++ b/arch/arm/mach-k3/include/mach/am64_spl.h
@@ -19,7 +19,8 @@
 #define BOOT_DEVICE_MMC			0x08
 #define BOOT_DEVICE_EMMC		0x09
 
-#define BOOT_DEVICE_USB			0x0A
+#define BOOT_DEVICE_USB			0x2A
+#define BOOT_DEVICE_DFU			0x0A
 #define BOOT_DEVICE_GPMC_NOR		0x0C
 #define BOOT_DEVICE_PCIE		0x0D
 #define BOOT_DEVICE_XSPI		0x0E
@@ -32,12 +33,13 @@
 #define BOOT_DEVICE_MMC2_2		0x1F
 
 /* Backup BootMode devices */
-#define BACKUP_BOOT_DEVICE_USB		0x01
+#define BACKUP_BOOT_DEVICE_DFU		0x01
 #define BACKUP_BOOT_DEVICE_UART		0x03
 #define BACKUP_BOOT_DEVICE_ETHERNET	0x04
 #define BACKUP_BOOT_DEVICE_MMC		0x05
 #define BACKUP_BOOT_DEVICE_SPI		0x06
 #define BACKUP_BOOT_DEVICE_I2C		0x07
+#define BACKUP_BOOT_DEVICE_USB		0x09
 
 #define K3_PRIMARY_BOOTMODE		0x0
 
-- 
2.17.1


  parent reply	other threads:[~2021-06-04 16:31 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-06-04 16:30 [PATCH v3 00/10] AM642-EVM: Add USB support Aswath Govindraju
2021-06-04 16:30 ` [PATCH v3 01/10] tools: k3_fit_atf: Add support for providing ATF load address using a Kconfig symbol Aswath Govindraju
2021-06-04 16:30 ` Aswath Govindraju [this message]
2021-06-04 16:30 ` [PATCH v3 03/10] arm: mach-k3: am642_init: Do USB fixups to facilitate host and device boot modes Aswath Govindraju
2021-06-04 16:30 ` [PATCH v3 04/10] board: ti: am64x: Set the core voltage of USB PHY to 0.85V Aswath Govindraju
2021-06-04 16:30 ` [PATCH v3 05/10] arm: dts: k3-am64-main: Add USB DT nodes Aswath Govindraju
2021-06-04 16:30 ` [PATCH v3 06/10] arm: dts: k3-am642-*-evm: Add USB support Aswath Govindraju
2021-06-04 16:30 ` [PATCH v3 07/10] arm: dts: k3-am642-evm-u-boot: Add U-Boot tags and fix the dr_mode to peripheral for USB subsystem Aswath Govindraju
2021-06-04 16:30 ` [PATCH v3 08/10] configs: am64x_evm_*_defconfig: Rearrange the components in SRAM to satisfy the limitations for USB DFU boot mode Aswath Govindraju
2021-06-04 16:30 ` [PATCH v3 09/10] arm: dts: k3-am64-main: Update the location of ATF in SRAM and increase its max size Aswath Govindraju
2021-06-04 16:30 ` [PATCH v3 10/10] configs: am64: Enable configs to support USB host and device modes Aswath Govindraju
2021-06-04 16:48 ` [PATCH v3 00/10] AM642-EVM: Add USB support Praneeth Bajjuri
2021-06-04 16:49   ` Aswath Govindraju
2021-06-04 16:53     ` Praneeth Bajjuri
2021-06-07  4:16       ` Praneeth Bajjuri
2021-06-09 12:30 ` Aswath Govindraju
2021-06-09 16:55 ` Lokesh Vutla

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210604163043.12811-3-a-govindraju@ti.com \
    --to=a-govindraju@ti.com \
    --cc=d-gerlach@ti.com \
    --cc=j-keerthy@ti.com \
    --cc=kishon@ti.com \
    --cc=lokeshvutla@ti.com \
    --cc=nm@ti.com \
    --cc=praneeth@ti.com \
    --cc=s-anna@ti.com \
    --cc=u-boot@lists.denx.de \
    --cc=vigneshr@ti.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.