Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bec33cd2 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ARC fixes from Vineet Gupta:
 - Makefile changes (top-level+ARC) reinstates -O3 builds (regression
   since 3.16)
 - IDU intc related fixes, IRQ affinity
 - patch to make bitops safer for ARC
 - perf fix from Alexey to remove signed PC braino
 - Futex backend gets llock/scond support

* tag 'arc-v4.2-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
  ARCv2: support HS38 releases
  ARC: make sure instruction_pointer() returns unsigned value
  ARC: slightly refactor macros for boot logging
  ARC: Add llock/scond to futex backend
  arc:irqchip: prepare for drivers/irqchip/irqchip.h removal
  ARC: Make ARC bitops "safer" (add anti-optimization)
  ARCv2: [axs103] bump CPU frequency from 75 to 90 MHZ
  ARCv2: intc: IDU: Fix potential race in installing a chained IRQ handler
  ARCv2: intc: IDU: support irq affinity
  ARC: fix unused var wanring
  ARC: Don't memzero twice in dma_alloc_coherent for __GFP_ZERO
  ARC: Override toplevel default -O2 with -O3
  kbuild: Allow arch Makefiles to override {cpp,ld,c}flags
  ARCv2: guard SLC DMA ops with spinlock
  ARC: Kconfig: better way to disable ARC_HAS_LLSC for ARC_CPU_750D
parents 9c69481e 624b71ee
Loading
Loading
Loading
Loading
+8 −0
Original line number Original line Diff line number Diff line
@@ -952,6 +952,14 @@ When kbuild executes, the following steps are followed (roughly):
	$(KBUILD_ARFLAGS) set by the top level Makefile to "D" (deterministic
	$(KBUILD_ARFLAGS) set by the top level Makefile to "D" (deterministic
	mode) if this option is supported by $(AR).
	mode) if this option is supported by $(AR).


    ARCH_CPPFLAGS, ARCH_AFLAGS, ARCH_CFLAGS   Overrides the kbuild defaults

	These variables are appended to the KBUILD_CPPFLAGS,
	KBUILD_AFLAGS, and KBUILD_CFLAGS, respectively, after the
	top-level Makefile has set any other flags. This provides a
	means for an architecture to override the defaults.


--- 6.2 Add prerequisites to archheaders:
--- 6.2 Add prerequisites to archheaders:


	The archheaders: rule is used to generate header files that
	The archheaders: rule is used to generate header files that
+5 −4
Original line number Original line Diff line number Diff line
@@ -780,10 +780,11 @@ endif
include scripts/Makefile.kasan
include scripts/Makefile.kasan
include scripts/Makefile.extrawarn
include scripts/Makefile.extrawarn


# Add user supplied CPPFLAGS, AFLAGS and CFLAGS as the last assignments
# Add any arch overrides and user supplied CPPFLAGS, AFLAGS and CFLAGS as the
KBUILD_CPPFLAGS += $(KCPPFLAGS)
# last assignments
KBUILD_AFLAGS += $(KAFLAGS)
KBUILD_CPPFLAGS += $(ARCH_CPPFLAGS) $(KCPPFLAGS)
KBUILD_CFLAGS += $(KCFLAGS)
KBUILD_AFLAGS   += $(ARCH_AFLAGS)   $(KAFLAGS)
KBUILD_CFLAGS   += $(ARCH_CFLAGS)   $(KCFLAGS)


# Use --build-id when available.
# Use --build-id when available.
LDFLAGS_BUILD_ID = $(patsubst -Wl$(comma)%,%,\
LDFLAGS_BUILD_ID = $(patsubst -Wl$(comma)%,%,\
+2 −1
Original line number Original line Diff line number Diff line
@@ -115,6 +115,7 @@ if ISA_ARCOMPACT


config ARC_CPU_750D
config ARC_CPU_750D
	bool "ARC750D"
	bool "ARC750D"
	select ARC_CANT_LLSC
	help
	help
	  Support for ARC750 core
	  Support for ARC750 core


@@ -362,7 +363,7 @@ config ARC_CANT_LLSC
config ARC_HAS_LLSC
config ARC_HAS_LLSC
	bool "Insn: LLOCK/SCOND (efficient atomic ops)"
	bool "Insn: LLOCK/SCOND (efficient atomic ops)"
	default y
	default y
	depends on !ARC_CPU_750D && !ARC_CANT_LLSC
	depends on !ARC_CANT_LLSC


config ARC_HAS_SWAPE
config ARC_HAS_SWAPE
	bool "Insn: SWAPE (endian-swap)"
	bool "Insn: SWAPE (endian-swap)"
+2 −1
Original line number Original line Diff line number Diff line
@@ -49,7 +49,8 @@ endif


ifndef CONFIG_CC_OPTIMIZE_FOR_SIZE
ifndef CONFIG_CC_OPTIMIZE_FOR_SIZE
# Generic build system uses -O2, we want -O3
# Generic build system uses -O2, we want -O3
cflags-y  += -O3
# Note: No need to add to cflags-y as that happens anyways
ARCH_CFLAGS += -O3
endif
endif


# small data is default for elf32 tool-chain. If not usable, disable it
# small data is default for elf32 tool-chain. If not usable, disable it
+1 −1
Original line number Original line Diff line number Diff line
@@ -12,7 +12,7 @@


/ {
/ {
	compatible = "snps,arc";
	compatible = "snps,arc";
	clock-frequency = <75000000>;
	clock-frequency = <90000000>;
	#address-cells = <1>;
	#address-cells = <1>;
	#size-cells = <1>;
	#size-cells = <1>;


Loading