X-Authentication-Warning: cassiopeia.home: geert owned process doing -bs
Date: Sun, 21 Jun 1998 14:17:49 +0200 (MET DST)
From: Geert Uytterhoeven <Geert.Uytterhoeven@cs.kuleuven.ac.be>
To: luther@dpt-info.u-strasbg.fr
cc: Linux/m68k <linux-m68k@lists.linux-m68k.org>, linux-apus@SunSITE.auc.dk
Subject: Re: L68K: 53c710 driver on blizzard powerup
In-Reply-To: <m0ynfSk-00024oC@iliana>
Sender: owner-linux-m68k@phil.uni-sb.de
Reply-To: Geert Uytterhoeven <Geert.Uytterhoeven@cs.kuleuven.ac.be>

On Sun, 21 Jun 1998 luther@dpt-info.u-strasbg.fr wrote:
> i gave a try at the blizzard 603e+ scsi driver for Linux-m68k.

> Linux version 2.1.105 (root@iliana) (gcc version 2.7.2.3) #7 Sat Jun 20 10:10:00 CEST 1998
> Amiga hardware found: [A1200] VIDEO BLITTER AUDIO FLOPPY A1200_IDE KEYBOARD MOUSE SERIAL PARALLEL A2000_CLK CHIP_RAM PAULA LISA ALICE_PAL PCMCIA ZORRO 
> Probing AutoConfig expansion device(s):
>   00f00c14: Phase 5 Blizzard 603e+ Accelerator and SCSI Host Adapter (64K)
    ^^^^^^^^
Is this from an m68k or a PPC kernel?

Jesper told me a long time ago that the offsets in struct ConfigDev are wrong
on the PPC due to different default alignments. I never cared about that.

But yesterday I continued working on zorroutils on the Pentium at home (using
/proc/bus/zorro copied from my Amiga) and got bitten by it, too.

This patch should fix the alignment problems:

--- include/linux/zorro.h.orig	Sat Jun 20 23:41:15 1998
+++ include/linux/zorro.h	Sun Jun 21 00:04:00 1998
@@ -114,7 +114,7 @@
     __u8    ln_Type;
     __s8    ln_Pri;		/* Priority, for sorting */
     __s8    *ln_Name;		/* ID string, null terminated */
-};
+} __attribute__ ((packed));
 
 struct ExpansionRom {
     /* -First 16 bytes of the expansion ROM */
@@ -129,7 +129,7 @@
     __u8  er_Reserved0d;
     __u8  er_Reserved0e;
     __u8  er_Reserved0f;
-};
+} __attribute__ ((packed));
 
 /* er_Type board type bits */
 #define ERT_TYPEMASK	0xc0
@@ -152,7 +152,7 @@
     void		*cd_Driver;	/* pointer to node of driver */
     struct ConfigDev	*cd_NextCD;	/* linked list of drivers to config */
     __u32 		cd_Unused[4];	/* for whatever the driver wants */
-};
+} __attribute__ ((packed));
 
 #else /* __ASSEMBLY__ */
 

Greetings,

						Geert

--
Geert Uytterhoeven                     Geert.Uytterhoeven@cs.kuleuven.ac.be
Wavelets, Linux/{m68k~Amiga,PPC~CHRP}  http://www.cs.kuleuven.ac.be/~geert/
Department of Computer Science -- Katholieke Universiteit Leuven -- Belgium


