diff options
Diffstat (limited to 'disk/part.c')
-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 86f669926e..706d77b319 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; |