Skip to content

Commit 2c34a0e

Browse files
committed
Merge tag 'arc-4.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc
Pull ARC updates from Vineet Gupta: - Fix for atomic_fetch_#op [Will Deacon] - Enable per device IOC [Eugeniy Paltsev] - Remove redundant gcc version checks [Masahiro Yamada] - Miscll platform config/DT updates [Alexey Brodkin] * tag 'arc-4.19-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc: ARC: don't check for HIGHMEM pages in arch_dma_alloc ARC: IOC: panic if both IOC and ZONE_HIGHMEM enabled ARC: dma [IOC] Enable per device io coherency ARC: dma [IOC]: mark DMA devices connected as dma-coherent ARC: atomics: unbork atomic_fetch_##op() arc: remove redundant GCC version checks ARC: sort Kconfig ARC: cleanup show_faulting_vma() ARC: [plat-axs*]: Enable SWAP ARC: [plat-axs*/plat-hsdk]: Allow U-Boot to pass MAC-address to the kernel ARC: configs: cleanup
2 parents ecfe951 + dd45210 commit 2c34a0e

27 files changed

+154
-113
lines changed

arch/arc/Kconfig

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
config ARC
1010
def_bool y
1111
select ARC_TIMERS
12+
select ARCH_HAS_PTE_SPECIAL
1213
select ARCH_HAS_SYNC_DMA_FOR_CPU
1314
select ARCH_HAS_SYNC_DMA_FOR_DEVICE
1415
select ARCH_HAS_SG_CHAIN
@@ -28,8 +29,12 @@ config ARC
2829
select GENERIC_SMP_IDLE_THREAD
2930
select HAVE_ARCH_KGDB
3031
select HAVE_ARCH_TRACEHOOK
32+
select HAVE_DEBUG_STACKOVERFLOW
3133
select HAVE_FUTEX_CMPXCHG if FUTEX
34+
select HAVE_GENERIC_DMA_COHERENT
3235
select HAVE_IOREMAP_PROT
36+
select HAVE_KERNEL_GZIP
37+
select HAVE_KERNEL_LZMA
3338
select HAVE_KPROBES
3439
select HAVE_KRETPROBES
3540
select HAVE_MEMBLOCK
@@ -44,11 +49,6 @@ config ARC
4449
select OF_EARLY_FLATTREE
4550
select OF_RESERVED_MEM
4651
select PERF_USE_VMALLOC if ARC_CACHE_VIPT_ALIASING
47-
select HAVE_DEBUG_STACKOVERFLOW
48-
select HAVE_GENERIC_DMA_COHERENT
49-
select HAVE_KERNEL_GZIP
50-
select HAVE_KERNEL_LZMA
51-
select ARCH_HAS_PTE_SPECIAL
5252

5353
config ARCH_HAS_CACHE_LINE_SIZE
5454
def_bool y

arch/arc/Makefile

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -43,10 +43,7 @@ ifdef CONFIG_ARC_CURR_IN_REG
4343
LINUXINCLUDE += -include ${src}/arch/arc/include/asm/current.h
4444
endif
4545

46-
upto_gcc44 := $(call cc-ifversion, -le, 0404, y)
47-
atleast_gcc44 := $(call cc-ifversion, -ge, 0404, y)
48-
49-
cflags-$(atleast_gcc44) += -fsection-anchors
46+
cflags-y += -fsection-anchors
5047

5148
cflags-$(CONFIG_ARC_HAS_LLSC) += -mlock
5249
cflags-$(CONFIG_ARC_HAS_SWAPE) += -mswape
@@ -82,11 +79,6 @@ cflags-$(disable_small_data) += -mno-sdata -fcall-used-gp
8279
cflags-$(CONFIG_CPU_BIG_ENDIAN) += -mbig-endian
8380
ldflags-$(CONFIG_CPU_BIG_ENDIAN) += -EB
8481

85-
# STAR 9000518362: (fixed with binutils shipping with gcc 4.8)
86-
# arc-linux-uclibc-ld (buildroot) or arceb-elf32-ld (EZChip) don't accept
87-
# --build-id w/o "-marclinux". Default arc-elf32-ld is OK
88-
ldflags-$(upto_gcc44) += -marclinux
89-
9082
LIBGCC := $(shell $(CC) $(cflags-y) --print-libgcc-file-name)
9183

9284
# Modules with short calls might break for calls into builtin-kernel

arch/arc/boot/dts/axc003.dtsi

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -93,6 +93,32 @@
9393
};
9494
};
9595

96+
/*
97+
* Mark DMA peripherals connected via IOC port as dma-coherent. We do
98+
* it via overlay because peripherals defined in axs10x_mb.dtsi are
99+
* used for both AXS101 and AXS103 boards and only AXS103 has IOC (so
100+
* only AXS103 board has HW-coherent DMA peripherals)
101+
* We don't need to mark pgu@17000 as dma-coherent because it uses
102+
* external DMA buffer located outside of IOC aperture.
103+
*/
104+
axs10x_mb {
105+
ethernet@0x18000 {
106+
dma-coherent;
107+
};
108+
109+
ehci@0x40000 {
110+
dma-coherent;
111+
};
112+
113+
ohci@0x60000 {
114+
dma-coherent;
115+
};
116+
117+
mmc@0x15000 {
118+
dma-coherent;
119+
};
120+
};
121+
96122
/*
97123
* The DW APB ICTL intc on MB is connected to CPU intc via a
98124
* DT "invisible" DW APB GPIO block, configured to simply pass thru

arch/arc/boot/dts/axc003_idu.dtsi

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -100,6 +100,32 @@
100100
};
101101
};
102102

103+
/*
104+
* Mark DMA peripherals connected via IOC port as dma-coherent. We do
105+
* it via overlay because peripherals defined in axs10x_mb.dtsi are
106+
* used for both AXS101 and AXS103 boards and only AXS103 has IOC (so
107+
* only AXS103 board has HW-coherent DMA peripherals)
108+
* We don't need to mark pgu@17000 as dma-coherent because it uses
109+
* external DMA buffer located outside of IOC aperture.
110+
*/
111+
axs10x_mb {
112+
ethernet@0x18000 {
113+
dma-coherent;
114+
};
115+
116+
ehci@0x40000 {
117+
dma-coherent;
118+
};
119+
120+
ohci@0x60000 {
121+
dma-coherent;
122+
};
123+
124+
mmc@0x15000 {
125+
dma-coherent;
126+
};
127+
};
128+
103129
/*
104130
* This INTC is actually connected to DW APB GPIO
105131
* which acts as a wire between MB INTC and CPU INTC.

arch/arc/boot/dts/axs10x_mb.dtsi

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,10 @@
99
*/
1010

1111
/ {
12+
aliases {
13+
ethernet = &gmac;
14+
};
15+
1216
axs10x_mb {
1317
compatible = "simple-bus";
1418
#address-cells = <1>;
@@ -68,7 +72,7 @@
6872
};
6973
};
7074

71-
ethernet@0x18000 {
75+
gmac: ethernet@0x18000 {
7276
#interrupt-cells = <1>;
7377
compatible = "snps,dwmac";
7478
reg = < 0x18000 0x2000 >;
@@ -81,6 +85,7 @@
8185
max-speed = <100>;
8286
resets = <&creg_rst 5>;
8387
reset-names = "stmmaceth";
88+
mac-address = [00 00 00 00 00 00]; /* Filled in by U-Boot */
8489
};
8590

8691
ehci@0x40000 {

arch/arc/boot/dts/hsdk.dts

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,10 @@
2525
bootargs = "earlycon=uart8250,mmio32,0xf0005000,115200n8 console=ttyS0,115200n8 debug print-fatal-signals=1";
2626
};
2727

28+
aliases {
29+
ethernet = &gmac;
30+
};
31+
2832
cpus {
2933
#address-cells = <1>;
3034
#size-cells = <0>;
@@ -163,7 +167,7 @@
163167
#clock-cells = <0>;
164168
};
165169

166-
ethernet@8000 {
170+
gmac: ethernet@8000 {
167171
#interrupt-cells = <1>;
168172
compatible = "snps,dwmac";
169173
reg = <0x8000 0x2000>;
@@ -176,6 +180,8 @@
176180
phy-handle = <&phy0>;
177181
resets = <&cgu_rst HSDK_ETH_RESET>;
178182
reset-names = "stmmaceth";
183+
mac-address = [00 00 00 00 00 00]; /* Filled in by U-Boot */
184+
dma-coherent;
179185

180186
mdio {
181187
#address-cells = <1>;
@@ -194,12 +200,14 @@
194200
compatible = "snps,hsdk-v1.0-ohci", "generic-ohci";
195201
reg = <0x60000 0x100>;
196202
interrupts = <15>;
203+
dma-coherent;
197204
};
198205

199206
ehci@40000 {
200207
compatible = "snps,hsdk-v1.0-ehci", "generic-ehci";
201208
reg = <0x40000 0x100>;
202209
interrupts = <15>;
210+
dma-coherent;
203211
};
204212

205213
mmc@a000 {
@@ -212,6 +220,7 @@
212220
clock-names = "biu", "ciu";
213221
interrupts = <12>;
214222
bus-width = <4>;
223+
dma-coherent;
215224
};
216225
};
217226

arch/arc/configs/axs101_defconfig

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
2-
# CONFIG_SWAP is not set
31
CONFIG_SYSVIPC=y
42
CONFIG_POSIX_MQUEUE=y
53
# CONFIG_CROSS_MEMORY_ATTACH is not set
@@ -63,7 +61,6 @@ CONFIG_MOUSE_PS2_TOUCHKIT=y
6361
CONFIG_MOUSE_SERIAL=y
6462
CONFIG_MOUSE_SYNAPTICS_USB=y
6563
# CONFIG_LEGACY_PTYS is not set
66-
# CONFIG_DEVKMEM is not set
6764
CONFIG_SERIAL_8250=y
6865
CONFIG_SERIAL_8250_CONSOLE=y
6966
CONFIG_SERIAL_8250_DW=y

arch/arc/configs/axs103_defconfig

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
2-
# CONFIG_SWAP is not set
31
CONFIG_SYSVIPC=y
42
CONFIG_POSIX_MQUEUE=y
53
# CONFIG_CROSS_MEMORY_ATTACH is not set
@@ -64,7 +62,6 @@ CONFIG_MOUSE_PS2_TOUCHKIT=y
6462
CONFIG_MOUSE_SERIAL=y
6563
CONFIG_MOUSE_SYNAPTICS_USB=y
6664
# CONFIG_LEGACY_PTYS is not set
67-
# CONFIG_DEVKMEM is not set
6865
CONFIG_SERIAL_8250=y
6966
CONFIG_SERIAL_8250_CONSOLE=y
7067
CONFIG_SERIAL_8250_DW=y

arch/arc/configs/axs103_smp_defconfig

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,3 @@
1-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
2-
# CONFIG_SWAP is not set
31
CONFIG_SYSVIPC=y
42
CONFIG_POSIX_MQUEUE=y
53
# CONFIG_CROSS_MEMORY_ATTACH is not set
@@ -65,7 +63,6 @@ CONFIG_MOUSE_PS2_TOUCHKIT=y
6563
CONFIG_MOUSE_SERIAL=y
6664
CONFIG_MOUSE_SYNAPTICS_USB=y
6765
# CONFIG_LEGACY_PTYS is not set
68-
# CONFIG_DEVKMEM is not set
6966
CONFIG_SERIAL_8250=y
7067
CONFIG_SERIAL_8250_CONSOLE=y
7168
CONFIG_SERIAL_8250_DW=y

arch/arc/configs/haps_hs_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
21
# CONFIG_SWAP is not set
32
CONFIG_SYSVIPC=y
43
CONFIG_POSIX_MQUEUE=y
@@ -57,7 +56,6 @@ CONFIG_MOUSE_PS2_TOUCHKIT=y
5756
# CONFIG_SERIO_SERPORT is not set
5857
CONFIG_SERIO_ARC_PS2=y
5958
# CONFIG_LEGACY_PTYS is not set
60-
# CONFIG_DEVKMEM is not set
6159
CONFIG_SERIAL_8250=y
6260
CONFIG_SERIAL_8250_CONSOLE=y
6361
CONFIG_SERIAL_8250_NR_UARTS=1

arch/arc/configs/haps_hs_smp_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
21
# CONFIG_SWAP is not set
32
CONFIG_SYSVIPC=y
43
CONFIG_POSIX_MQUEUE=y
@@ -60,7 +59,6 @@ CONFIG_MOUSE_PS2_TOUCHKIT=y
6059
# CONFIG_SERIO_SERPORT is not set
6160
CONFIG_SERIO_ARC_PS2=y
6261
# CONFIG_LEGACY_PTYS is not set
63-
# CONFIG_DEVKMEM is not set
6462
CONFIG_SERIAL_8250=y
6563
CONFIG_SERIAL_8250_CONSOLE=y
6664
CONFIG_SERIAL_8250_NR_UARTS=1

arch/arc/configs/hsdk_defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
21
CONFIG_SYSVIPC=y
32
# CONFIG_CROSS_MEMORY_ATTACH is not set
43
CONFIG_NO_HZ_IDLE=y

arch/arc/configs/nps_defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,6 @@ CONFIG_NETCONSOLE=y
5959
# CONFIG_INPUT_MOUSE is not set
6060
# CONFIG_SERIO is not set
6161
# CONFIG_LEGACY_PTYS is not set
62-
# CONFIG_DEVKMEM is not set
6362
CONFIG_SERIAL_8250=y
6463
CONFIG_SERIAL_8250_CONSOLE=y
6564
CONFIG_SERIAL_8250_NR_UARTS=1

arch/arc/configs/nsim_700_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# CONFIG_LOCALVERSION_AUTO is not set
2-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
32
# CONFIG_SWAP is not set
43
CONFIG_SYSVIPC=y
54
CONFIG_POSIX_MQUEUE=y
@@ -44,7 +43,6 @@ CONFIG_LXT_PHY=y
4443
# CONFIG_INPUT_MOUSE is not set
4544
# CONFIG_SERIO is not set
4645
# CONFIG_LEGACY_PTYS is not set
47-
# CONFIG_DEVKMEM is not set
4846
CONFIG_SERIAL_ARC=y
4947
CONFIG_SERIAL_ARC_CONSOLE=y
5048
# CONFIG_HW_RANDOM is not set

arch/arc/configs/nsim_hs_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# CONFIG_LOCALVERSION_AUTO is not set
2-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
32
# CONFIG_SWAP is not set
43
CONFIG_SYSVIPC=y
54
CONFIG_POSIX_MQUEUE=y
@@ -45,7 +44,6 @@ CONFIG_DEVTMPFS=y
4544
# CONFIG_INPUT_MOUSE is not set
4645
# CONFIG_SERIO is not set
4746
# CONFIG_LEGACY_PTYS is not set
48-
# CONFIG_DEVKMEM is not set
4947
CONFIG_SERIAL_ARC=y
5048
CONFIG_SERIAL_ARC_CONSOLE=y
5149
# CONFIG_HW_RANDOM is not set

arch/arc/configs/nsim_hs_smp_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# CONFIG_LOCALVERSION_AUTO is not set
2-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
32
# CONFIG_SWAP is not set
43
# CONFIG_CROSS_MEMORY_ATTACH is not set
54
CONFIG_HIGH_RES_TIMERS=y
@@ -44,7 +43,6 @@ CONFIG_DEVTMPFS=y
4443
# CONFIG_INPUT_MOUSE is not set
4544
# CONFIG_SERIO is not set
4645
# CONFIG_LEGACY_PTYS is not set
47-
# CONFIG_DEVKMEM is not set
4846
CONFIG_SERIAL_ARC=y
4947
CONFIG_SERIAL_ARC_CONSOLE=y
5048
# CONFIG_HW_RANDOM is not set

arch/arc/configs/nsimosci_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# CONFIG_LOCALVERSION_AUTO is not set
2-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
32
# CONFIG_SWAP is not set
43
CONFIG_SYSVIPC=y
54
# CONFIG_CROSS_MEMORY_ATTACH is not set
@@ -48,7 +47,6 @@ CONFIG_MOUSE_PS2_TOUCHKIT=y
4847
# CONFIG_SERIO_SERPORT is not set
4948
CONFIG_SERIO_ARC_PS2=y
5049
# CONFIG_LEGACY_PTYS is not set
51-
# CONFIG_DEVKMEM is not set
5250
CONFIG_SERIAL_8250=y
5351
CONFIG_SERIAL_8250_CONSOLE=y
5452
CONFIG_SERIAL_8250_NR_UARTS=1

arch/arc/configs/nsimosci_hs_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# CONFIG_LOCALVERSION_AUTO is not set
2-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
32
# CONFIG_SWAP is not set
43
CONFIG_SYSVIPC=y
54
# CONFIG_CROSS_MEMORY_ATTACH is not set
@@ -47,7 +46,6 @@ CONFIG_MOUSE_PS2_TOUCHKIT=y
4746
# CONFIG_SERIO_SERPORT is not set
4847
CONFIG_SERIO_ARC_PS2=y
4948
# CONFIG_LEGACY_PTYS is not set
50-
# CONFIG_DEVKMEM is not set
5149
CONFIG_SERIAL_8250=y
5250
CONFIG_SERIAL_8250_CONSOLE=y
5351
CONFIG_SERIAL_8250_NR_UARTS=1

arch/arc/configs/nsimosci_hs_smp_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
21
# CONFIG_SWAP is not set
32
CONFIG_SYSVIPC=y
43
# CONFIG_CROSS_MEMORY_ATTACH is not set
@@ -58,7 +57,6 @@ CONFIG_MOUSE_PS2_TOUCHKIT=y
5857
# CONFIG_SERIO_SERPORT is not set
5958
CONFIG_SERIO_ARC_PS2=y
6059
# CONFIG_LEGACY_PTYS is not set
61-
# CONFIG_DEVKMEM is not set
6260
CONFIG_SERIAL_8250=y
6361
CONFIG_SERIAL_8250_CONSOLE=y
6462
CONFIG_SERIAL_8250_NR_UARTS=1

arch/arc/configs/tb10x_defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,6 @@ CONFIG_STMMAC_ETH=y
5757
# CONFIG_SERIO is not set
5858
# CONFIG_VT is not set
5959
# CONFIG_LEGACY_PTYS is not set
60-
# CONFIG_DEVKMEM is not set
6160
CONFIG_SERIAL_8250=y
6261
CONFIG_SERIAL_8250_CONSOLE=y
6362
CONFIG_SERIAL_8250_NR_UARTS=1

arch/arc/configs/vdk_hs38_defconfig

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# CONFIG_LOCALVERSION_AUTO is not set
2-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
32
# CONFIG_CROSS_MEMORY_ATTACH is not set
43
CONFIG_HIGH_RES_TIMERS=y
54
CONFIG_IKCONFIG=y
@@ -53,7 +52,6 @@ CONFIG_NATIONAL_PHY=y
5352
CONFIG_MOUSE_PS2_TOUCHKIT=y
5453
CONFIG_SERIO_ARC_PS2=y
5554
# CONFIG_LEGACY_PTYS is not set
56-
# CONFIG_DEVKMEM is not set
5755
CONFIG_SERIAL_8250=y
5856
CONFIG_SERIAL_8250_CONSOLE=y
5957
CONFIG_SERIAL_8250_DW=y

arch/arc/configs/vdk_hs38_smp_defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
# CONFIG_LOCALVERSION_AUTO is not set
2-
CONFIG_DEFAULT_HOSTNAME="ARCLinux"
32
# CONFIG_CROSS_MEMORY_ATTACH is not set
43
CONFIG_HIGH_RES_TIMERS=y
54
CONFIG_IKCONFIG=y

0 commit comments

Comments
 (0)