Messages in this thread Patch in this message |  | | | Date | Mon, 18 Feb 2008 15:03:10 -0700 | | From | "Gordon Farquharson" <> | | Subject | [RFC] [PATCH] Fix b43 driver build for arm |
| |
The b43 driver in 2.6.25-rc[12] fails to build for arm on an x86_64 box using a cross-compiler:
FATAL: drivers/net/wireless/b43/b43: sizeof(struct ssb_device_id)=6 is not a modulo of the size of section __mod_ssb_device_table=64. Fix definition of struct ssb_device_id in mod_devicetable.h
The following patch fixes the build, but given the discussion in regarding the fix for the module device table definition for m68k [1], I'm not sure that this patch is the right thing to do. However, the fix for m68k was implemented in 2.6.25 [2].
diff --git a/include/linux/mod_devicetable.h b/include/linux/mod_devicetable.h index 139d49d..0471294 100644 --- a/include/linux/mod_devicetable.h +++ b/include/linux/mod_devicetable.h @@ -351,7 +351,8 @@ struct sdio_device_id { struct ssb_device_id { __u16 vendor; __u16 coreid; - __u8 revision; + __u8 revision + __attribute__((aligned(sizeof(__u32)))); }; #define SSB_DEVICE(_vendor, _coreid, _revision) \ { .vendor = _vendor, .coreid = _coreid, .revision = _revision, } Please CC me on replies as I'm not subscribed to the list.
Gordon
[1] http://lkml.org/lkml/2007/11/28/12 [2] http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=7492d4a416d68ab4bd254b36ffcc4e0138daa8ff
-- Gordon Farquharson GnuPG Key ID: 32D6D676
|  |