zorro: Do not allocate zorro_autocon[] statically
Currently the array of Zorro devices is allocated statically, wasting up to 4.5 KiB when running an Amiga or multi-platform kernel on a machine with no or a handful of Zorro expansion cards. Convert it to conditional dynamic memory allocation to fix this. amiga_parse_bootinfo() still needs to store some information about the detected Zorro devices, at a time even the bootmem allocator is not yet available. This is now handled using a much smaller array (typically less than 0.5 KiB), which is __initdata and thus freed later. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
This commit is contained in:
@@ -67,8 +67,8 @@ static int __init z_dev_present(zorro_id id)
|
||||
unsigned int i;
|
||||
|
||||
for (i = 0; i < zorro_num_autocon; i++)
|
||||
if (zorro_autocon[i].rom.er_Manufacturer == ZORRO_MANUF(id) &&
|
||||
zorro_autocon[i].rom.er_Product == ZORRO_PROD(id))
|
||||
if (zorro_autocon_init[i].rom.er_Manufacturer == ZORRO_MANUF(id) &&
|
||||
zorro_autocon_init[i].rom.er_Product == ZORRO_PROD(id))
|
||||
return 1;
|
||||
|
||||
return 0;
|
||||
|
Reference in New Issue
Block a user