All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mattijs Korpershoek <mkorpershoek@baylibre.com>
To: Simon Glass <sjg@chromium.org>
Cc: Julien Masson <jmasson@baylibre.com>,
	 Guillaume La Roque <glaroque@baylibre.com>,
	 Dmitrii Merkurev <dimorinny@google.com>,
	 Roman Stratiienko <r.stratiienko@gmail.com>,
	 Igor Opaniuk <igor.opaniuk@gmail.com>,
	u-boot@lists.denx.de,
	 Mattijs Korpershoek <mkorpershoek@baylibre.com>
Subject: [PATCH v3 2/5] bootstd: Add bootflow_iter_check_mmc() helper
Date: Wed, 10 Jul 2024 10:40:03 +0200	[thread overview]
Message-ID: <20240710-bootmeth-android-v3-2-b99406e22da3@baylibre.com> (raw)
In-Reply-To: <20240710-bootmeth-android-v3-0-b99406e22da3@baylibre.com>

Some bootflows might be able to only boot from MMC devices.

Add a helper function these bootflows can use.

Reviewed-by: Igor Opaniuk <igor.opaniuk@gmail.com>
Reviewed-by: Julien Masson <jmasson@baylibre.com>
Reviewed-by: Guillaume La Roque <glaroque@baylibre.com>
Tested-by: Guillaume La Roque <glaroque@baylibre.com>
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
---
 boot/bootflow.c    | 12 ++++++++++++
 include/bootflow.h |  9 +++++++++
 2 files changed, 21 insertions(+)

diff --git a/boot/bootflow.c b/boot/bootflow.c
index 9aa3179c3881..59d77d2385f4 100644
--- a/boot/bootflow.c
+++ b/boot/bootflow.c
@@ -575,6 +575,18 @@ int bootflow_iter_check_blk(const struct bootflow_iter *iter)
 	return -ENOTSUPP;
 }
 
+int bootflow_iter_check_mmc(const struct bootflow_iter *iter)
+{
+	const struct udevice *media = dev_get_parent(iter->dev);
+	enum uclass_id id = device_get_uclass_id(media);
+
+	log_debug("uclass %d: %s\n", id, uclass_get_name(id));
+	if (id == UCLASS_MMC)
+		return 0;
+
+	return -ENOTSUPP;
+}
+
 int bootflow_iter_check_sf(const struct bootflow_iter *iter)
 {
 	const struct udevice *media = dev_get_parent(iter->dev);
diff --git a/include/bootflow.h b/include/bootflow.h
index 6affc5e1a4f3..4d2fc7b69b57 100644
--- a/include/bootflow.h
+++ b/include/bootflow.h
@@ -408,6 +408,15 @@ void bootflow_remove(struct bootflow *bflow);
  */
 int bootflow_iter_check_blk(const struct bootflow_iter *iter);
 
+/**
+ * bootflow_iter_check_mmc() - Check that a bootflow uses a MMC device
+ *
+ * This checks the bootdev in the bootflow to make sure it uses a mmc device
+ *
+ * Return: 0 if OK, -ENOTSUPP if some other device is used (e.g. ethernet)
+ */
+int bootflow_iter_check_mmc(const struct bootflow_iter *iter);
+
 /**
  * bootflow_iter_check_sf() - Check that a bootflow uses SPI FLASH
  *

-- 
2.45.2


  parent reply	other threads:[~2024-07-10  8:40 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-07-10  8:40 [PATCH v3 0/5] bootstd: Add Android support Mattijs Korpershoek
2024-07-10  8:40 ` [PATCH v3 1/5] boot: android: Provide vendor_bootimg_addr in boot_get_fdt() Mattijs Korpershoek
2024-07-10  8:40 ` Mattijs Korpershoek [this message]
2024-07-13 15:13   ` [PATCH v3 2/5] bootstd: Add bootflow_iter_check_mmc() helper Simon Glass
2024-07-10  8:40 ` [PATCH v3 3/5] android: boot: Add set_abootimg_addr() and set_avendor_bootimg_addr() Mattijs Korpershoek
2024-07-10  8:40 ` [PATCH v3 4/5] bootstd: Add a bootmeth for Android Mattijs Korpershoek
2024-07-10  8:40 ` [PATCH v3 5/5] bootstd: Add test for bootmeth_android Mattijs Korpershoek
2024-07-11 13:11   ` Julien Masson
2024-07-11 13:49   ` Guillaume LA ROQUE
2024-07-13 15:13   ` Simon Glass
2024-07-18 23:10 ` [PATCH v3 0/5] bootstd: Add Android support Tom Rini

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=20240710-bootmeth-android-v3-2-b99406e22da3@baylibre.com \
    --to=mkorpershoek@baylibre.com \
    --cc=dimorinny@google.com \
    --cc=glaroque@baylibre.com \
    --cc=igor.opaniuk@gmail.com \
    --cc=jmasson@baylibre.com \
    --cc=r.stratiienko@gmail.com \
    --cc=sjg@chromium.org \
    --cc=u-boot@lists.denx.de \
    /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.