Skip to content

Commit a682509

Browse files
committed
Merge remote-tracking branch 'stable/linux-5.4.y' into rpi-5.4.y
2 parents 4b945d5 + cad17fe commit a682509

File tree

702 files changed

+5545
-2468
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

702 files changed

+5545
-2468
lines changed

Documentation/devicetree/bindings/mailbox/xlnx,zynqmp-ipi-mailbox.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ Example:
8787
ranges;
8888

8989
/* APU<->RPU0 IPI mailbox controller */
90-
ipi_mailbox_rpu0: mailbox@ff90400 {
90+
ipi_mailbox_rpu0: mailbox@ff990400 {
9191
reg = <0xff990400 0x20>,
9292
<0xff990420 0x20>,
9393
<0xff990080 0x20>,

Documentation/devicetree/bindings/usb/dwc3.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -75,6 +75,8 @@ Optional properties:
7575
from P0 to P1/P2/P3 without delay.
7676
- snps,dis-tx-ipgap-linecheck-quirk: when set, disable u2mac linestate check
7777
during HS transmit.
78+
- snps,parkmode-disable-ss-quirk: when set, all SuperSpeed bus instances in
79+
park mode are disabled.
7880
- snps,dis_metastability_quirk: when set, disable metastability workaround.
7981
CAUTION: use only if you are absolutely sure of it.
8082
- snps,is-utmi-l1-suspend: true when DWC3 asserts output signal

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
# SPDX-License-Identifier: GPL-2.0
22
VERSION = 5
33
PATCHLEVEL = 4
4-
SUBLEVEL = 51
4+
SUBLEVEL = 58
55
EXTRAVERSION =
66
NAME = Kleptomaniac Octopus
77

@@ -528,7 +528,7 @@ ifneq ($(shell $(CC) --version 2>&1 | head -n 1 | grep clang),)
528528
ifneq ($(CROSS_COMPILE),)
529529
CLANG_FLAGS += --target=$(notdir $(CROSS_COMPILE:%-=%))
530530
GCC_TOOLCHAIN_DIR := $(dir $(shell which $(CROSS_COMPILE)elfedit))
531-
CLANG_FLAGS += --prefix=$(GCC_TOOLCHAIN_DIR)
531+
CLANG_FLAGS += --prefix=$(GCC_TOOLCHAIN_DIR)$(notdir $(CROSS_COMPILE))
532532
GCC_TOOLCHAIN := $(realpath $(GCC_TOOLCHAIN_DIR)/..)
533533
endif
534534
ifneq ($(GCC_TOOLCHAIN),)

arch/alpha/configs/defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,6 @@ CONFIG_BLK_DEV_CY82C693=y
3636
CONFIG_SCSI=y
3737
CONFIG_BLK_DEV_SD=y
3838
CONFIG_BLK_DEV_SR=y
39-
CONFIG_BLK_DEV_SR_VENDOR=y
4039
CONFIG_SCSI_AIC7XXX=m
4140
CONFIG_AIC7XXX_CMDS_PER_DEVICE=253
4241
# CONFIG_AIC7XXX_DEBUG_ENABLE is not set

arch/arc/include/asm/elf.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@
1919
#define R_ARC_32_PCREL 0x31
2020

2121
/*to set parameters in the core dumps */
22-
#define ELF_ARCH EM_ARCOMPACT
22+
#define ELF_ARCH EM_ARC_INUSE
2323
#define ELF_CLASS ELFCLASS32
2424

2525
#ifdef CONFIG_CPU_BIG_ENDIAN

arch/arc/kernel/entry.S

Lines changed: 5 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,6 @@ END(EV_Extension)
153153
tracesys:
154154
; save EFA in case tracer wants the PC of traced task
155155
; using ERET won't work since next-PC has already committed
156-
lr r12, [efa]
157156
GET_CURR_TASK_FIELD_PTR TASK_THREAD, r11
158157
st r12, [r11, THREAD_FAULT_ADDR] ; thread.fault_address
159158

@@ -196,15 +195,9 @@ tracesys_exit:
196195
; Breakpoint TRAP
197196
; ---------------------------------------------
198197
trap_with_param:
199-
200-
; stop_pc info by gdb needs this info
201-
lr r0, [efa]
198+
mov r0, r12 ; EFA in case ptracer/gdb wants stop_pc
202199
mov r1, sp
203200

204-
; Now that we have read EFA, it is safe to do "fake" rtie
205-
; and get out of CPU exception mode
206-
FAKE_RET_FROM_EXCPN
207-
208201
; Save callee regs in case gdb wants to have a look
209202
; SP will grow up by size of CALLEE Reg-File
210203
; NOTE: clobbers r12
@@ -231,16 +224,17 @@ ENTRY(EV_Trap)
231224

232225
EXCEPTION_PROLOGUE
233226

227+
lr r12, [efa]
228+
229+
FAKE_RET_FROM_EXCPN
230+
234231
;============ TRAP 1 :breakpoints
235232
; Check ECR for trap with arg (PROLOGUE ensures r10 has ECR)
236233
bmsk.f 0, r10, 7
237234
bnz trap_with_param
238235

239236
;============ TRAP (no param): syscall top level
240237

241-
; First return from Exception to pure K mode (Exception/IRQs renabled)
242-
FAKE_RET_FROM_EXCPN
243-
244238
; If syscall tracing ongoing, invoke pre-post-hooks
245239
GET_CURR_THR_INFO_FLAGS r10
246240
btst r10, TIF_SYSCALL_TRACE

arch/arm/boot/dts/am437x-l4.dtsi

Lines changed: 10 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1576,15 +1576,18 @@
15761576
reg-names = "rev";
15771577
ti,hwmods = "d_can0";
15781578
/* Domains (P, C): per_pwrdm, l4ls_clkdm */
1579-
clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN0_CLKCTRL 0>;
1580-
clock-names = "fck";
1579+
clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN0_CLKCTRL 0>,
1580+
<&dcan0_fck>;
1581+
clock-names = "fck", "osc";
15811582
#address-cells = <1>;
15821583
#size-cells = <1>;
15831584
ranges = <0x0 0xcc000 0x2000>;
15841585

15851586
dcan0: can@0 {
15861587
compatible = "ti,am4372-d_can", "ti,am3352-d_can";
15871588
reg = <0x0 0x2000>;
1589+
clocks = <&dcan0_fck>;
1590+
clock-names = "fck";
15881591
syscon-raminit = <&scm_conf 0x644 0>;
15891592
interrupts = <GIC_SPI 52 IRQ_TYPE_LEVEL_HIGH>;
15901593
status = "disabled";
@@ -1597,15 +1600,18 @@
15971600
reg-names = "rev";
15981601
ti,hwmods = "d_can1";
15991602
/* Domains (P, C): per_pwrdm, l4ls_clkdm */
1600-
clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN1_CLKCTRL 0>;
1601-
clock-names = "fck";
1603+
clocks = <&l4ls_clkctrl AM4_L4LS_D_CAN1_CLKCTRL 0>,
1604+
<&dcan1_fck>;
1605+
clock-names = "fck", "osc";
16021606
#address-cells = <1>;
16031607
#size-cells = <1>;
16041608
ranges = <0x0 0xd0000 0x2000>;
16051609

16061610
dcan1: can@0 {
16071611
compatible = "ti,am4372-d_can", "ti,am3352-d_can";
16081612
reg = <0x0 0x2000>;
1613+
clocks = <&dcan1_fck>;
1614+
clock-name = "fck";
16091615
syscon-raminit = <&scm_conf 0x644 1>;
16101616
interrupts = <GIC_SPI 49 IRQ_TYPE_LEVEL_HIGH>;
16111617
status = "disabled";

arch/arm/boot/dts/armada-38x.dtsi

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -339,7 +339,8 @@
339339

340340
comphy: phy@18300 {
341341
compatible = "marvell,armada-380-comphy";
342-
reg = <0x18300 0x100>;
342+
reg-names = "comphy", "conf";
343+
reg = <0x18300 0x100>, <0x18460 4>;
343344
#address-cells = <1>;
344345
#size-cells = <0>;
345346

arch/arm/boot/dts/imx6qdl-gw551x.dtsi

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -105,19 +105,16 @@
105105
sound-digital {
106106
compatible = "simple-audio-card";
107107
simple-audio-card,name = "tda1997x-audio";
108+
simple-audio-card,format = "i2s";
109+
simple-audio-card,bitclock-master = <&sound_codec>;
110+
simple-audio-card,frame-master = <&sound_codec>;
108111

109-
simple-audio-card,dai-link@0 {
110-
format = "i2s";
111-
112-
cpu {
113-
sound-dai = <&ssi2>;
114-
};
112+
sound_cpu: simple-audio-card,cpu {
113+
sound-dai = <&ssi1>;
114+
};
115115

116-
codec {
117-
bitclock-master;
118-
frame-master;
119-
sound-dai = <&hdmi_receiver>;
120-
};
116+
sound_codec: simple-audio-card,codec {
117+
sound-dai = <&hdmi_receiver>;
121118
};
122119
};
123120
};

arch/arm/boot/dts/imx6qdl-icore.dtsi

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -384,7 +384,7 @@
384384

385385
pinctrl_usbotg: usbotggrp {
386386
fsl,pins = <
387-
MX6QDL_PAD_GPIO_1__USB_OTG_ID 0x17059
387+
MX6QDL_PAD_ENET_RX_ER__USB_OTG_ID 0x17059
388388
>;
389389
};
390390

@@ -396,6 +396,7 @@
396396
MX6QDL_PAD_SD1_DAT1__SD1_DATA1 0x17070
397397
MX6QDL_PAD_SD1_DAT2__SD1_DATA2 0x17070
398398
MX6QDL_PAD_SD1_DAT3__SD1_DATA3 0x17070
399+
MX6QDL_PAD_GPIO_1__GPIO1_IO01 0x1b0b0
399400
>;
400401
};
401402

arch/arm/boot/dts/imx6sx-sabreauto.dts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -99,7 +99,7 @@
9999
&fec2 {
100100
pinctrl-names = "default";
101101
pinctrl-0 = <&pinctrl_enet2>;
102-
phy-mode = "rgmii";
102+
phy-mode = "rgmii-id";
103103
phy-handle = <&ethphy0>;
104104
fsl,magic-packet;
105105
status = "okay";

arch/arm/boot/dts/imx6sx-sdb.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -213,7 +213,7 @@
213213
&fec2 {
214214
pinctrl-names = "default";
215215
pinctrl-0 = <&pinctrl_enet2>;
216-
phy-mode = "rgmii";
216+
phy-mode = "rgmii-id";
217217
phy-handle = <&ethphy2>;
218218
status = "okay";
219219
};

arch/arm/boot/dts/motorola-cpcap-mapphone.dtsi

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,8 +13,10 @@
1313
#interrupt-cells = <2>;
1414
#address-cells = <1>;
1515
#size-cells = <0>;
16-
spi-max-frequency = <3000000>;
16+
spi-max-frequency = <9600000>;
1717
spi-cs-high;
18+
spi-cpol;
19+
spi-cpha;
1820

1921
cpcap_adc: adc {
2022
compatible = "motorola,mapphone-cpcap-adc";

arch/arm/boot/dts/mt7623n-rfb-emmc.dts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -138,6 +138,7 @@
138138
mac@1 {
139139
compatible = "mediatek,eth-mac";
140140
reg = <1>;
141+
phy-mode = "rgmii";
141142
phy-handle = <&phy5>;
142143
};
143144

arch/arm/boot/dts/omap3-n900.dts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -105,6 +105,14 @@
105105
linux,code = <SW_FRONT_PROXIMITY>;
106106
linux,can-disable;
107107
};
108+
109+
machine_cover {
110+
label = "Machine Cover";
111+
gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* 160 */
112+
linux,input-type = <EV_SW>;
113+
linux,code = <SW_MACHINE_COVER>;
114+
linux,can-disable;
115+
};
108116
};
109117

110118
isp1707: isp1707 {
@@ -814,10 +822,6 @@
814822
pinctrl-0 = <&mmc1_pins>;
815823
vmmc-supply = <&vmmc1>;
816824
bus-width = <4>;
817-
/* For debugging, it is often good idea to remove this GPIO.
818-
It means you can remove back cover (to reboot by removing
819-
battery) and still use the MMC card. */
820-
cd-gpios = <&gpio6 0 GPIO_ACTIVE_LOW>; /* 160 */
821825
};
822826

823827
/* most boards use vaux3, only some old versions use vmmc2 instead */

arch/arm/boot/dts/socfpga.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -710,7 +710,7 @@
710710
};
711711
};
712712

713-
L2: l2-cache@fffef000 {
713+
L2: cache-controller@fffef000 {
714714
compatible = "arm,pl310-cache";
715715
reg = <0xfffef000 0x1000>;
716716
interrupts = <0 38 0x04>;

arch/arm/boot/dts/socfpga_arria10.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -636,7 +636,7 @@
636636
reg = <0xffcfb100 0x80>;
637637
};
638638

639-
L2: l2-cache@fffff000 {
639+
L2: cache-controller@fffff000 {
640640
compatible = "arm,pl310-cache";
641641
reg = <0xfffff000 0x1000>;
642642
interrupts = <0 18 IRQ_TYPE_LEVEL_HIGH>;

arch/arm/boot/dts/sun4i-a10.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -198,7 +198,7 @@
198198
default-pool {
199199
compatible = "shared-dma-pool";
200200
size = <0x6000000>;
201-
alloc-ranges = <0x4a000000 0x6000000>;
201+
alloc-ranges = <0x40000000 0x10000000>;
202202
reusable;
203203
linux,cma-default;
204204
};

arch/arm/boot/dts/sun5i.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,7 @@
117117
default-pool {
118118
compatible = "shared-dma-pool";
119119
size = <0x6000000>;
120-
alloc-ranges = <0x4a000000 0x6000000>;
120+
alloc-ranges = <0x40000000 0x10000000>;
121121
reusable;
122122
linux,cma-default;
123123
};

arch/arm/boot/dts/sun7i-a20.dtsi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -180,7 +180,7 @@
180180
default-pool {
181181
compatible = "shared-dma-pool";
182182
size = <0x6000000>;
183-
alloc-ranges = <0x4a000000 0x6000000>;
183+
alloc-ranges = <0x40000000 0x10000000>;
184184
reusable;
185185
linux,cma-default;
186186
};

arch/arm/configs/rpc_defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,6 @@ CONFIG_BLK_DEV_RAM=y
3232
CONFIG_BLK_DEV_SD=y
3333
CONFIG_CHR_DEV_ST=m
3434
CONFIG_BLK_DEV_SR=y
35-
CONFIG_BLK_DEV_SR_VENDOR=y
3635
CONFIG_CHR_DEV_SG=y
3736
CONFIG_SCSI_CONSTANTS=y
3837
CONFIG_SCSI_LOGGING=y

arch/arm/configs/s3c2410_defconfig

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,6 @@ CONFIG_EEPROM_AT24=y
202202
CONFIG_BLK_DEV_SD=y
203203
CONFIG_CHR_DEV_ST=m
204204
CONFIG_BLK_DEV_SR=y
205-
CONFIG_BLK_DEV_SR_VENDOR=y
206205
CONFIG_CHR_DEV_SG=y
207206
CONFIG_CHR_DEV_SCH=m
208207
CONFIG_SCSI_CONSTANTS=y

arch/arm/include/asm/clocksource.h

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,17 @@
11
#ifndef _ASM_CLOCKSOURCE_H
22
#define _ASM_CLOCKSOURCE_H
33

4+
enum vdso_arch_clockmode {
5+
/* vdso clocksource not usable */
6+
VDSO_CLOCKMODE_NONE,
7+
/* vdso clocksource usable */
8+
VDSO_CLOCKMODE_ARCHTIMER,
9+
VDSO_CLOCKMODE_ARCHTIMER_NOCOMPAT = VDSO_CLOCKMODE_ARCHTIMER,
10+
};
11+
412
struct arch_clocksource_data {
5-
bool vdso_direct; /* Usable for direct VDSO access? */
13+
/* Usable for direct VDSO access? */
14+
enum vdso_arch_clockmode clock_mode;
615
};
716

817
#endif

arch/arm/include/asm/percpu.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
#ifndef _ASM_ARM_PERCPU_H_
66
#define _ASM_ARM_PERCPU_H_
77

8+
#include <asm/thread_info.h>
9+
810
/*
911
* Same as asm-generic/percpu.h, except that we store the per cpu offset
1012
* in the TPIDRPRW. TPIDRPRW only exists on V6K and V7

arch/arm/kernel/hw_breakpoint.c

Lines changed: 22 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -680,6 +680,12 @@ static void disable_single_step(struct perf_event *bp)
680680
arch_install_hw_breakpoint(bp);
681681
}
682682

683+
static int watchpoint_fault_on_uaccess(struct pt_regs *regs,
684+
struct arch_hw_breakpoint *info)
685+
{
686+
return !user_mode(regs) && info->ctrl.privilege == ARM_BREAKPOINT_USER;
687+
}
688+
683689
static void watchpoint_handler(unsigned long addr, unsigned int fsr,
684690
struct pt_regs *regs)
685691
{
@@ -739,16 +745,27 @@ static void watchpoint_handler(unsigned long addr, unsigned int fsr,
739745
}
740746

741747
pr_debug("watchpoint fired: address = 0x%x\n", info->trigger);
748+
749+
/*
750+
* If we triggered a user watchpoint from a uaccess routine,
751+
* then handle the stepping ourselves since userspace really
752+
* can't help us with this.
753+
*/
754+
if (watchpoint_fault_on_uaccess(regs, info))
755+
goto step;
756+
742757
perf_bp_event(wp, regs);
743758

744759
/*
745-
* If no overflow handler is present, insert a temporary
746-
* mismatch breakpoint so we can single-step over the
747-
* watchpoint trigger.
760+
* Defer stepping to the overflow handler if one is installed.
761+
* Otherwise, insert a temporary mismatch breakpoint so that
762+
* we can single-step over the watchpoint trigger.
748763
*/
749-
if (is_default_overflow_handler(wp))
750-
enable_single_step(wp, instruction_pointer(regs));
764+
if (!is_default_overflow_handler(wp))
765+
goto unlock;
751766

767+
step:
768+
enable_single_step(wp, instruction_pointer(regs));
752769
unlock:
753770
rcu_read_unlock();
754771
}

0 commit comments

Comments
 (0)