2018-11-12 11:25:15 +05:30
#
# arch/riscv/boot/Makefile
#
# This file is included by the global makefile so that you can add your own
# architecture-specific flags and dependencies.
#
# This file is subject to the terms and conditions of the GNU General Public
# License. See the file "COPYING" in the main directory of this archive
# for more details.
#
# Copyright (C) 2018, Anup Patel.
# Author: Anup Patel <anup@brainfault.org>
#
# Based on the ia64 and arm64 boot/Makefile.
#
2020-06-26 14:40:56 +02:00
KCOV_INSTRUMENT := n
2018-11-12 11:25:15 +05:30
OBJCOPYFLAGS_Image := -O binary -R .note -R .note.gnu.build-id -R .comment -S
2023-10-24 16:53:18 +02:00
OBJCOPYFLAGS_loader.bin := -O binary
2021-04-13 02:35:14 -04:00
OBJCOPYFLAGS_xipImage := -O binary -R .note -R .note.gnu.build-id -R .comment -S
2018-11-12 11:25:15 +05:30
2020-11-04 14:15:00 +08:00
targets := Image Image.* loader loader.o loader.lds loader.bin
2021-04-13 02:35:14 -04:00
targets := Image Image.* loader loader.o loader.lds loader.bin xipImage
i f e q ( $( CONFIG_XIP_KERNEL ) , y )
quiet_cmd_mkxip = $( quiet_cmd_objcopy)
cmd_mkxip = $( cmd_objcopy)
$(obj)/xipImage : vmlinux FORCE
$( call if_changed,mkxip)
@$( kecho) ' Physical Address of xipImage: $(CONFIG_XIP_PHYS_ADDR)'
e n d i f
2018-11-12 11:25:15 +05:30
2023-03-29 06:53:29 +02:00
i f d e f C O N F I G _ R E L O C A T A B L E
vmlinux.relocs : vmlinux
@ ( ! [ -f vmlinux.relocs ] && echo "vmlinux.relocs can't be found, please remove vmlinux and try again" ) || true
$(obj)/Image : vmlinux .relocs FORCE
e l s e
2018-11-12 11:25:15 +05:30
$(obj)/Image : vmlinux FORCE
2023-03-29 06:53:29 +02:00
e n d i f
2018-11-12 11:25:15 +05:30
$( call if_changed,objcopy)
$(obj)/Image.gz : $( obj ) /Image FORCE
$( call if_changed,gzip)
2019-12-07 13:29:16 -08:00
$(obj)/loader.o : $( src ) /loader .S $( obj ) /Image
2019-10-28 13:10:42 +01:00
$(obj)/loader : $( obj ) /loader .o $( obj ) /Image $( obj ) /loader .lds FORCE
$( Q) $( LD) -T $( obj) /loader.lds -o $@ $( obj) /loader.o
2019-11-05 16:06:52 -08:00
$(obj)/Image.bz2 : $( obj ) /Image FORCE
$( call if_changed,bzip2)
$(obj)/Image.lz4 : $( obj ) /Image FORCE
$( call if_changed,lz4)
$(obj)/Image.lzma : $( obj ) /Image FORCE
$( call if_changed,lzma)
$(obj)/Image.lzo : $( obj ) /Image FORCE
$( call if_changed,lzo)
2022-11-23 23:02:57 +08:00
$(obj)/Image.zst : $( obj ) /Image FORCE
$( call if_changed,zstd)
2020-03-16 09:47:43 +09:00
$(obj)/loader.bin : $( obj ) /loader FORCE
$( call if_changed,objcopy)
2022-05-02 17:40:34 +02:00
EFI_ZBOOT_PAYLOAD := Image
EFI_ZBOOT_BFD_TARGET := elf$( BITS) -littleriscv
EFI_ZBOOT_MACH_TYPE := RISCV$( BITS)
i n c l u d e $( srctree ) / d r i v e r s / f i r m w a r e / e f i / l i b s t u b / M a k e f i l e . z b o o t