Commit 34cfdd4d authored by Lorenzo "Palinuro" Faletra's avatar Lorenzo "Palinuro" Faletra
Browse files

Import Upstream version 4.18.10

parent 441d7f18
# SPDX-License-Identifier: GPL-2.0 # SPDX-License-Identifier: GPL-2.0
VERSION = 4 VERSION = 4
PATCHLEVEL = 18 PATCHLEVEL = 18
SUBLEVEL = 6 SUBLEVEL = 10
EXTRAVERSION = EXTRAVERSION =
NAME = Merciless Moray NAME = Merciless Moray
...@@ -225,10 +225,12 @@ no-dot-config-targets := $(clean-targets) \ ...@@ -225,10 +225,12 @@ no-dot-config-targets := $(clean-targets) \
cscope gtags TAGS tags help% %docs check% coccicheck \ cscope gtags TAGS tags help% %docs check% coccicheck \
$(version_h) headers_% archheaders archscripts \ $(version_h) headers_% archheaders archscripts \
kernelversion %src-pkg kernelversion %src-pkg
no-sync-config-targets := $(no-dot-config-targets) install %install
config-targets := 0 config-targets := 0
mixed-targets := 0 mixed-targets := 0
dot-config := 1 dot-config := 1
may-sync-config := 1
ifneq ($(filter $(no-dot-config-targets), $(MAKECMDGOALS)),) ifneq ($(filter $(no-dot-config-targets), $(MAKECMDGOALS)),)
ifeq ($(filter-out $(no-dot-config-targets), $(MAKECMDGOALS)),) ifeq ($(filter-out $(no-dot-config-targets), $(MAKECMDGOALS)),)
...@@ -236,6 +238,16 @@ ifneq ($(filter $(no-dot-config-targets), $(MAKECMDGOALS)),) ...@@ -236,6 +238,16 @@ ifneq ($(filter $(no-dot-config-targets), $(MAKECMDGOALS)),)
endif endif
endif endif
ifneq ($(filter $(no-sync-config-targets), $(MAKECMDGOALS)),)
ifeq ($(filter-out $(no-sync-config-targets), $(MAKECMDGOALS)),)
may-sync-config := 0
endif
endif
ifneq ($(KBUILD_EXTMOD),)
may-sync-config := 0
endif
ifeq ($(KBUILD_EXTMOD),) ifeq ($(KBUILD_EXTMOD),)
ifneq ($(filter config %config,$(MAKECMDGOALS)),) ifneq ($(filter config %config,$(MAKECMDGOALS)),)
config-targets := 1 config-targets := 1
...@@ -610,7 +622,7 @@ ARCH_CFLAGS := ...@@ -610,7 +622,7 @@ ARCH_CFLAGS :=
include arch/$(SRCARCH)/Makefile include arch/$(SRCARCH)/Makefile
ifeq ($(dot-config),1) ifeq ($(dot-config),1)
ifeq ($(KBUILD_EXTMOD),) ifeq ($(may-sync-config),1)
# Read in dependencies to all Kconfig* files, make sure to run syncconfig if # Read in dependencies to all Kconfig* files, make sure to run syncconfig if
# changes are detected. This should be included after arch/$(SRCARCH)/Makefile # changes are detected. This should be included after arch/$(SRCARCH)/Makefile
# because some architectures define CROSS_COMPILE there. # because some architectures define CROSS_COMPILE there.
...@@ -625,8 +637,9 @@ $(KCONFIG_CONFIG) include/config/auto.conf.cmd: ; ...@@ -625,8 +637,9 @@ $(KCONFIG_CONFIG) include/config/auto.conf.cmd: ;
include/config/%.conf: $(KCONFIG_CONFIG) include/config/auto.conf.cmd include/config/%.conf: $(KCONFIG_CONFIG) include/config/auto.conf.cmd
$(Q)$(MAKE) -f $(srctree)/Makefile syncconfig $(Q)$(MAKE) -f $(srctree)/Makefile syncconfig
else else
# external modules needs include/generated/autoconf.h and include/config/auto.conf # External modules and some install targets need include/generated/autoconf.h
# but do not care if they are up-to-date. Use auto.conf to trigger the test # and include/config/auto.conf but do not care if they are up-to-date.
# Use auto.conf to trigger the test
PHONY += include/config/auto.conf PHONY += include/config/auto.conf
include/config/auto.conf: include/config/auto.conf:
...@@ -638,7 +651,7 @@ include/config/auto.conf: ...@@ -638,7 +651,7 @@ include/config/auto.conf:
echo >&2 ; \ echo >&2 ; \
/bin/false) /bin/false)
endif # KBUILD_EXTMOD endif # may-sync-config
else else
# Dummy target needed, because used as prerequisite # Dummy target needed, because used as prerequisite
......
...@@ -530,24 +530,19 @@ SYSCALL_DEFINE4(osf_mount, unsigned long, typenr, const char __user *, path, ...@@ -530,24 +530,19 @@ SYSCALL_DEFINE4(osf_mount, unsigned long, typenr, const char __user *, path,
SYSCALL_DEFINE1(osf_utsname, char __user *, name) SYSCALL_DEFINE1(osf_utsname, char __user *, name)
{ {
int error; int error;
char tmp[5 * 32];
down_read(&uts_sem); down_read(&uts_sem);
error = -EFAULT; memcpy(tmp + 0 * 32, utsname()->sysname, 32);
if (copy_to_user(name + 0, utsname()->sysname, 32)) memcpy(tmp + 1 * 32, utsname()->nodename, 32);
goto out; memcpy(tmp + 2 * 32, utsname()->release, 32);
if (copy_to_user(name + 32, utsname()->nodename, 32)) memcpy(tmp + 3 * 32, utsname()->version, 32);
goto out; memcpy(tmp + 4 * 32, utsname()->machine, 32);
if (copy_to_user(name + 64, utsname()->release, 32)) up_read(&uts_sem);
goto out;
if (copy_to_user(name + 96, utsname()->version, 32))
goto out;
if (copy_to_user(name + 128, utsname()->machine, 32))
goto out;
error = 0; if (copy_to_user(name, tmp, sizeof(tmp)))
out: return -EFAULT;
up_read(&uts_sem); return 0;
return error;
} }
SYSCALL_DEFINE0(getpagesize) SYSCALL_DEFINE0(getpagesize)
...@@ -567,18 +562,21 @@ SYSCALL_DEFINE2(osf_getdomainname, char __user *, name, int, namelen) ...@@ -567,18 +562,21 @@ SYSCALL_DEFINE2(osf_getdomainname, char __user *, name, int, namelen)
{ {
int len, err = 0; int len, err = 0;
char *kname; char *kname;
char tmp[32];
if (namelen > 32) if (namelen < 0 || namelen > 32)
namelen = 32; namelen = 32;
down_read(&uts_sem); down_read(&uts_sem);
kname = utsname()->domainname; kname = utsname()->domainname;
len = strnlen(kname, namelen); len = strnlen(kname, namelen);
if (copy_to_user(name, kname, min(len + 1, namelen))) len = min(len + 1, namelen);
err = -EFAULT; memcpy(tmp, kname, len);
up_read(&uts_sem); up_read(&uts_sem);
return err; if (copy_to_user(name, tmp, len))
return -EFAULT;
return 0;
} }
/* /*
...@@ -739,13 +737,14 @@ SYSCALL_DEFINE3(osf_sysinfo, int, command, char __user *, buf, long, count) ...@@ -739,13 +737,14 @@ SYSCALL_DEFINE3(osf_sysinfo, int, command, char __user *, buf, long, count)
}; };
unsigned long offset; unsigned long offset;
const char *res; const char *res;
long len, err = -EINVAL; long len;
char tmp[__NEW_UTS_LEN + 1];
offset = command-1; offset = command-1;
if (offset >= ARRAY_SIZE(sysinfo_table)) { if (offset >= ARRAY_SIZE(sysinfo_table)) {
/* Digital UNIX has a few unpublished interfaces here */ /* Digital UNIX has a few unpublished interfaces here */
printk("sysinfo(%d)", command); printk("sysinfo(%d)", command);
goto out; return -EINVAL;
} }
down_read(&uts_sem); down_read(&uts_sem);
...@@ -753,13 +752,11 @@ SYSCALL_DEFINE3(osf_sysinfo, int, command, char __user *, buf, long, count) ...@@ -753,13 +752,11 @@ SYSCALL_DEFINE3(osf_sysinfo, int, command, char __user *, buf, long, count)
len = strlen(res)+1; len = strlen(res)+1;
if ((unsigned long)len > (unsigned long)count) if ((unsigned long)len > (unsigned long)count)
len = count; len = count;
if (copy_to_user(buf, res, len)) memcpy(tmp, res, len);
err = -EFAULT;
else
err = 0;
up_read(&uts_sem); up_read(&uts_sem);
out: if (copy_to_user(buf, tmp, len))
return err; return -EFAULT;
return 0;
} }
SYSCALL_DEFINE5(osf_getsysinfo, unsigned long, op, void __user *, buffer, SYSCALL_DEFINE5(osf_getsysinfo, unsigned long, op, void __user *, buffer,
......
...@@ -9,6 +9,10 @@ ...@@ -9,6 +9,10 @@
*/ */
/ { / {
aliases {
ethernet = &gmac;
};
axs10x_mb { axs10x_mb {
compatible = "simple-bus"; compatible = "simple-bus";
#address-cells = <1>; #address-cells = <1>;
...@@ -68,7 +72,7 @@ pguclk: pguclk { ...@@ -68,7 +72,7 @@ pguclk: pguclk {
}; };
}; };
ethernet@0x18000 { gmac: ethernet@0x18000 {
#interrupt-cells = <1>; #interrupt-cells = <1>;
compatible = "snps,dwmac"; compatible = "snps,dwmac";
reg = < 0x18000 0x2000 >; reg = < 0x18000 0x2000 >;
...@@ -81,6 +85,7 @@ ethernet@0x18000 { ...@@ -81,6 +85,7 @@ ethernet@0x18000 {
max-speed = <100>; max-speed = <100>;
resets = <&creg_rst 5>; resets = <&creg_rst 5>;
reset-names = "stmmaceth"; reset-names = "stmmaceth";
mac-address = [00 00 00 00 00 00]; /* Filled in by U-Boot */
}; };
ehci@0x40000 { ehci@0x40000 {
......
...@@ -25,6 +25,10 @@ chosen { ...@@ -25,6 +25,10 @@ chosen {
bootargs = "earlycon=uart8250,mmio32,0xf0005000,115200n8 console=ttyS0,115200n8 debug print-fatal-signals=1"; bootargs = "earlycon=uart8250,mmio32,0xf0005000,115200n8 console=ttyS0,115200n8 debug print-fatal-signals=1";
}; };
aliases {
ethernet = &gmac;
};
cpus { cpus {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
...@@ -163,7 +167,7 @@ mmcclk_biu: mmcclk-biu { ...@@ -163,7 +167,7 @@ mmcclk_biu: mmcclk-biu {
#clock-cells = <0>; #clock-cells = <0>;
}; };
ethernet@8000 { gmac: ethernet@8000 {
#interrupt-cells = <1>; #interrupt-cells = <1>;
compatible = "snps,dwmac"; compatible = "snps,dwmac";
reg = <0x8000 0x2000>; reg = <0x8000 0x2000>;
...@@ -176,6 +180,7 @@ ethernet@8000 { ...@@ -176,6 +180,7 @@ ethernet@8000 {
phy-handle = <&phy0>; phy-handle = <&phy0>;
resets = <&cgu_rst HSDK_ETH_RESET>; resets = <&cgu_rst HSDK_ETH_RESET>;
reset-names = "stmmaceth"; reset-names = "stmmaceth";
mac-address = [00 00 00 00 00 00]; /* Filled in by U-Boot */
mdio { mdio {
#address-cells = <1>; #address-cells = <1>;
......
CONFIG_DEFAULT_HOSTNAME="ARCLinux" CONFIG_DEFAULT_HOSTNAME="ARCLinux"
# CONFIG_SWAP is not set
CONFIG_SYSVIPC=y CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE=y
# CONFIG_CROSS_MEMORY_ATTACH is not set # CONFIG_CROSS_MEMORY_ATTACH is not set
......
CONFIG_DEFAULT_HOSTNAME="ARCLinux" CONFIG_DEFAULT_HOSTNAME="ARCLinux"
# CONFIG_SWAP is not set
CONFIG_SYSVIPC=y CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE=y
# CONFIG_CROSS_MEMORY_ATTACH is not set # CONFIG_CROSS_MEMORY_ATTACH is not set
......
CONFIG_DEFAULT_HOSTNAME="ARCLinux" CONFIG_DEFAULT_HOSTNAME="ARCLinux"
# CONFIG_SWAP is not set
CONFIG_SYSVIPC=y CONFIG_SYSVIPC=y
CONFIG_POSIX_MQUEUE=y CONFIG_POSIX_MQUEUE=y
# CONFIG_CROSS_MEMORY_ATTACH is not set # CONFIG_CROSS_MEMORY_ATTACH is not set
......
...@@ -66,10 +66,6 @@ mmc0-led { ...@@ -66,10 +66,6 @@ mmc0-led {
}; };
}; };
&omap_dwc3_2 {
extcon = <&extcon_usb2>;
};
&extcon_usb2 { &extcon_usb2 {
id-gpio = <&gpio5 7 GPIO_ACTIVE_HIGH>; id-gpio = <&gpio5 7 GPIO_ACTIVE_HIGH>;
vbus-gpio = <&gpio7 22 GPIO_ACTIVE_HIGH>; vbus-gpio = <&gpio7 22 GPIO_ACTIVE_HIGH>;
......
...@@ -57,10 +57,6 @@ mmc0-led { ...@@ -57,10 +57,6 @@ mmc0-led {
}; };
}; };
&omap_dwc3_2 {
extcon = <&extcon_usb2>;
};
&extcon_usb2 { &extcon_usb2 {
id-gpio = <&gpio3 16 GPIO_ACTIVE_HIGH>; id-gpio = <&gpio3 16 GPIO_ACTIVE_HIGH>;
vbus-gpio = <&gpio3 26 GPIO_ACTIVE_HIGH>; vbus-gpio = <&gpio3 26 GPIO_ACTIVE_HIGH>;
......
...@@ -395,8 +395,13 @@ &usb1 { ...@@ -395,8 +395,13 @@ &usb1 {
dr_mode = "host"; dr_mode = "host";
}; };
&omap_dwc3_2 {
extcon = <&extcon_usb2>;
};
&usb2 { &usb2 {
dr_mode = "peripheral"; extcon = <&extcon_usb2>;
dr_mode = "otg";
}; };
&mmc1 { &mmc1 {
......
...@@ -189,6 +189,8 @@ l20 { ...@@ -189,6 +189,8 @@ l20 {
regulator-max-microvolt = <2950000>; regulator-max-microvolt = <2950000>;
regulator-boot-on; regulator-boot-on;
regulator-system-load = <200000>;
regulator-allow-set-load;
}; };
l21 { l21 {
......
...@@ -206,6 +206,7 @@ i2cmux@70 { ...@@ -206,6 +206,7 @@ i2cmux@70 {
#address-cells = <1>; #address-cells = <1>;
#size-cells = <0>; #size-cells = <0>;
reg = <0x70>; reg = <0x70>;
reset-gpio = <&gpio TEGRA_GPIO(BB, 0) GPIO_ACTIVE_LOW>;
}; };
}; };
......
...@@ -203,6 +203,7 @@ static int __init exynos_pmu_irq_init(struct device_node *node, ...@@ -203,6 +203,7 @@ static int __init exynos_pmu_irq_init(struct device_node *node,
NULL); NULL);
if (!domain) { if (!domain) {
iounmap(pmu_base_addr); iounmap(pmu_base_addr);
pmu_base_addr = NULL;
return -ENOMEM; return -ENOMEM;
} }
......
...@@ -148,13 +148,20 @@ static int hi3xxx_hotplug_init(void) ...@@ -148,13 +148,20 @@ static int hi3xxx_hotplug_init(void)
struct device_node *node; struct device_node *node;
node = of_find_compatible_node(NULL, NULL, "hisilicon,sysctrl"); node = of_find_compatible_node(NULL, NULL, "hisilicon,sysctrl");
if (node) { if (!node) {
ctrl_base = of_iomap(node, 0); id = ERROR_CTRL;
id = HI3620_CTRL; return -ENOENT;
return 0;
} }
id = ERROR_CTRL;
return -ENOENT; ctrl_base = of_iomap(node, 0);
of_node_put(node);
if (!ctrl_base) {
id = ERROR_CTRL;
return -ENOMEM;
}
id = HI3620_CTRL;
return 0;
} }
void hi3xxx_set_cpu(int cpu, bool enable) void hi3xxx_set_cpu(int cpu, bool enable)
...@@ -173,11 +180,15 @@ static bool hix5hd2_hotplug_init(void) ...@@ -173,11 +180,15 @@ static bool hix5hd2_hotplug_init(void)
struct device_node *np; struct device_node *np;
np = of_find_compatible_node(NULL, NULL, "hisilicon,cpuctrl"); np = of_find_compatible_node(NULL, NULL, "hisilicon,cpuctrl");
if (np) { if (!np)
ctrl_base = of_iomap(np, 0); return false;
return true;
} ctrl_base = of_iomap(np, 0);
return false; of_node_put(np);
if (!ctrl_base)
return false;
return true;
} }
void hix5hd2_set_cpu(int cpu, bool enable) void hix5hd2_set_cpu(int cpu, bool enable)
...@@ -219,10 +230,10 @@ void hip01_set_cpu(int cpu, bool enable) ...@@ -219,10 +230,10 @@ void hip01_set_cpu(int cpu, bool enable)
if (!ctrl_base) { if (!ctrl_base) {
np = of_find_compatible_node(NULL, NULL, "hisilicon,hip01-sysctrl"); np = of_find_compatible_node(NULL, NULL, "hisilicon,hip01-sysctrl");
if (np) BUG_ON(!np);
ctrl_base = of_iomap(np, 0); ctrl_base = of_iomap(np, 0);
else of_node_put(np);
BUG(); BUG_ON(!ctrl_base);
} }
if (enable) { if (enable) {
......
...@@ -17,6 +17,7 @@ config ARCH_ROCKCHIP ...@@ -17,6 +17,7 @@ config ARCH_ROCKCHIP
select ARM_GLOBAL_TIMER select ARM_GLOBAL_TIMER
select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK select CLKSRC_ARM_GLOBAL_TIMER_SCHED_CLOCK
select ZONE_DMA if ARM_LPAE select ZONE_DMA if ARM_LPAE
select PM
help help
Support for Rockchip's Cortex-A9 Single-to-Quad-Core-SoCs Support for Rockchip's Cortex-A9 Single-to-Quad-Core-SoCs
containing the RK2928, RK30xx and RK31xx series. containing the RK2928, RK30xx and RK31xx series.
...@@ -754,7 +754,6 @@ config NEED_PER_CPU_EMBED_FIRST_CHUNK ...@@ -754,7 +754,6 @@ config NEED_PER_CPU_EMBED_FIRST_CHUNK
config HOLES_IN_ZONE config HOLES_IN_ZONE
def_bool y def_bool y
depends on NUMA
source kernel/Kconfig.preempt source kernel/Kconfig.preempt
source kernel/Kconfig.hz source kernel/Kconfig.hz
......
...@@ -151,6 +151,7 @@ config ARCH_ROCKCHIP ...@@ -151,6 +151,7 @@ config ARCH_ROCKCHIP
select GPIOLIB select GPIOLIB
select PINCTRL select PINCTRL
select PINCTRL_ROCKCHIP select PINCTRL_ROCKCHIP
select PM
select ROCKCHIP_TIMER select ROCKCHIP_TIMER
help help
This enables support for the ARMv8 based Rockchip chipsets, This enables support for the ARMv8 based Rockchip chipsets,
......
...@@ -331,7 +331,7 @@ uart0: serial@11002000 { ...@@ -331,7 +331,7 @@ uart0: serial@11002000 {
reg = <0 0x11002000 0 0x400>; reg = <0 0x11002000 0 0x400>;
interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>; interrupts = <GIC_SPI 91 IRQ_TYPE_LEVEL_LOW>;
clocks = <&topckgen CLK_TOP_UART_SEL>, clocks = <&topckgen CLK_TOP_UART_SEL>,
<&pericfg CLK_PERI_UART1_PD>; <&pericfg CLK_PERI_UART0_PD>;
clock-names = "baud", "bus"; clock-names = "baud", "bus";
status = "disabled"; status = "disabled";
}; };
......
...@@ -338,7 +338,7 @@ led@5 { ...@@ -338,7 +338,7 @@ led@5 {
led@6 { led@6 {
label = "apq8016-sbc:blue:bt"; label = "apq8016-sbc:blue:bt";
gpios = <&pm8916_mpps 3 GPIO_ACTIVE_HIGH>; gpios = <&pm8916_mpps 3 GPIO_ACTIVE_HIGH>;
linux,default-trigger = "bt"; linux,default-trigger = "bluetooth-power";
default-state = "off"; default-state = "off";
}; };
}; };
......
...@@ -58,6 +58,7 @@ cpu1: cpu@1 { ...@@ -58,6 +58,7 @@ cpu1: cpu@1 {
clocks = <&sys_clk 32>; clocks = <&sys_clk 32>;
enable-method = "psci"; enable-method = "psci";
operating-points-v2 = <&cluster0_opp>; operating-points-v2 = <&cluster0_opp>;
#cooling-cells = <2>;
}; };
cpu2: cpu@100 { cpu2: cpu@100 {
...@@ -77,6 +78,7 @@ cpu3: cpu@101 { ...@@ -77,6 +78,7 @@ cpu3: cpu@101 {
clocks = <&sys_clk 33>; clocks = <&sys_clk 33>;
enable-method = "psci"; enable-method = "psci";
operating-points-v2 = <&cluster1_opp>; operating-points-v2 = <&cluster1_opp>;
#cooling-cells = <2>;
}; };
}; };
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment