xref: /linux/arch/riscv/boot/Makefile (revision f55793403c53ffaaaca43948498ed2b8896d9615)
1c0fbcd99SAnup Patel#
2c0fbcd99SAnup Patel# arch/riscv/boot/Makefile
3c0fbcd99SAnup Patel#
4c0fbcd99SAnup Patel# This file is included by the global makefile so that you can add your own
5c0fbcd99SAnup Patel# architecture-specific flags and dependencies.
6c0fbcd99SAnup Patel#
7c0fbcd99SAnup Patel# This file is subject to the terms and conditions of the GNU General Public
8c0fbcd99SAnup Patel# License.  See the file "COPYING" in the main directory of this archive
9c0fbcd99SAnup Patel# for more details.
10c0fbcd99SAnup Patel#
11c0fbcd99SAnup Patel# Copyright (C) 2018, Anup Patel.
12c0fbcd99SAnup Patel# Author: Anup Patel <anup@brainfault.org>
13c0fbcd99SAnup Patel#
14c0fbcd99SAnup Patel# Based on the ia64 and arm64 boot/Makefile.
15c0fbcd99SAnup Patel#
16c0fbcd99SAnup Patel
1720d38f7cSTobias KlauserKCOV_INSTRUMENT := n
1820d38f7cSTobias Klauser
19c0fbcd99SAnup PatelOBJCOPYFLAGS_Image :=-O binary -R .note -R .note.gnu.build-id -R .comment -S
2044c92257SVitaly WoolOBJCOPYFLAGS_xipImage :=-O binary -R .note -R .note.gnu.build-id -R .comment -S
21c0fbcd99SAnup Patel
222c42bcbbSKefeng Wangtargets := Image Image.* loader loader.o loader.lds loader.bin
2344c92257SVitaly Wooltargets := Image Image.* loader loader.o loader.lds loader.bin xipImage
2444c92257SVitaly Wool
2544c92257SVitaly Woolifeq ($(CONFIG_XIP_KERNEL),y)
2644c92257SVitaly Wool
2744c92257SVitaly Woolquiet_cmd_mkxip = $(quiet_cmd_objcopy)
2844c92257SVitaly Woolcmd_mkxip = $(cmd_objcopy)
2944c92257SVitaly Wool
3044c92257SVitaly Wool$(obj)/xipImage: vmlinux FORCE
3144c92257SVitaly Wool	$(call if_changed,mkxip)
3244c92257SVitaly Wool	@$(kecho) '  Physical Address of xipImage: $(CONFIG_XIP_PHYS_ADDR)'
3344c92257SVitaly Wool
3444c92257SVitaly Woolendif
35c0fbcd99SAnup Patel
36c0fbcd99SAnup Patel$(obj)/Image: vmlinux FORCE
37c0fbcd99SAnup Patel	$(call if_changed,objcopy)
38c0fbcd99SAnup Patel
39c0fbcd99SAnup Patel$(obj)/Image.gz: $(obj)/Image FORCE
40c0fbcd99SAnup Patel	$(call if_changed,gzip)
41c0fbcd99SAnup Patel
420e72a2f9SOlof Johansson$(obj)/loader.o: $(src)/loader.S $(obj)/Image
43405fe7aaSChristoph Hellwig
44405fe7aaSChristoph Hellwig$(obj)/loader: $(obj)/loader.o $(obj)/Image $(obj)/loader.lds FORCE
45405fe7aaSChristoph Hellwig	$(Q)$(LD) -T $(obj)/loader.lds -o $@ $(obj)/loader.o
46405fe7aaSChristoph Hellwig
478083c629SAtish Patra$(obj)/Image.bz2: $(obj)/Image FORCE
488083c629SAtish Patra	$(call if_changed,bzip2)
498083c629SAtish Patra
508083c629SAtish Patra$(obj)/Image.lz4: $(obj)/Image FORCE
518083c629SAtish Patra	$(call if_changed,lz4)
528083c629SAtish Patra
538083c629SAtish Patra$(obj)/Image.lzma: $(obj)/Image FORCE
548083c629SAtish Patra	$(call if_changed,lzma)
558083c629SAtish Patra
568083c629SAtish Patra$(obj)/Image.lzo: $(obj)/Image FORCE
578083c629SAtish Patra	$(call if_changed,lzo)
588083c629SAtish Patra
5937809df4SChristoph Hellwig$(obj)/loader.bin: $(obj)/loader FORCE
6037809df4SChristoph Hellwig	$(call if_changed,objcopy)
61*f5579340SArd Biesheuvel
62*f5579340SArd BiesheuvelEFI_ZBOOT_PAYLOAD	:= Image
63*f5579340SArd BiesheuvelEFI_ZBOOT_BFD_TARGET	:= elf$(BITS)-littleriscv
64*f5579340SArd BiesheuvelEFI_ZBOOT_MACH_TYPE	:= RISCV$(BITS)
65*f5579340SArd Biesheuvel
66*f5579340SArd Biesheuvelinclude $(srctree)/drivers/firmware/efi/libstub/Makefile.zboot
67