aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68k/amiga/config.c
diff options
context:
space:
mode:
authorGeert Uytterhoeven <geert@linux-m68k.org>2013-10-04 03:38:53 -0400
committerGeert Uytterhoeven <geert@linux-m68k.org>2013-11-26 05:09:09 -0500
commitbd9ba8f40ee30edf31cc0845d8838bc43d172ef3 (patch)
tree4c073ce3a53d7cccbc3ac7335854d424faa2c289 /arch/m68k/amiga/config.c
parent986ea58dfb52097999cc388880505fc7a10e4779 (diff)
zorro/UAPI: Use proper types (endianness/size) in <linux/zorro.h>
Fix member definitions for non-native userspace handling: - All multi-byte values are big-endian, hence use __be*, - All pointers are 32-bit pointers under AmigaOS, but unused (except for cd_BoardAddr) under Linux, hence use __be32. Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Diffstat (limited to 'arch/m68k/amiga/config.c')
-rw-r--r--arch/m68k/amiga/config.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/arch/m68k/amiga/config.c b/arch/m68k/amiga/config.c
index acd9c1640cfc..65b5e937ebba 100644
--- a/arch/m68k/amiga/config.c
+++ b/arch/m68k/amiga/config.c
@@ -28,6 +28,7 @@
28#include <linux/keyboard.h> 28#include <linux/keyboard.h>
29 29
30#include <asm/bootinfo.h> 30#include <asm/bootinfo.h>
31#include <asm/byteorder.h>
31#include <asm/setup.h> 32#include <asm/setup.h>
32#include <asm/pgtable.h> 33#include <asm/pgtable.h>
33#include <asm/amigahw.h> 34#include <asm/amigahw.h>
@@ -176,10 +177,10 @@ int __init amiga_parse_bootinfo(const struct bi_record *record)
176 const struct ConfigDev *cd = (struct ConfigDev *)data; 177 const struct ConfigDev *cd = (struct ConfigDev *)data;
177 struct zorro_dev_init *dev = &zorro_autocon_init[zorro_num_autocon++]; 178 struct zorro_dev_init *dev = &zorro_autocon_init[zorro_num_autocon++];
178 dev->rom = cd->cd_Rom; 179 dev->rom = cd->cd_Rom;
179 dev->slotaddr = cd->cd_SlotAddr; 180 dev->slotaddr = be16_to_cpu(cd->cd_SlotAddr);
180 dev->slotsize = cd->cd_SlotSize; 181 dev->slotsize = be16_to_cpu(cd->cd_SlotSize);
181 dev->boardaddr = (u32)cd->cd_BoardAddr; 182 dev->boardaddr = be32_to_cpu(cd->cd_BoardAddr);
182 dev->boardsize = cd->cd_BoardSize; 183 dev->boardsize = be32_to_cpu(cd->cd_BoardSize);
183 } else 184 } else
184 printk("amiga_parse_bootinfo: too many AutoConfig devices\n"); 185 printk("amiga_parse_bootinfo: too many AutoConfig devices\n");
185#endif /* CONFIG_ZORRO */ 186#endif /* CONFIG_ZORRO */