diff options
Diffstat (limited to 'drivers/block/blk-uclass.c')
-rw-r--r-- | drivers/block/blk-uclass.c | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/drivers/block/blk-uclass.c b/drivers/block/blk-uclass.c index facf52711c..95e7b540a5 100644 --- a/drivers/block/blk-uclass.c +++ b/drivers/block/blk-uclass.c | |||
@@ -644,8 +644,20 @@ int blk_unbind_all(int if_type) | |||
644 | return 0; | 644 | return 0; |
645 | } | 645 | } |
646 | 646 | ||
647 | static int blk_post_probe(struct udevice *dev) | ||
648 | { | ||
649 | #if !defined(CONFIG_SPL_BUILD) || defined(CONFIG_SPL_LIBDISK_SUPPORT) | ||
650 | struct blk_desc *desc = dev_get_uclass_platdata(dev); | ||
651 | |||
652 | part_init(desc); | ||
653 | #endif | ||
654 | |||
655 | return 0; | ||
656 | } | ||
657 | |||
647 | UCLASS_DRIVER(blk) = { | 658 | UCLASS_DRIVER(blk) = { |
648 | .id = UCLASS_BLK, | 659 | .id = UCLASS_BLK, |
649 | .name = "blk", | 660 | .name = "blk", |
661 | .post_probe = blk_post_probe, | ||
650 | .per_device_platdata_auto_alloc_size = sizeof(struct blk_desc), | 662 | .per_device_platdata_auto_alloc_size = sizeof(struct blk_desc), |
651 | }; | 663 | }; |