bootstd: Add a new pre-scan priority for bootdevs

We need extensions to be set up before we start trying to boot any of the
bootdevs. Add a new priority before all the others for tht sort of thing.
Also add a 'none' option, so that the first one is not 0.

While we are here, comment enum bootdev_prio_t fully and expand the test
for the 'bootdev hunt' command.

Signed-off-by: Simon Glass <sjg@chromium.org>
diff --git a/drivers/block/ide.c b/drivers/block/ide.c
index 80c8b64..1ad9b6c 100644
--- a/drivers/block/ide.c
+++ b/drivers/block/ide.c
@@ -1060,7 +1060,7 @@
 {
 	struct bootdev_uc_plat *ucp = dev_get_uclass_plat(dev);
 
-	ucp->prio = BOOTDEVP_3_SCAN_SLOW;
+	ucp->prio = BOOTDEVP_5_SCAN_SLOW;
 
 	return 0;
 }
@@ -1089,7 +1089,7 @@
 };
 
 BOOTDEV_HUNTER(ide_bootdev_hunter) = {
-	.prio		= BOOTDEVP_3_SCAN_SLOW,
+	.prio		= BOOTDEVP_5_SCAN_SLOW,
 	.uclass		= UCLASS_IDE,
 	.hunt		= ide_bootdev_hunt,
 	.drv		= DM_DRIVER_REF(ide_bootdev),
diff --git a/drivers/mmc/mmc_bootdev.c b/drivers/mmc/mmc_bootdev.c
index 300208f..b57b8a6 100644
--- a/drivers/mmc/mmc_bootdev.c
+++ b/drivers/mmc/mmc_bootdev.c
@@ -15,7 +15,7 @@
 {
 	struct bootdev_uc_plat *ucp = dev_get_uclass_plat(dev);
 
-	ucp->prio = BOOTDEVP_0_INTERNAL_FAST;
+	ucp->prio = BOOTDEVP_2_INTERNAL_FAST;
 
 	return 0;
 }
@@ -37,7 +37,7 @@
 };
 
 BOOTDEV_HUNTER(mmc_bootdev_hunter) = {
-	.prio		= BOOTDEVP_0_INTERNAL_FAST,
+	.prio		= BOOTDEVP_2_INTERNAL_FAST,
 	.uclass		= UCLASS_MMC,
 	.drv		= DM_DRIVER_REF(mmc_bootdev),
 };
diff --git a/drivers/mtd/spi/sf_bootdev.c b/drivers/mtd/spi/sf_bootdev.c
index 2272e85..d6b47b1 100644
--- a/drivers/mtd/spi/sf_bootdev.c
+++ b/drivers/mtd/spi/sf_bootdev.c
@@ -53,7 +53,7 @@
 {
 	struct bootdev_uc_plat *ucp = dev_get_uclass_plat(dev);
 
-	ucp->prio = BOOTDEVP_2_SCAN_FAST;
+	ucp->prio = BOOTDEVP_4_SCAN_FAST;
 
 	return 0;
 }
@@ -76,7 +76,7 @@
 };
 
 BOOTDEV_HUNTER(sf_bootdev_hunter) = {
-	.prio		= BOOTDEVP_2_SCAN_FAST,
+	.prio		= BOOTDEVP_4_SCAN_FAST,
 	.uclass		= UCLASS_SPI_FLASH,
 	.drv		= DM_DRIVER_REF(sf_bootdev),
 };
diff --git a/drivers/nvme/nvme-uclass.c b/drivers/nvme/nvme-uclass.c
index 7a8ff06..f3af6a2 100644
--- a/drivers/nvme/nvme-uclass.c
+++ b/drivers/nvme/nvme-uclass.c
@@ -17,7 +17,7 @@
 {
 	struct bootdev_uc_plat *ucp = dev_get_uclass_plat(dev);
 
-	ucp->prio = BOOTDEVP_2_SCAN_FAST;
+	ucp->prio = BOOTDEVP_4_SCAN_FAST;
 
 	return 0;
 }
@@ -62,7 +62,7 @@
 };
 
 BOOTDEV_HUNTER(nvme_bootdev_hunter) = {
-	.prio		= BOOTDEVP_2_SCAN_FAST,
+	.prio		= BOOTDEVP_4_SCAN_FAST,
 	.uclass		= UCLASS_NVME,
 	.hunt		= nvme_bootdev_hunt,
 	.drv		= DM_DRIVER_REF(nvme_bootdev),
diff --git a/drivers/scsi/scsi_bootdev.c b/drivers/scsi/scsi_bootdev.c
index 2367b33..991013f 100644
--- a/drivers/scsi/scsi_bootdev.c
+++ b/drivers/scsi/scsi_bootdev.c
@@ -16,7 +16,7 @@
 {
 	struct bootdev_uc_plat *ucp = dev_get_uclass_plat(dev);
 
-	ucp->prio = BOOTDEVP_2_SCAN_FAST;
+	ucp->prio = BOOTDEVP_4_SCAN_FAST;
 
 	return 0;
 }
@@ -55,7 +55,7 @@
 };
 
 BOOTDEV_HUNTER(scsi_bootdev_hunter) = {
-	.prio		= BOOTDEVP_2_SCAN_FAST,
+	.prio		= BOOTDEVP_4_SCAN_FAST,
 	.uclass		= UCLASS_SCSI,
 	.hunt		= scsi_bootdev_hunt,
 	.drv		= DM_DRIVER_REF(scsi_bootdev),
diff --git a/drivers/usb/host/usb_bootdev.c b/drivers/usb/host/usb_bootdev.c
index 66d0b6a..32919f9 100644
--- a/drivers/usb/host/usb_bootdev.c
+++ b/drivers/usb/host/usb_bootdev.c
@@ -15,7 +15,7 @@
 {
 	struct bootdev_uc_plat *ucp = dev_get_uclass_plat(dev);
 
-	ucp->prio = BOOTDEVP_3_SCAN_SLOW;
+	ucp->prio = BOOTDEVP_5_SCAN_SLOW;
 
 	return 0;
 }
@@ -42,7 +42,7 @@
 };
 
 BOOTDEV_HUNTER(usb_bootdev_hunter) = {
-	.prio		= BOOTDEVP_3_SCAN_SLOW,
+	.prio		= BOOTDEVP_5_SCAN_SLOW,
 	.uclass		= UCLASS_USB,
 	.hunt		= usb_bootdev_hunt,
 	.drv		= DM_DRIVER_REF(usb_bootdev),
diff --git a/drivers/virtio/virtio-uclass.c b/drivers/virtio/virtio-uclass.c
index 27efac0..91af412 100644
--- a/drivers/virtio/virtio-uclass.c
+++ b/drivers/virtio/virtio-uclass.c
@@ -360,7 +360,7 @@
 {
 	struct bootdev_uc_plat *ucp = dev_get_uclass_plat(dev);
 
-	ucp->prio = BOOTDEVP_2_SCAN_FAST;
+	ucp->prio = BOOTDEVP_4_SCAN_FAST;
 
 	return 0;
 }
@@ -405,7 +405,7 @@
 };
 
 BOOTDEV_HUNTER(virtio_bootdev_hunter) = {
-	.prio		= BOOTDEVP_2_SCAN_FAST,
+	.prio		= BOOTDEVP_4_SCAN_FAST,
 	.uclass		= UCLASS_VIRTIO,
 	.hunt		= virtio_bootdev_hunt,
 	.drv		= DM_DRIVER_REF(virtio_bootdev),