--- zzzz-none-000/linux-4.1.52/arch/arm/Makefile 2018-05-28 02:26:45.000000000 +0000 +++ bcm63-7530ax-731/linux-4.1.52/arch/arm/Makefile 2022-03-02 11:37:12.000000000 +0000 @@ -19,6 +19,12 @@ LDFLAGS_MODULE += --be8 endif +#ifdef BCM_KF # defined(CONFIG_BCM_KF_MISC_BACKPORTS) +ifeq ($(CONFIG_ARM_MODULE_PLTS),y) +LDFLAGS_MODULE += -T $(srctree)/arch/arm/kernel/module.lds +endif + +#endif # BCM_KF # defined(CONFIG_BCM_KF_MISC_BACKPORTS) OBJCOPYFLAGS :=-O binary -R .comment -S GZFLAGS :=-9 #KBUILD_CFLAGS +=-pipe @@ -36,6 +42,9 @@ KBUILD_CFLAGS += $(call cc-option,-mno-unaligned-access) endif +# AVM: keine unaligned Zugriffe machen +KBUILD_CFLAGS += -fstrict-volatile-bitfields + ifeq ($(CONFIG_FRAME_POINTER),y) KBUILD_CFLAGS +=-fno-omit-frame-pointer -mapcs -mno-sched-prolog endif @@ -129,6 +138,25 @@ KBUILD_CFLAGS +=$(CFLAGS_ABI) $(CFLAGS_ISA) $(arch-y) $(tune-y) $(call cc-option,-mshort-load-bytes,$(call cc-option,-malignment-traps,)) -msoft-float -Uarm KBUILD_AFLAGS +=$(CFLAGS_ABI) $(AFLAGS_ISA) $(arch-y) $(tune-y) -include asm/unified.h -msoft-float +ifdef BCM_KF # defined(CONFIG_BCM_KF_MISC_MAKEFILE) +# Copy from bigisland's Makefile, but most likely it does apply to BCM63138 +# ifeq ($(CONFIG_VFP),y) +# ifeq ($(CONFIG_VFPv3),y) +# # v3 vfp +# KBUILD_CFLAGS +=-mfpu=vfp3 -mfloat-abi=softfp +# KBUILD_AFLAGS +=-mfpu=vfp3 -mfloat-abi=softfp +# else +# #non-v3 vfp +# KBUILD_CFLAGS +=-mfloat-abi=softfp +# KBUILD_AFLAGS +=-mfloat-abi=softfp +# endif +# else +# #no vfp +# KBUILD_CFLAGS +=-mfloat-abi=soft +# KBUILD_AFLAGS +=-mfloat-abi=soft +# endif +endif # BCM_KF # CONFIG_BCM_KF_MISC_MAKEFILE + CHECKFLAGS += -D__arm__ #Default value @@ -147,6 +175,11 @@ textofs-$(CONFIG_ARCH_MSM8X60) := 0x00208000 textofs-$(CONFIG_ARCH_MSM8960) := 0x00208000 textofs-$(CONFIG_ARCH_AXXIA) := 0x00308000 +ifdef BCM_KF # defined(CONFIG_BCM_KF_MISC_MAKEFILE) +textofs-$(CONFIG_ARCH_BCM63XX) := CONFIG_BOARD_ZRELADDR +textofs-$(CONFIG_ARCH_BCM947XXX) := 0x00018000 +textofs-$(CONFIG_ARCH_MULTI_V7) := CONFIG_BOARD_ZRELADDR +endif # BCM_KF # Machine directory name. This list is sorted alphanumerically # by CONFIG_* macro name. @@ -154,6 +187,9 @@ machine-$(CONFIG_ARCH_AT91) += at91 machine-$(CONFIG_ARCH_AXXIA) += axxia machine-$(CONFIG_ARCH_BCM) += bcm +#ifdef BCM_KF # defined(CONFIG_BCM_KF_MISC_MAKEFILE) +machine-$(CONFIG_ARCH_BCM63XX) := bcm963xx +#endif # BCM_KF machine-$(CONFIG_ARCH_BERLIN) += berlin machine-$(CONFIG_ARCH_CLPS711X) += clps711x machine-$(CONFIG_ARCH_CNS3XXX) += cns3xxx @@ -217,6 +253,12 @@ # Platform directory name. This list is sorted alphanumerically # by CONFIG_* macro name. +#ifdef BCM_KF # defined(CONFIG_BCM_KF_MISC_MAKEFILE) +plat-$(CONFIG_ARCH_BCM63XX) := bcm63xx +ifdef CONFIG_BCM96878 +plat-y := bcm63xx +endif +#endif # BCM_KF plat-$(CONFIG_ARCH_EXYNOS) += samsung plat-$(CONFIG_ARCH_OMAP) += omap plat-$(CONFIG_ARCH_S3C64XX) += samsung @@ -279,6 +321,7 @@ core-y += arch/arm/net/ core-y += arch/arm/crypto/ core-y += arch/arm/firmware/ +core-y += arch/arm/avm_enh/ core-y += $(machdirs) $(platdirs) drivers-$(CONFIG_OPROFILE) += arch/arm/oprofile/