--- zzzz-none-000/linux-2.4.17/arch/mips/Makefile 2001-09-09 17:43:02.000000000 +0000 +++ sangam-fb-322/linux-2.4.17/arch/mips/Makefile 2004-11-24 13:22:39.000000000 +0000 @@ -22,7 +22,9 @@ endif ifdef CONFIG_CROSSCOMPILE -CROSS_COMPILE = $(tool-prefix) + ifndef CROSS_COMPILE + CROSS_COMPILE = $(tool-prefix) + endif endif # @@ -50,6 +52,12 @@ ifdef CONFIG_CPU_R3000 GCCFLAGS += -mcpu=r3000 -mips1 endif +ifdef CONFIG_CPU_TX39XX +GCCFLAGS += -mcpu=r3000 -mips1 +endif +ifdef CONFIG_MIPS_LXPB20K +GCCFLAGS += -mips1 +endif ifdef CONFIG_CPU_R6000 GCCFLAGS += -mcpu=r6000 -mips2 -Wa,--trap endif @@ -57,23 +65,32 @@ GCCFLAGS += -mcpu=r4300 -mips2 -Wa,--trap endif ifdef CONFIG_CPU_VR41XX -GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap +GCCFLAGS += -mips2 -Wa,-m4100,--trap endif ifdef CONFIG_CPU_R4X00 GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap endif -ifdef CONFIG_CPU_MIPS32 +ifdef CONFIG_CPU_TX49XX GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap endif +ifdef CONFIG_CPU_MIPS32 +GCCFLAGS += -march=4kc -Wa,--trap -nostdinc +endif ifdef CONFIG_CPU_MIPS64 GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap endif +ifdef CONFIG_CPU_RC32300 +GCCFLAGS += -mcpu=r4600 -mips2 -Wa,--trap +endif ifdef CONFIG_CPU_R5000 GCCFLAGS += -mcpu=r5000 -mips2 -Wa,--trap endif ifdef CONFIG_CPU_R5432 GCCFLAGS += -mcpu=r5000 -mips2 -Wa,--trap endif +ifdef CONFIG_CPU_R5900 +GCCFLAGS += -mcpu=r5900 -mips2 -Wa,--trap +endif ifdef CONFIG_CPU_NEVADA # Cannot use -mmad with currently recommended tools GCCFLAGS += -mcpu=r5000 -mips2 -Wa,--trap @@ -83,8 +100,24 @@ endif ifdef CONFIG_CPU_SB1 GCCFLAGS += -mcpu=sb1 -mips2 -Wa,--trap +ifdef CONFIG_SB1_PASS_1_WORKAROUNDS +MODFLAGS += -msb1-pass1-workarounds +endif endif +# +# ramdisk/initrd support +# You need a compressed ramdisk image, named ramdisk.gz in +# arch/mips/ramdisk +# +ifdef CONFIG_BLK_DEV_INITRD +ifndef CONFIG_MIPS_AVALANCHE +CORE_FILES += arch/mips/ramdisk/ramdisk.o +SUBDIRS += arch/mips/ramdisk +endif +endif + + GCCFLAGS += -pipe CFLAGS := -I $(TOPDIR)/include/asm/gcc $(CFLAGS) $(GCCFLAGS) @@ -98,6 +131,17 @@ SUBDIRS +=arch/mips/math-emu # +# ramdisk/initrd support +# You need a compressed ramdisk image, named ramdisk.gz in +# arch/mips/ramdisk +# +ifdef CONFIG_EMBEDDED_RAMDISK +CORE_FILES += arch/mips/ramdisk/ramdisk.o +SUBDIRS += arch/mips/ramdisk +endif + + +# # Board-dependent options and extra files # ifdef CONFIG_ALGOR_P4032 @@ -128,6 +172,12 @@ LOADADDR += 0x80100000 endif +ifdef CONFIG_MIPS_AVALANCHE_SOC +LIBS += arch/mips/mips-boards/ti_avalanche/ti_avalanche.o arch/mips/mips-boards/generic/mipsboards.o +SUBDIRS += arch/mips/mips-boards/ti_avalanche arch/mips/mips-boards/generic +LOADADDR += 0x94020000 +endif + # # Acer PICA 61, Mips Magnum 4000 and Olivetti M700. # @@ -138,6 +188,12 @@ LOADADDR += 0x80080000 endif +ifdef CONFIG_COBALT_MICRO_SERVER +SUBDIRS += arch/mips/cobalt +CORE_FILES += arch/mips/cobalt/cobalt.o +LOADADDR += 0x80080000 +endif + ifdef CONFIG_SNI_RM200_PCI CORE_FILES += arch/mips/sni/sni.o SUBDIRS += arch/mips/sni arch/mips/arc @@ -146,9 +202,9 @@ endif ifdef CONFIG_SGI_IP22 -CORE_FILES += arch/mips/sgi/kernel/ip22-kern.o +CORE_FILES += arch/mips/sgi-ip22/ip22-kern.o LIBS += arch/mips/arc/arclib.a -SUBDIRS += arch/mips/sgi/kernel arch/mips/arc +SUBDIRS += arch/mips/sgi-ip22 arch/mips/arc # # Set LOADADDR to >= 0x88069000 if you want to leave space for symmon, # 0x88002000 for production kernels. Note that the value must be @@ -180,8 +236,9 @@ # NEC DDB Vrc-5476 # ifdef CONFIG_DDB5476 -SUBDIRS += arch/mips/ddb5476 -LIBS += arch/mips/ddb5476/ddb5476.a +SUBDIRS += arch/mips/ddb5xxx/common arch/mips/ddb5xxx/ddb5476 +LIBS += arch/mips/ddb5xxx/common/ddb5xxx.o \ + arch/mips/ddb5xxx/ddb5476/ddb5476.o LOADADDR += 0x80080000 endif @@ -193,7 +250,36 @@ SUBDIRS += arch/mips/ddb5xxx/common arch/mips/ddb5xxx/ddb5477 LIBS += arch/mips/ddb5xxx/common/ddb5xxx.o \ arch/mips/ddb5xxx/ddb5477/ddb5477.o -LOADADDR += 0x80080000 +LOADADDR += 0x80100000 +endif + +# +# NEC Osprey (vr4181) board +# +ifdef CONFIG_NEC_OSPREY +SUBDIRS += arch/mips/vr4181/common arch/mips/vr4181/osprey +LIBS += arch/mips/vr4181/common/vr4181.o \ + arch/mips/vr4181/osprey/osprey.o +LOADADDR += 0x80002000 +endif + +# +# NEC Eagle (vr4122) board +# +ifdef CONFIG_NEC_EAGLE +SUBDIRS += arch/mips/vr4122/common arch/mips/vr4122/eagle +LIBS += arch/mips/vr4122/common/vr4122.o \ + arch/mips/vr4122/eagle/eagle.o +LOADADDR += 0x80004000 +endif + +# +# NEC Korva (vr4120a) board +# +ifdef CONFIG_NEC_KORVA +SUBDIRS += arch/mips/korva +LIBS += arch/mips/korva/korva.a +LOADADDR += 0x80002000 endif # @@ -225,6 +311,12 @@ LOADADDR += 0x80100000 endif +ifdef CONFIG_MIPS_LXPB20K +CORE_FILES += arch/mips/lx/lx4189.o +SUBDIRS += arch/mips/lx +LOADADDR += 0x80100000 +endif # CONFIG_MIPS_LXPB20K + # # Philips Nino # @@ -253,14 +345,117 @@ endif # -# Au1000 eval board +# Au1000 eval boards # ifdef CONFIG_MIPS_PB1000 -LIBS += arch/mips/au1000/pb1000/pb1000.o arch/mips/au1000/common/au1000.o +LIBS += arch/mips/au1000/pb1000/pb1000.o \ + arch/mips/au1000/common/au1000.o SUBDIRS += arch/mips/au1000/pb1000 arch/mips/au1000/common LOADADDR += 0x80100000 endif +ifdef CONFIG_MIPS_PB1500 +LIBS += arch/mips/au1000/pb1500/pb1500.o \ + arch/mips/au1000/common/au1000.o +SUBDIRS += arch/mips/au1000/pb1500 arch/mips/au1000/common +LOADADDR += 0x80100000 +endif + +# +# IDT 79S334 evaluation board. +# +ifdef CONFIG_IDT_79S334 +LIBS += arch/mips/rc32300/79S334/idt-79S334.o \ + arch/mips/rc32300/common/rc32300.o +SUBDIRS += arch/mips/rc32300/79S334 arch/mips/rc32300/common +LOADADDR += 0x80200000 +endif + +# +# IDT 79EB355 evaluation board. +# +ifdef CONFIG_IDT_79EB355 +LIBS += arch/mips/rc32300/79EB355/idt-79EB355.o + arch/mips/rc32300/common/rc32300.o +SUBDIRS += arch/mips/rc32300/79EB355 arch/mips/rc32300/common +LOADADDR += 0x80200000 +endif + +# +# Sibyte SB1250 SOC +# +ifdef CONFIG_SIBYTE_SB1250 +# This is a LIB so that it links at the end, and initcalls are later +# the sequence; but it is built as an object so that modules don't get +# removed (as happens, even if they have __initcall/module_init) +LIBS += arch/mips/sibyte/sb1250/sb1250.o +SUBDIRS += arch/mips/sibyte/sb1250 +endif + +# +# Sibyte SWARM board +# +ifdef CONFIG_SB1_CACHE_ERROR +LIBS += arch/mips/sibyte/sb1/sb1kern.a +SUBDIRS += arch/mips/sibyte/sb1 +endif + +ifdef CONFIG_SIBYTE_SWARM +LIBS += arch/mips/sibyte/swarm/sbswarm.a +SUBDIRS += arch/mips/sibyte/swarm +LOADADDR += 0x80100000 +endif + +# +# HP LaserJet +# +ifdef CONFIG_HP_LASERJET +SUBDIRS += arch/mips/hp-lj +LIBS += arch/mips/hp-lj/hp-lj.o +LOADADDR := 0x80030000 +endif + +# +# Sony PlayStation 2 +# +ifdef CONFIG_PS2 +CORE_FILES += arch/mips/ps2/ps2.o +SUBDIRS += arch/mips/ps2 +LOADADDR += 0x80010000 +endif + +# +# Vadem Clio-1000 (aka Sharp Mobilon Tripad PV-6000) +# +ifdef CONFIG_VADEM_CLIO_1000 +SUBDIRS += arch/mips/vr41xx/common \ + arch/mips/vr4111/common \ + arch/mips/vr4111/clio-1000 +LIBS += arch/mips/vr41xx/common/vr41xx.o \ + arch/mips/vr4111/common/vr4111.o \ + arch/mips/vr4111/clio-1000/clio-1000.o +LOADADDR += 0x80001000 +endif + +# +# NEC MobilePro 780 PDA (vr4121) +# +ifdef CONFIG_NEC_MOBILEPRO_780 +SUBDIRS += arch/mips/vr41xx/common \ + arch/mips/vr4111/common \ + arch/mips/vr4111/mobilepro +LIBS += arch/mips/vr41xx/common/vr41xx.o \ + arch/mips/vr4111/common/vr4111.o \ + arch/mips/vr4111/mobilepro/mobilepro.o +LOADADDR += 0x80001000 +endif + +ifdef CONFIG_TOSHIBA_JMR3927 +CORE_FILES += arch/mips/jmr3927/rbhma3100/jmr3927.o arch/mips/jmr3927/common/tx3927.o +SUBDIRS += arch/mips/jmr3927/rbhma3100 arch/mips/jmr3927/common +LOADADDR += 0x80050000 +endif + # # Choosing incompatible machines durings configuration will result in # error messages during linking. Select a default linkscript if @@ -295,6 +490,11 @@ endif MAKEBOOT = $(MAKE) -C arch/$(ARCH)/boot +MAKEZBOOT = $(MAKE) -C arch/$(ARCH)/zboot + +BOOT_TARGETS = zImage +$(BOOT_TARGETS): vmlinux + @$(MAKEZBOOT) $@ vmlinux.ecoff: vmlinux @$(MAKEBOOT) $@ @@ -304,6 +504,7 @@ rm -f arch/$(ARCH)/ld.script $(MAKE) -C arch/$(ARCH)/tools clean $(MAKE) -C arch/mips/baget clean + $(MAKE) -C arch/mips/zboot clean archmrproper: @$(MAKEBOOT) mrproper