diff options
author | Alexey Romanov <avromanov@salutedevices.com> | 2024-07-18 08:45:26 +0300 |
---|---|---|
committer | Michael Trimarchi <michael@amarulasolutions.com> | 2024-08-08 09:28:02 +0200 |
commit | 6b0c9f2cb511b2b06fd675a49162208c9105f2a0 (patch) | |
tree | c6625a8316f77c82785069c65c3d8c8fdb0ccbe2 | |
parent | 9daad11ad178646c288aca3615a7ba1e6039aed3 (diff) |
disk: don't try search for partition type if already set
Block devices can already set partition type at initialization
stage, so, in this case is no point in searching for partition type.
Signed-off-by: Alexey Romanov <avromanov@salutedevices.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com>
-rw-r--r-- | disk/part.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/disk/part.c b/disk/part.c index 86f669926e1..706d77b3194 100644 --- a/disk/part.c +++ b/disk/part.c @@ -285,6 +285,13 @@ void part_init(struct blk_desc *desc) blkcache_invalidate(desc->uclass_id, desc->devnum); + if (desc->part_type != PART_TYPE_UNKNOWN) { + for (entry = drv; entry != drv + n_ents; entry++) { + if (entry->part_type == desc->part_type && !entry->test(desc)) + return; + } + } + desc->part_type = PART_TYPE_UNKNOWN; for (entry = drv; entry != drv + n_ents; entry++) { int ret; |