[U-Boot] Updating ZFS for U-boot
Jorgen Lundman
lundman at lundman.net
Thu Dec 7 08:59:26 UTC 2017
Hello list,
The ZFS support in U-boot is in need of updating, so I have done so now.
Which enables support for feature pools, LZ4 and raidz.
One thing that raidz support does, is iterate all the devices looking for
the other devices needed to read the raid set. Currently I put in the code:
debug("Iterating for devices\n");
for (
uclass_first_device(UCLASS_BLK, &dev);
dev;
uclass_next_device(&dev)
) {
struct blk_desc *desc = dev_get_uclass_platdata(dev);
debug(" testing device %d: type 0x%x vendor '%s' product '%s'\n",
desc->devnum, desc->if_type, desc->vendor, desc->product);
if (part_get_info_whole_disk(desc, &info) == 0) {
debug(" testing whole disk: %p\n", desc->bdev->ops->read);
dev.part_info = &info;
err = scan_disk(&dev, data, 0, &inserted);
But to my surprise, fs_devread() of any device other than the one given on
command line, will fail. Most likely because blk_dread() ops->read is NULL?
Maybe?
Am I using the API wrong, or do I simply need to call a probe function first?
Thanks,
Lund
--
Jorgen Lundman | <lundman at lundman.net>
Unix Administrator | +81 (0)90-5578-8500
Shibuya-ku, Tokyo | Japan
More information about the U-Boot
mailing list