kernel: fix ssb modules build on arm.

This commit is contained in:
Arne Fitzenreiter
2011-11-18 07:59:19 +01:00
parent 146bae790b
commit 7fbc483a76
5 changed files with 19 additions and 4 deletions

View File

@@ -1308,7 +1308,7 @@ CONFIG_NET_PCI=y
CONFIG_PCNET32=m
CONFIG_AMD8111_ETH=m
CONFIG_ADAPTEC_STARFIRE=m
# CONFIG_B44 is not set
CONFIG_B44=m
CONFIG_FORCEDETH=m
# CONFIG_FORCEDETH_NAPI is not set
CONFIG_E100=m

View File

@@ -1294,7 +1294,7 @@ CONFIG_NET_PCI=y
CONFIG_PCNET32=m
CONFIG_AMD8111_ETH=m
CONFIG_ADAPTEC_STARFIRE=m
# CONFIG_B44 is not set
CONFIG_B44=m
CONFIG_FORCEDETH=m
# CONFIG_FORCEDETH_NAPI is not set
CONFIG_E100=m

View File

@@ -91,8 +91,8 @@ $(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
ifeq "$(MACHINE_TYPE)" "arm"
# B43+B44 driver doesn't build on arm
cd $(DIR_APP) && sed -i -e "s|CONFIG_B43=m||g" config.mk
cd $(DIR_APP) && sed -i -e "s|CONFIG_B44=m||g" config.mk
# cd $(DIR_APP) && sed -i -e "s|CONFIG_B43=m||g" config.mk
# cd $(DIR_APP) && sed -i -e "s|CONFIG_B44=m||g" config.mk
# Add libartas uAP driver
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/compat-wireless-3.0-libertas_uap.patch
cd $(DIR_APP)&& echo CONFIG_LIBERTAS_UAP=m >> config.mk

View File

@@ -168,6 +168,9 @@ ifeq "$(KCFG)" "-kirkwood"
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.45-arm_kirkwood_setups.patch
endif
ifeq "$(MACHINE_TYPE)" "arm"
cd $(DIR_APP) && patch -Np1 < $(DIR_SRC)/src/patches/linux-2.6.32.45_align_ssb_modtable_32bit_boundary.patch
endif
ifeq "$(HEADERS)" "1"
# Install the header files

View File

@@ -0,0 +1,12 @@
diff -Naur linux-2.6.32.45.org/include/linux/mod_devicetable.h linux-2.6.32.45/include/linux/mod_devicetable.h
--- linux-2.6.32.45.org/include/linux/mod_devicetable.h 2011-08-16 03:57:37.000000000 +0200
+++ linux-2.6.32.45/include/linux/mod_devicetable.h 2011-11-17 15:07:43.366023632 +0100
@@ -364,7 +364,7 @@
__u16 vendor; /* Vendor or SDIO_ANY_ID */
__u16 device; /* Device ID or SDIO_ANY_ID */
kernel_ulong_t driver_data /* Data private to the driver */
- __attribute__((aligned(sizeof(kernel_ulong_t))));
+ __attribute__((aligned(sizeof(__u32)))); /* align to 32bit boundary */
};
/* SSB core, see drivers/ssb/ */