Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | # |
Jesper Nilsson | 63e6b9a | 2007-11-30 16:11:38 +0100 | [diff] [blame] | 2 | # Makefile for rescue (bootstrap) code |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 3 | # |
Mikael Starvik | 3e41d65 | 2005-07-27 11:44:30 -0700 | [diff] [blame] | 4 | |
Jesper Nilsson | 66ab3a7 | 2009-04-21 11:44:57 +0200 | [diff] [blame] | 5 | # CC = gcc-cris -mlinux -march=v32 $(LINUXINCLUDE) |
| 6 | # ccflags-$(CONFIG_ETRAX_ARCH_V32) += -I$(srctree)/include/asm/arch/mach/ \ |
| 7 | # -I$(srctree)/include/asm/arch |
| 8 | # asflags-y += -I $(srctree)/include/asm/arch/mach/ -I $(srctree)/include/asm/arch |
| 9 | # LD = gcc-cris -mlinux -march=v32 -nostdlib |
| 10 | |
Jesper Nilsson | bdb144b | 2008-06-29 23:15:19 +0200 | [diff] [blame] | 11 | asflags-y += $(LINUXINCLUDE) |
Jesper Nilsson | 66ab3a7 | 2009-04-21 11:44:57 +0200 | [diff] [blame] | 12 | ccflags-y += -O2 $(LINUXINCLUDE) |
| 13 | arch-$(CONFIG_ETRAX_ARCH_V10) = v10 |
| 14 | arch-$(CONFIG_ETRAX_ARCH_V32) = v32 |
| 15 | |
| 16 | ldflags-y += -T $(srctree)/$(src)/rescue_$(arch-y).lds |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 17 | OBJCOPYFLAGS = -O binary --remove-section=.bss |
Jesper Nilsson | 66ab3a7 | 2009-04-21 11:44:57 +0200 | [diff] [blame] | 18 | obj-$(CONFIG_ETRAX_ARCH_V32) = $(obj)/head_v32.o |
| 19 | obj-$(CONFIG_ETRAX_ARCH_V10) = $(obj)/head_v10.o |
| 20 | OBJECTS := $(obj-y) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 21 | |
Jesper Nilsson | 63e6b9a | 2007-11-30 16:11:38 +0100 | [diff] [blame] | 22 | targets := rescue.o rescue.bin |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 23 | |
Jesper Nilsson | 66ab3a7 | 2009-04-21 11:44:57 +0200 | [diff] [blame] | 24 | $(obj)/rescue.o: $(OBJECTS) FORCE |
Jesper Nilsson | 63e6b9a | 2007-11-30 16:11:38 +0100 | [diff] [blame] | 25 | $(call if_changed,ld) |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 26 | |
Jesper Nilsson | 63e6b9a | 2007-11-30 16:11:38 +0100 | [diff] [blame] | 27 | $(obj)/rescue.bin: $(obj)/rescue.o FORCE |
| 28 | $(call if_changed,objcopy) |
| 29 | cp -p $(obj)/rescue.bin $(objtree) |
| 30 | |
| 31 | $(obj)/testrescue.bin: $(obj)/testrescue.o |
| 32 | $(OBJCOPY) $(OBJCOPYFLAGS) $(obj)/testrescue.o tr.bin |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 33 | # Pad it to 784 bytes |
| 34 | dd if=/dev/zero of=tmp2423 bs=1 count=784 |
| 35 | cat tr.bin tmp2423 >testrescue_tmp.bin |
Jesper Nilsson | 63e6b9a | 2007-11-30 16:11:38 +0100 | [diff] [blame] | 36 | dd if=testrescue_tmp.bin of=$(obj)/testrescue.bin bs=1 count=784 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 37 | rm tr.bin tmp2423 testrescue_tmp.bin |
| 38 | |
Jesper Nilsson | 66ab3a7 | 2009-04-21 11:44:57 +0200 | [diff] [blame] | 39 | |
Jesper Nilsson | 63e6b9a | 2007-11-30 16:11:38 +0100 | [diff] [blame] | 40 | $(obj)/kimagerescue.bin: $(obj)/kimagerescue.o |
| 41 | $(OBJCOPY) $(OBJCOPYFLAGS) $(obj)/kimagerescue.o ktr.bin |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 42 | # Pad it to 784 bytes, that's what the rescue loader expects |
| 43 | dd if=/dev/zero of=tmp2423 bs=1 count=784 |
| 44 | cat ktr.bin tmp2423 >kimagerescue_tmp.bin |
Jesper Nilsson | 63e6b9a | 2007-11-30 16:11:38 +0100 | [diff] [blame] | 45 | dd if=kimagerescue_tmp.bin of=$(obj)/kimagerescue.bin bs=1 count=784 |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 46 | rm ktr.bin tmp2423 kimagerescue_tmp.bin |
Jesper Nilsson | 66ab3a7 | 2009-04-21 11:44:57 +0200 | [diff] [blame] | 47 | |