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

Commit 54c49016 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull ARC updates from Vineet Gupta:

 - unaligned access support for HS cores

 - Removed extra memory barrier around spinlock code

 - HSDK platform updates: enable dmac, reset

 - some more boot logging updates

 - misc minor fixes

* tag 'arc-5.1-rc2' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
  arch: arc: Kconfig: pedantic formatting
  ARCv2: spinlock: remove the extra smp_mb before lock, after unlock
  ARC: unaligned: relax the check for gcc supporting -mno-unaligned-access
  ARC: boot log: cut down on verbosity
  ARCv2: boot log: refurbish HS core/release identification
  arc: hsdk_defconfig: Enable CONFIG_BLK_DEV_RAM
  ARC: u-boot args: check that magic number is correct
  ARC: perf: bpok condition only exists for ARCompact
  ARCv2: Add explcit unaligned access support (and ability to disable too)
  ARCv2: lib: introduce memcpy optimized for unaligned access
  ARC: [plat-hsdk]: Enable AXI DW DMAC support
  ARC: [plat-hsdk]: Add reset controller handle to manage USB reset
  ARC: DTB: [scripted] fix node name and address spelling
parents babf09c3 9a18b5a4
Loading
Loading
Loading
Loading
+15 −6
Original line number Diff line number Diff line
@@ -386,6 +386,15 @@ config ARC_HAS_SWAPE

if ISA_ARCV2

config ARC_USE_UNALIGNED_MEM_ACCESS
	bool "Enable unaligned access in HW"
	default y
	select HAVE_EFFICIENT_UNALIGNED_ACCESS
	help
	  The ARC HS architecture supports unaligned memory access
	  which is disabled by default. Enable unaligned access in
	  hardware and use software to use it

config ARC_HAS_LL64
	bool "Insn: 64bit LDD/STD"
	help
+6 −0
Original line number Diff line number Diff line
@@ -28,6 +28,12 @@ cflags-$(CONFIG_ARC_HAS_SWAPE) += -mswape

ifdef CONFIG_ISA_ARCV2

ifdef CONFIG_ARC_USE_UNALIGNED_MEM_ACCESS
cflags-y				+= -munaligned-access
else
cflags-y				+= -mno-unaligned-access
endif

ifndef CONFIG_ARC_HAS_LL64
cflags-y				+= -mno-ll64
endif
+29 −29
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@
			clock-div = <6>;
		};

		iomux: iomux@FF10601c {
		iomux: iomux@ff10601c {
			/* Port 1 */
			pctl_tsin_s0: pctl-tsin-s0 {   /* Serial TS-in 0 */
				abilis,function = "mis0";
@@ -162,182 +162,182 @@
			};
		};

		gpioa: gpio@FF140000 {
		gpioa: gpio@ff140000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF140000 0x1000>;
			reg = <0xff140000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <3>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioa";
		};
		gpiob: gpio@FF141000 {
		gpiob: gpio@ff141000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF141000 0x1000>;
			reg = <0xff141000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <2>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiob";
		};
		gpioc: gpio@FF142000 {
		gpioc: gpio@ff142000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF142000 0x1000>;
			reg = <0xff142000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <3>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioc";
		};
		gpiod: gpio@FF143000 {
		gpiod: gpio@ff143000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF143000 0x1000>;
			reg = <0xff143000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <2>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiod";
		};
		gpioe: gpio@FF144000 {
		gpioe: gpio@ff144000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF144000 0x1000>;
			reg = <0xff144000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <3>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioe";
		};
		gpiof: gpio@FF145000 {
		gpiof: gpio@ff145000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF145000 0x1000>;
			reg = <0xff145000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <2>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiof";
		};
		gpiog: gpio@FF146000 {
		gpiog: gpio@ff146000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF146000 0x1000>;
			reg = <0xff146000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <3>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiog";
		};
		gpioh: gpio@FF147000 {
		gpioh: gpio@ff147000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF147000 0x1000>;
			reg = <0xff147000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <2>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioh";
		};
		gpioi: gpio@FF148000 {
		gpioi: gpio@ff148000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF148000 0x1000>;
			reg = <0xff148000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <12>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioi";
		};
		gpioj: gpio@FF149000 {
		gpioj: gpio@ff149000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF149000 0x1000>;
			reg = <0xff149000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <32>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioj";
		};
		gpiok: gpio@FF14a000 {
		gpiok: gpio@ff14a000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF14A000 0x1000>;
			reg = <0xff14a000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <22>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiok";
		};
		gpiol: gpio@FF14b000 {
		gpiol: gpio@ff14b000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF14B000 0x1000>;
			reg = <0xff14b000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <4>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiol";
		};
		gpiom: gpio@FF14c000 {
		gpiom: gpio@ff14c000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF14C000 0x1000>;
			reg = <0xff14c000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <4>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiom";
		};
		gpion: gpio@FF14d000 {
		gpion: gpio@ff14d000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF14D000 0x1000>;
			reg = <0xff14d000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <5>;
+7 −7
Original line number Diff line number Diff line
@@ -37,27 +37,27 @@
	};

	soc100 {
		uart@FF100000 {
		uart@ff100000 {
			pinctrl-names = "default";
			pinctrl-0 = <&pctl_uart0>;
		};
		ethernet@FE100000 {
		ethernet@fe100000 {
			phy-mode = "rgmii";
		};

		i2c0: i2c@FF120000 {
		i2c0: i2c@ff120000 {
			i2c-sda-hold-time-ns = <432>;
		};
		i2c1: i2c@FF121000 {
		i2c1: i2c@ff121000 {
			i2c-sda-hold-time-ns = <432>;
		};
		i2c2: i2c@FF122000 {
		i2c2: i2c@ff122000 {
			i2c-sda-hold-time-ns = <432>;
		};
		i2c3: i2c@FF123000 {
		i2c3: i2c@ff123000 {
			i2c-sda-hold-time-ns = <432>;
		};
		i2c4: i2c@FF124000 {
		i2c4: i2c@ff124000 {
			i2c-sda-hold-time-ns = <432>;
		};

+29 −29
Original line number Diff line number Diff line
@@ -38,7 +38,7 @@
			clock-div = <6>;
		};

		iomux: iomux@FF10601c {
		iomux: iomux@ff10601c {
			/* Port 1 */
			pctl_tsin_s0: pctl-tsin-s0 {   /* Serial TS-in 0 */
				abilis,function = "mis0";
@@ -171,182 +171,182 @@
			};
		};

		gpioa: gpio@FF140000 {
		gpioa: gpio@ff140000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF140000 0x1000>;
			reg = <0xff140000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <3>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioa";
		};
		gpiob: gpio@FF141000 {
		gpiob: gpio@ff141000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF141000 0x1000>;
			reg = <0xff141000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <2>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiob";
		};
		gpioc: gpio@FF142000 {
		gpioc: gpio@ff142000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF142000 0x1000>;
			reg = <0xff142000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <3>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioc";
		};
		gpiod: gpio@FF143000 {
		gpiod: gpio@ff143000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF143000 0x1000>;
			reg = <0xff143000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <2>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiod";
		};
		gpioe: gpio@FF144000 {
		gpioe: gpio@ff144000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF144000 0x1000>;
			reg = <0xff144000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <3>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioe";
		};
		gpiof: gpio@FF145000 {
		gpiof: gpio@ff145000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF145000 0x1000>;
			reg = <0xff145000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <2>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiof";
		};
		gpiog: gpio@FF146000 {
		gpiog: gpio@ff146000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF146000 0x1000>;
			reg = <0xff146000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <3>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiog";
		};
		gpioh: gpio@FF147000 {
		gpioh: gpio@ff147000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF147000 0x1000>;
			reg = <0xff147000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <2>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioh";
		};
		gpioi: gpio@FF148000 {
		gpioi: gpio@ff148000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF148000 0x1000>;
			reg = <0xff148000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <12>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioi";
		};
		gpioj: gpio@FF149000 {
		gpioj: gpio@ff149000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF149000 0x1000>;
			reg = <0xff149000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <32>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpioj";
		};
		gpiok: gpio@FF14a000 {
		gpiok: gpio@ff14a000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF14A000 0x1000>;
			reg = <0xff14a000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <22>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiok";
		};
		gpiol: gpio@FF14b000 {
		gpiol: gpio@ff14b000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF14B000 0x1000>;
			reg = <0xff14b000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <4>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiol";
		};
		gpiom: gpio@FF14c000 {
		gpiom: gpio@ff14c000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF14C000 0x1000>;
			reg = <0xff14c000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <4>;
			gpio-ranges = <&iomux 0 0 0>;
			gpio-ranges-group-names = "gpiom";
		};
		gpion: gpio@FF14d000 {
		gpion: gpio@ff14d000 {
			compatible = "abilis,tb10x-gpio";
			interrupt-controller;
			#interrupt-cells = <1>;
			interrupt-parent = <&tb10x_ictl>;
			interrupts = <27 2>;
			reg = <0xFF14D000 0x1000>;
			reg = <0xff14d000 0x1000>;
			gpio-controller;
			#gpio-cells = <2>;
			abilis,ngpio = <5>;
Loading