[PATCH 1/5] disk: Add an option for partitions in SPL
Simon Glass
sjg at chromium.org
Fri Mar 11 20:10:01 CET 2022
In some cases we do not want to enable partition support in SPL. Add an
option to allow this.
Signed-off-by: Simon Glass <sjg at chromium.org>
---
disk/Kconfig | 24 ++++++++++++++++++++----
disk/Makefile | 6 +++---
drivers/block/blk-uclass.c | 2 +-
3 files changed, 24 insertions(+), 8 deletions(-)
diff --git a/disk/Kconfig b/disk/Kconfig
index cee16a80bc2..13700322e97 100644
--- a/disk/Kconfig
+++ b/disk/Kconfig
@@ -4,10 +4,6 @@ menu "Partition Types"
config PARTITIONS
bool "Enable Partition Labels (disklabels) support"
default y
- select SPL_SPRINTF if SPL
- select TPL_SPRINTF if TPL
- select SPL_STRTO if SPL
- select TPL_STRTO if TPL
help
Partition Labels (disklabels) Supported:
Zero or more of the following:
@@ -23,6 +19,26 @@ config PARTITIONS
you must configure support for at least one non-MTD partition type
as well.
+config SPL_PARTITIONS
+ bool "Enable Partition Labels (disklabels) support in SPL"
+ default y if PARTITIONS
+ select SPL_SPRINTF
+ select SPL_STRTO
+ help
+ Enable this for base partition support in SPL. The required
+ partition table types shold be enabled separately. This add a
+ small amount of size to SPL, typically 500 bytes.
+
+config TPL_PARTITIONS
+ bool "Enable Partition Labels (disklabels) support in TPL"
+ default y if PARTITIONS
+ select TPL_SPRINTF
+ select TPL_STRTO
+ help
+ Enable this for base partition support in SPL. The required
+ partition table types shold be enabled separately. This add a
+ small amount of size to SPL, typically 500 bytes.
+
config MAC_PARTITION
bool "Enable Apple's MacOS partition table"
depends on PARTITIONS
diff --git a/disk/Makefile b/disk/Makefile
index ec37b74f5f4..ffd7b07f867 100644
--- a/disk/Makefile
+++ b/disk/Makefile
@@ -5,9 +5,9 @@
#ccflags-y += -DET_DEBUG -DDEBUG
-obj-$(CONFIG_PARTITIONS) += part.o
-ifdef CONFIG_$(SPL_)BLK
-obj-$(CONFIG_PARTITIONS) += disk-uclass.o
+obj-$(CONFIG_$(SPL_TPL_)PARTITIONS) += part.o
+ifdef CONFIG_$(SPL_TPL_)BLK
+obj-$(CONFIG_$(SPL_TPL_)PARTITIONS) += disk-uclass.o
endif
obj-$(CONFIG_$(SPL_)MAC_PARTITION) += part_mac.o
obj-$(CONFIG_$(SPL_)DOS_PARTITION) += part_dos.o
diff --git a/drivers/block/blk-uclass.c b/drivers/block/blk-uclass.c
index 58dc74e71f1..bcd18ed38b2 100644
--- a/drivers/block/blk-uclass.c
+++ b/drivers/block/blk-uclass.c
@@ -712,7 +712,7 @@ int blk_unbind_all(int if_type)
static int blk_post_probe(struct udevice *dev)
{
- if (IS_ENABLED(CONFIG_PARTITIONS) &&
+ if (CONFIG_IS_ENABLED(PARTITIONS) &&
IS_ENABLED(CONFIG_HAVE_BLOCK_DEVICE)) {
struct blk_desc *desc = dev_get_uclass_plat(dev);
--
2.35.1.723.g4982287a31-goog
More information about the U-Boot
mailing list