ifeq ($(PLATFORM),IXP)
#WFLAGS += -DRT_BIG_ENDIAN
endif
ifeq ($(PLATFORM),IXP)
CFLAGS := -v -D__KERNEL__ -DMODULE -I$(LINUX_SRC)/include -I$(RT28xx_DIR)/include -Wall -Wstrict-prototypes -Wno-trigraphs -O2 -fno-strict-aliasing -fno-common -Uarm -fno-common -pipe -mapcs-32 -D__LINUX_ARM_ARCH__=5 -mcpu=xscale -mtune=xscale -malignment-traps -msoft-float $(WFLAGS)
EXTRA_CFLAGS := -v $(WFLAGS) -I$(RT28xx_DIR)/include
export CFLAGS
endif
也就是把大端模式去掉,2240默认的是小端模式。
每个目录下的makefile和config.mk都需要改。
dm365的内核是2.6.18
2440内核是2.6.32
用2440内核源码make的时候出现如下错误:
/opt/FriendlyARM/mini2440/linux-2.6.32.2
ERROR:
make[2]: Entering directory `/opt/FriendlyARM/mini2440/linux-2.6.32.2'
scripts/Makefile.build:49: *** CFLAGS was changed in "/home/xinjing/3070driver_AP/UTIL/os/linux/Makefile". Fix it to use EXTRA_CFLAGS。 停止。
make[2]: *** [_module_/home/xinjing/3070driver_AP/UTIL/os/linux] 错误 2
make[2]: Leaving directory `/opt/FriendlyARM/mini2440/linux-2.6.32.2'
make[1]: *** [all] 错误 2
make[1]: Leaving directory `/home/xinjing/3070driver_AP/UTIL'
make: *** [all] 错误 2
按如下参数make即可消除错误:
make KBUILD_NOPEDANTIC=1
这个错误提示的应该是默认的要该为EXTRA_CFLAGS。
可以查看下面的博文
http://www.linuxidc.com/Linux/2011-03/33483.htm