From mboxrd@z Thu Jan 1 00:00:00 1970 From: Stefan Roese Date: Tue, 24 Mar 2020 08:22:57 +0100 Subject: [PATCH v2 2/2] arm: mvebu: clearfog: support multiple SATA boot In-Reply-To: <20200323172632.206912-2-mrjoel@lixil.net> References: <20200323172632.206912-1-mrjoel@lixil.net> <20200323172632.206912-2-mrjoel@lixil.net> Message-ID: <9be34d9d-5b92-6e1f-d63a-ec9bf88d9dc5@denx.de> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 23.03.20 18:26, Joel Johnson wrote: > Enable distro bootcmd support for additional SATA ports if enabled. > > Signed-off-by: Joel Johnson Reviewed-by: Stefan Roese Thanks, Stefan > --- > > > This patch builds on and requires the separate patch in the > "ClearFog Base static variant support" series adding configurable > SATA support ("arm: mvebu: clearfog: Add SATA mode flags"). > > v2 changes: > - name macros SCSI_BUSN to better distinguish between bus and connection > - move not SCSI case first, otherwise it tends to get lost > > --- > include/configs/clearfog.h | 38 ++++++++++++++++++++++++++++++++++---- > 1 file changed, 34 insertions(+), 4 deletions(-) > > diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h > index a452f4b009..0c314c4c53 100644 > --- a/include/configs/clearfog.h > +++ b/include/configs/clearfog.h > @@ -110,16 +110,46 @@ > #define BOOT_TARGET_DEVICES_USB(func) > #endif > > -#ifdef CONFIG_SCSI > -#define BOOT_TARGET_DEVICES_SCSI(func) func(SCSI, scsi, 0) > +#ifndef CONFIG_SCSI > +#define BOOT_TARGET_DEVICES_SCSI_BUS0(func) > +#define BOOT_TARGET_DEVICES_SCSI_BUS1(func) > +#define BOOT_TARGET_DEVICES_SCSI_BUS2(func) > +#else > +/* > + * With SCSI enabled, M.2 SATA is always located on bus 0 > + */ > +#define BOOT_TARGET_DEVICES_SCSI_BUS0(func) func(SCSI, scsi, 0) > + > +/* > + * Either one or both mPCIe slots may be configured as mSATA interfaces. The > + * SCSI bus ids are assigned based on sequence of hardware present, not always > + * tied to hardware slot ids. As such, use second SCSI bus if either slot is > + * set for SATA, and only use third SCSI bus if both slots are SATA enabled. > + */ > +#if defined (CONFIG_CLEARFOG_CON2_SATA) || defined (CONFIG_CLEARFOG_CON3_SATA) > +#define BOOT_TARGET_DEVICES_SCSI_BUS1(func) func(SCSI, scsi, 1) > #else > -#define BOOT_TARGET_DEVICES_SCSI(func) > +#define BOOT_TARGET_DEVICES_SCSI_BUS1(func) > #endif > > +#if defined (CONFIG_CLEARFOG_CON2_SATA) && defined (CONFIG_CLEARFOG_CON3_SATA) > +#define BOOT_TARGET_DEVICES_SCSI_BUS2(func) func(SCSI, scsi, 2) > +#else > +#define BOOT_TARGET_DEVICES_SCSI_BUS2(func) > +#endif > + > +#endif /* CONFIG_SCSI */ > + > +/* > + * The SCSI buses are attempted in increasing bus order, there is no current > + * mechanism to alter the default bus priority order for booting. > + */ > #define BOOT_TARGET_DEVICES(func) \ > BOOT_TARGET_DEVICES_MMC(func) \ > BOOT_TARGET_DEVICES_USB(func) \ > - BOOT_TARGET_DEVICES_SCSI(func) \ > + BOOT_TARGET_DEVICES_SCSI_BUS0(func) \ > + BOOT_TARGET_DEVICES_SCSI_BUS1(func) \ > + BOOT_TARGET_DEVICES_SCSI_BUS2(func) \ > func(PXE, pxe, na) \ > func(DHCP, dhcp, na) > > Viele Gr??e, Stefan -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-51 Fax: (+49)-8142-66989-80 Email: sr at denx.de