| # SPDX-License-Identifier: GPL-2.0-only | 
| OBJCOPYFLAGS        :=-O binary | 
| GZFLAGS            :=-9 | 
|   | 
| ifdef CONFIG_CPU_HAS_FPU | 
| FPUEXT = f | 
| endif | 
|   | 
| ifdef CONFIG_CPU_HAS_VDSP | 
| VDSPEXT = v | 
| endif | 
|   | 
| ifdef CONFIG_CPU_HAS_TEE | 
| TEEEXT = t | 
| endif | 
|   | 
| ifdef CONFIG_CPU_CK610 | 
| CPUTYPE    = ck610 | 
| CSKYABI    = abiv1 | 
| endif | 
|   | 
| ifdef CONFIG_CPU_CK810 | 
| CPUTYPE = ck810 | 
| CSKYABI    = abiv2 | 
| endif | 
|   | 
| ifdef CONFIG_CPU_CK807 | 
| CPUTYPE = ck807 | 
| CSKYABI    = abiv2 | 
| endif | 
|   | 
| ifdef CONFIG_CPU_CK860 | 
| CPUTYPE = ck860 | 
| CSKYABI    = abiv2 | 
| endif | 
|   | 
| ifneq ($(CSKYABI),) | 
| MCPU_STR = $(CPUTYPE)$(FPUEXT)$(VDSPEXT)$(TEEEXT) | 
| KBUILD_CFLAGS += -mcpu=$(CPUTYPE) -Wa,-mcpu=$(MCPU_STR) | 
| KBUILD_CFLAGS += -DCSKYCPU_DEF_NAME=\"$(MCPU_STR)\" | 
| KBUILD_CFLAGS += -msoft-float -mdiv | 
| KBUILD_CFLAGS += -fno-tree-vectorize | 
| endif | 
|   | 
| KBUILD_CFLAGS += -pipe | 
| ifeq ($(CSKYABI),abiv2) | 
| KBUILD_CFLAGS += -mno-stack-size | 
| endif | 
|   | 
| ifdef CONFIG_FRAME_POINTER | 
| KBUILD_CFLAGS += -mbacktrace | 
| endif | 
|   | 
| abidirs := $(patsubst %,arch/csky/%/,$(CSKYABI)) | 
| KBUILD_CFLAGS += $(patsubst %,-I$(srctree)/%inc,$(abidirs)) | 
|   | 
| KBUILD_CPPFLAGS += -mlittle-endian | 
| LDFLAGS += -EL | 
|   | 
| KBUILD_AFLAGS += $(KBUILD_CFLAGS) | 
|   | 
| head-y := arch/csky/kernel/head.o | 
|   | 
| core-y += arch/csky/kernel/ | 
| core-y += arch/csky/mm/ | 
| core-y += arch/csky/$(CSKYABI)/ | 
|   | 
| libs-y += arch/csky/lib/ \ | 
|     $(shell $(CC) $(KBUILD_CFLAGS) $(KCFLAGS) -print-libgcc-file-name) | 
|   | 
| boot := arch/csky/boot | 
| core-y += $(boot)/dts/ | 
|   | 
| all: zImage | 
|   | 
| zImage Image uImage: vmlinux | 
|     $(Q)$(MAKE) $(build)=$(boot) $(boot)/$@ | 
|   | 
| archclean: | 
|     $(Q)$(MAKE) $(clean)=$(boot) | 
|   | 
| define archhelp | 
|   echo  '* zImage       - Compressed kernel image (arch/$(ARCH)/boot/zImage)' | 
|   echo  '  Image        - Uncompressed kernel image (arch/$(ARCH)/boot/Image)' | 
|   echo  '  uImage       - U-Boot wrapped zImage' | 
| endef |