void print_part (block_dev_desc_t * dev_desc) { switch (dev_desc->part_type) { #ifdef CONFIG_MAC_PARTITION case PART_TYPE_MAC: PRINTF ("## Testing for valid MAC partition ##\n"); print_part_header ("MAC", dev_desc); print_part_mac (dev_desc); return; #endif #ifdef CONFIG_DOS_PARTITION case PART_TYPE_DOS: PRINTF ("## Testing for valid DOS partition ##\n"); print_part_header ("DOS", dev_desc); print_part_dos (dev_desc); return; #endif #ifdef CONFIG_ISO_PARTITION case PART_TYPE_ISO: PRINTF ("## Testing for valid ISO Boot partition ##\n"); print_part_header ("ISO", dev_desc); print_part_iso (dev_desc); return; #endif #ifdef CONFIG_AMIGA_PARTITION case PART_TYPE_AMIGA: PRINTF ("## Testing for a valid Amiga partition ##\n"); print_part_header ("AMIGA", dev_desc); print_part_amiga (dev_desc); return; #endif } puts ("## Unknown partition table\n"); }
void part_print(struct blk_desc *dev_desc) { struct part_driver *drv; drv = part_driver_lookup_type(dev_desc->part_type); if (!drv) { printf("## Unknown partition table type %x\n", dev_desc->part_type); return; } PRINTF("## Testing for valid %s partition ##\n", drv->name); print_part_header(drv->name, dev_desc); if (drv->print) drv->print(dev_desc); }