summaryrefslogtreecommitdiff
path: root/disk/part.c
diff options
context:
space:
mode:
Diffstat (limited to 'disk/part.c')
-rw-r--r--disk/part.c28
1 files changed, 27 insertions, 1 deletions
diff --git a/disk/part.c b/disk/part.c
index 99fe0db9f..70511ca06 100644
--- a/disk/part.c
+++ b/disk/part.c
@@ -106,7 +106,8 @@ void dev_print (block_dev_desc_t *dev_desc)
#if defined(CONFIG_MAC_PARTITION) || \
defined(CONFIG_DOS_PARTITION) || \
- defined(CONFIG_ISO_PARTITION)
+ defined(CONFIG_ISO_PARTITION) || \
+ defined(CONFIG_AMIGA_PARTITION)
void init_part (block_dev_desc_t * dev_desc)
{
@@ -130,6 +131,13 @@ void init_part (block_dev_desc_t * dev_desc)
return;
}
#endif
+
+#ifdef CONFIG_AMIGA_PARTITION
+ if (test_part_amiga(dev_desc) == 0) {
+ dev_desc->part_type = PART_TYPE_AMIGA;
+ return;
+ }
+#endif
}
@@ -162,6 +170,16 @@ int get_partition_info (block_dev_desc_t *dev_desc, int part, disk_partition_t *
}
break;
#endif
+
+#ifdef CONFIG_AMIGA_PARTITION
+ case PART_TYPE_AMIGA:
+ if (get_partition_info_amiga(dev_desc, part, info) == 0)
+ {
+ PRINTF ("## Valid Amiga partition found ##\n");
+ return (0);
+ }
+ break;
+#endif
default:
break;
}
@@ -215,6 +233,14 @@ void print_part (block_dev_desc_t * 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");
}