diff mbox series

[1/2] arm: mvebu: clearfog: add SCSI to distro bootcmd

Message ID 20200129035945.37765-1-mrjoel@lixil.net
State Superseded
Headers show
Series [1/2] arm: mvebu: clearfog: add SCSI to distro bootcmd | expand

Commit Message

Joel Johnson Jan. 29, 2020, 3:59 a.m. UTC
Include attempting to boot from SCSI (SATA) devices within generated
board distro bootcmd environment. The reasoning for boot ordering is
that MMC and USB are external and removable, while when a case is in
use, replacing M.2 or mSATA drives requires disassembly. Therefore,
to boot SCSI, [bootable] external media must be removed. If SCSI were
placed before MMC or USB, then removing a bootable SCSI drive to
enable MMC or USB booting would be more difficult.

Signed-off-by: Joel Johnson <mrjoel at lixil.net>

---

 include/configs/clearfog.h | 7 +++++++
 1 file changed, 7 insertions(+)

Comments

Joel Johnson March 22, 2020, 6:53 p.m. UTC | #1
As with other related ClearFog patches, I haven't received any review 
responses on this series 
(http://patchwork.ozlabs.org/project/uboot/list/?series=155760) and 
would like to ping out for additional review. I'd especially like 
feedback on the approach for support of multiple SCSI devices, if there 
a preferred or standardized mechanism I'd be happy to adjust, but I 
couldn't find any other examples of including multiple SCSI devices in 
distro_boot. In reviewing again myself there was an initial mental 
mismatch between CON2/CON3 usage as connection ports and the naming of 
SCSI_CLEARFOG2/SCSI_CLEARFOG3 as index counters, but otherwise still 
seems good.

If it's in an acceptable state for inclusion in the next merge window, 
that's certainly fine too, I'm just looking for a crosscheck.

Thanks!
Joel

On 2020-01-28 20:59, Joel Johnson wrote:
> Include attempting to boot from SCSI (SATA) devices within generated
> board distro bootcmd environment. The reasoning for boot ordering is
> that MMC and USB are external and removable, while when a case is in
> use, replacing M.2 or mSATA drives requires disassembly. Therefore,
> to boot SCSI, [bootable] external media must be removed. If SCSI were
> placed before MMC or USB, then removing a bootable SCSI drive to
> enable MMC or USB booting would be more difficult.
> 
> Signed-off-by: Joel Johnson <mrjoel at lixil.net>
> 
> ---
> 
>  include/configs/clearfog.h | 7 +++++++
>  1 file changed, 7 insertions(+)
> 
> diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
> index 633187d86f..a452f4b009 100644
> --- a/include/configs/clearfog.h
> +++ b/include/configs/clearfog.h
> @@ -110,9 +110,16 @@
>  #define BOOT_TARGET_DEVICES_USB(func)
>  #endif
> 
> +#ifdef CONFIG_SCSI
> +#define BOOT_TARGET_DEVICES_SCSI(func) func(SCSI, scsi, 0)
> +#else
> +#define BOOT_TARGET_DEVICES_SCSI(func)
> +#endif
> +
>  #define BOOT_TARGET_DEVICES(func) \
>  	BOOT_TARGET_DEVICES_MMC(func) \
>  	BOOT_TARGET_DEVICES_USB(func) \
> +	BOOT_TARGET_DEVICES_SCSI(func) \
>  	func(PXE, pxe, na) \
>  	func(DHCP, dhcp, na)
Stefan Roese March 23, 2020, 10:20 a.m. UTC | #2
Added Josua to Cc.

On 29.01.20 04:59, Joel Johnson wrote:
> Include attempting to boot from SCSI (SATA) devices within generated
> board distro bootcmd environment. The reasoning for boot ordering is
> that MMC and USB are external and removable, while when a case is in
> use, replacing M.2 or mSATA drives requires disassembly. Therefore,
> to boot SCSI, [bootable] external media must be removed. If SCSI were
> placed before MMC or USB, then removing a bootable SCSI drive to
> enable MMC or USB booting would be more difficult.
> 
> Signed-off-by: Joel Johnson <mrjoel at lixil.net>

Josua posted a similar patch (different order though):

http://patchwork.ozlabs.org/patch/1239539/

I tend to pull your patch though in the next merge window, if nobody
objects. So:

Reviewed-by: Stefan Roese <sr at denx.de>

Thanks,
Stefan

> ---
> 
>   include/configs/clearfog.h | 7 +++++++
>   1 file changed, 7 insertions(+)
> 
> diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
> index 633187d86f..a452f4b009 100644
> --- a/include/configs/clearfog.h
> +++ b/include/configs/clearfog.h
> @@ -110,9 +110,16 @@
>   #define BOOT_TARGET_DEVICES_USB(func)
>   #endif
>   
> +#ifdef CONFIG_SCSI
> +#define BOOT_TARGET_DEVICES_SCSI(func) func(SCSI, scsi, 0)
> +#else
> +#define BOOT_TARGET_DEVICES_SCSI(func)
> +#endif
> +
>   #define BOOT_TARGET_DEVICES(func) \
>   	BOOT_TARGET_DEVICES_MMC(func) \
>   	BOOT_TARGET_DEVICES_USB(func) \
> +	BOOT_TARGET_DEVICES_SCSI(func) \
>   	func(PXE, pxe, na) \
>   	func(DHCP, dhcp, na)
>   
>
Stefan Roese March 23, 2020, 10:27 a.m. UTC | #3
Hi Joel,

On 22.03.20 19:53, Joel Johnson wrote:
> As with other related ClearFog patches, I haven't received any review 
> responses on this series 
> (http://patchwork.ozlabs.org/project/uboot/list/?series=155760) and 
> would like to ping out for additional review. I'd especially like 
> feedback on the approach for support of multiple SCSI devices, if there 
> a preferred or standardized mechanism I'd be happy to adjust, but I 
> couldn't find any other examples of including multiple SCSI devices in 
> distro_boot. In reviewing again myself there was an initial mental 
> mismatch between CON2/CON3 usage as connection ports and the naming of 
> SCSI_CLEARFOG2/SCSI_CLEARFOG3 as index counters, but otherwise still 
> seems good.
> 
> If it's in an acceptable state for inclusion in the next merge window, 
> that's certainly fine too, I'm just looking for a crosscheck.

Let's see, if Baruch and/or Josua have some comments here.

Thanks,
Stefan

> Thanks!
> Joel
> 
> On 2020-01-28 20:59, Joel Johnson wrote:
>> Include attempting to boot from SCSI (SATA) devices within generated
>> board distro bootcmd environment. The reasoning for boot ordering is
>> that MMC and USB are external and removable, while when a case is in
>> use, replacing M.2 or mSATA drives requires disassembly. Therefore,
>> to boot SCSI, [bootable] external media must be removed. If SCSI were
>> placed before MMC or USB, then removing a bootable SCSI drive to
>> enable MMC or USB booting would be more difficult.
>>
>> Signed-off-by: Joel Johnson <mrjoel at lixil.net>
>>
>> ---
>>
>> ?include/configs/clearfog.h | 7 +++++++
>> ?1 file changed, 7 insertions(+)
>>
>> diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
>> index 633187d86f..a452f4b009 100644
>> --- a/include/configs/clearfog.h
>> +++ b/include/configs/clearfog.h
>> @@ -110,9 +110,16 @@
>> ?#define BOOT_TARGET_DEVICES_USB(func)
>> ?#endif
>>
>> +#ifdef CONFIG_SCSI
>> +#define BOOT_TARGET_DEVICES_SCSI(func) func(SCSI, scsi, 0)
>> +#else
>> +#define BOOT_TARGET_DEVICES_SCSI(func)
>> +#endif
>> +
>> ?#define BOOT_TARGET_DEVICES(func) \
>> ???? BOOT_TARGET_DEVICES_MMC(func) \
>> ???? BOOT_TARGET_DEVICES_USB(func) \
>> +??? BOOT_TARGET_DEVICES_SCSI(func) \
>> ???? func(PXE, pxe, na) \
>> ???? func(DHCP, dhcp, na)


Viele Gr??e,
Stefan
Joel Johnson March 23, 2020, 3:38 p.m. UTC | #4
On 2020-03-23 04:27, Stefan Roese wrote:
> Hi Joel,
> 
> On 22.03.20 19:53, Joel Johnson wrote:
>> As with other related ClearFog patches, I haven't received any review 
>> responses on this series 
>> (http://patchwork.ozlabs.org/project/uboot/list/?series=155760) and 
>> would like to ping out for additional review. I'd especially like 
>> feedback on the approach for support of multiple SCSI devices, if 
>> there a preferred or standardized mechanism I'd be happy to adjust, 
>> but I couldn't find any other examples of including multiple SCSI 
>> devices in distro_boot. In reviewing again myself there was an initial 
>> mental mismatch between CON2/CON3 usage as connection ports and the 
>> naming of SCSI_CLEARFOG2/SCSI_CLEARFOG3 as index counters, but 
>> otherwise still seems good.
>> 
>> If it's in an acceptable state for inclusion in the next merge window, 
>> that's certainly fine too, I'm just looking for a crosscheck.
> 
> Let's see, if Baruch and/or Josua have some comments here.
> 
> Thanks,
> Stefan

I have an update I'll post shortly which keeps the same logic, but 
renames the defined macros to be SCSI bus centric (i.e. X_BUS0, X_BUS1, 
X_BUS2) instead of potential confusion with hardware labelled port 
locations.

Joel
diff mbox series

Patch

diff --git a/include/configs/clearfog.h b/include/configs/clearfog.h
index 633187d86f..a452f4b009 100644
--- a/include/configs/clearfog.h
+++ b/include/configs/clearfog.h
@@ -110,9 +110,16 @@ 
 #define BOOT_TARGET_DEVICES_USB(func)
 #endif
 
+#ifdef CONFIG_SCSI
+#define BOOT_TARGET_DEVICES_SCSI(func) func(SCSI, scsi, 0)
+#else
+#define BOOT_TARGET_DEVICES_SCSI(func)
+#endif
+
 #define BOOT_TARGET_DEVICES(func) \
 	BOOT_TARGET_DEVICES_MMC(func) \
 	BOOT_TARGET_DEVICES_USB(func) \
+	BOOT_TARGET_DEVICES_SCSI(func) \
 	func(PXE, pxe, na) \
 	func(DHCP, dhcp, na)