kernel: update 3.18 to 3.18.21
Changelog: * https://www.kernel.org/pub/linux/kernel/v3.x/ChangeLog-3.18.21 Signed-off-by: Jonas Gorski <jogo@openwrt.org> SVN-Revision: 46768
This commit is contained in:
parent
7747092ed1
commit
7d6cff4882
20 changed files with 45 additions and 80 deletions
|
@ -2,11 +2,11 @@
|
|||
|
||||
LINUX_RELEASE?=1
|
||||
|
||||
LINUX_VERSION-3.18 = .20
|
||||
LINUX_VERSION-3.18 = .21
|
||||
LINUX_VERSION-4.0 = .9
|
||||
LINUX_VERSION-4.1 = .6
|
||||
|
||||
LINUX_KERNEL_MD5SUM-3.18.20 = 952c9159acdf4efbc96e08a27109d994
|
||||
LINUX_KERNEL_MD5SUM-3.18.21 = e4248caaa4cef318c04657e971b37298
|
||||
LINUX_KERNEL_MD5SUM-4.0.9 = 40fc5f6e2d718e539b45e6601c71985b
|
||||
LINUX_KERNEL_MD5SUM-4.1.6 = 1dae0c808e34164cab3dfd57be88bd53
|
||||
|
||||
|
|
|
@ -212,7 +212,7 @@ The correct baudrate is shown in the log after the cdiv > 0xffff correction.
|
|||
static void timer_set_mode(enum clock_event_mode mode,
|
||||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -371,6 +371,25 @@ config I2C_BCM2835
|
||||
@@ -372,6 +372,25 @@ config I2C_BCM2835
|
||||
This support is also available as a module. If so, the module
|
||||
will be called i2c-bcm2835.
|
||||
|
||||
|
|
|
@ -147,7 +147,7 @@ Signed-off-by: Noralf Tronnes <notro@tronnes.org>
|
|||
bcm_register_device(&bcm2835_thermal_device);
|
||||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -361,7 +361,7 @@ config I2C_AXXIA
|
||||
@@ -362,7 +362,7 @@ config I2C_AXXIA
|
||||
|
||||
config I2C_BCM2835
|
||||
tristate "Broadcom BCM2835 I2C controller"
|
||||
|
|
|
@ -9352,7 +9352,7 @@ Subject: [PATCH 089/114] Add 2709 platform for Raspberry Pi 2
|
|||
|
||||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -361,7 +361,7 @@ config I2C_AXXIA
|
||||
@@ -362,7 +362,7 @@ config I2C_AXXIA
|
||||
|
||||
config I2C_BCM2835
|
||||
tristate "Broadcom BCM2835 I2C controller"
|
||||
|
@ -9361,7 +9361,7 @@ Subject: [PATCH 089/114] Add 2709 platform for Raspberry Pi 2
|
|||
help
|
||||
If you say yes to this option, support will be included for the
|
||||
BCM2835 I2C controller.
|
||||
@@ -373,7 +373,7 @@ config I2C_BCM2835
|
||||
@@ -374,7 +374,7 @@ config I2C_BCM2835
|
||||
|
||||
config I2C_BCM2708
|
||||
tristate "BCM2708 BSC"
|
||||
|
|
|
@ -242,7 +242,7 @@
|
|||
#endif /* _ASM_R4KCACHE_H */
|
||||
--- a/arch/mips/include/asm/stackframe.h
|
||||
+++ b/arch/mips/include/asm/stackframe.h
|
||||
@@ -333,6 +333,10 @@
|
||||
@@ -358,6 +358,10 @@
|
||||
.macro RESTORE_SP_AND_RET
|
||||
LONG_L sp, PT_R29(sp)
|
||||
.set arch=r4000
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
--- a/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
+++ b/arch/mips/bcm63xx/boards/board_bcm963xx.c
|
||||
@@ -2168,6 +2168,60 @@ static struct board_info __initdata boar
|
||||
},
|
||||
},
|
||||
};
|
||||
|
||||
|
||||
+static struct sprom_fixup __initdata vr3026e_fixups[] = {
|
||||
+ { .offset = 97, .value = 0xfeb3 },
|
||||
+ { .offset = 98, .value = 0x1618 },
|
||||
|
@ -59,21 +59,21 @@
|
|||
+};
|
||||
+
|
||||
static struct b53_platform_data WAP5813n_b53_pdata = {
|
||||
.alias = "eth0",
|
||||
.alias = "eth0",
|
||||
};
|
||||
@@ -2472,6 +2526,7 @@ static const struct board_info __initcon
|
||||
&board_P870HW51A_V2,
|
||||
&board_VR3025u,
|
||||
&board_VR3025un,
|
||||
&board_P870HW51A_V2,
|
||||
&board_VR3025u,
|
||||
&board_VR3025un,
|
||||
+ &board_VR3026e,
|
||||
&board_WAP5813n,
|
||||
&board_WAP5813n,
|
||||
#endif
|
||||
#ifdef CONFIG_BCM63XX_CPU_63268
|
||||
@@ -2572,6 +2627,7 @@ static struct of_device_id const bcm963x
|
||||
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
|
||||
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
|
||||
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
|
||||
{ .compatible = "brcm,bcm96368mvwg", .data = &board_96368mvwg, },
|
||||
{ .compatible = "comtrend,vr-3025u", .data = &board_VR3025u, },
|
||||
{ .compatible = "comtrend,vr-3025un", .data = &board_VR3025un, },
|
||||
+ { .compatible = "comtrend,vr-3026e", .data = &board_VR3026e, },
|
||||
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
|
||||
{ .compatible = "huawei,hg655b", .data = &board_HG655b, },
|
||||
{ .compatible = "netgear,dgnd3700v1", .data = &board_DGND3700v1_3800B, },
|
||||
{ .compatible = "comtrend,wap-5813n", .data = &board_WAP5813n, },
|
||||
{ .compatible = "huawei,hg655b", .data = &board_HG655b, },
|
||||
{ .compatible = "netgear,dgnd3700v1", .data = &board_DGND3700v1_3800B, },
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -416,6 +416,18 @@ config I2C_CBUS_GPIO
|
||||
@@ -417,6 +417,18 @@ config I2C_CBUS_GPIO
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called i2c-cbus-gpio.
|
||||
|
||||
|
|
|
@ -1,35 +0,0 @@
|
|||
From: Felix Fietkau <nbd@openwrt.org>
|
||||
Date: Sun, 19 Jul 2015 00:21:57 +0200
|
||||
Subject: [PATCH] MIPS: kernel: fix sched_getaffinity with MT FPAFF enabled
|
||||
|
||||
p->thread.user_cpus_allowed is zero-initialized and is only filled on
|
||||
the first sched_setaffinity call.
|
||||
|
||||
To avoid adding overhead in the task initialization codepath, simply OR
|
||||
the returned mask in sched_getaffinity with p->cpus_allowed.
|
||||
|
||||
Cc: stable@vger.kernel.org
|
||||
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
|
||||
---
|
||||
|
||||
--- a/arch/mips/kernel/mips-mt-fpaff.c
|
||||
+++ b/arch/mips/kernel/mips-mt-fpaff.c
|
||||
@@ -154,7 +154,7 @@ asmlinkage long mipsmt_sys_sched_getaffi
|
||||
unsigned long __user *user_mask_ptr)
|
||||
{
|
||||
unsigned int real_len;
|
||||
- cpumask_t mask;
|
||||
+ cpumask_t allowed, mask;
|
||||
int retval;
|
||||
struct task_struct *p;
|
||||
|
||||
@@ -173,7 +173,8 @@ asmlinkage long mipsmt_sys_sched_getaffi
|
||||
if (retval)
|
||||
goto out_unlock;
|
||||
|
||||
- cpumask_and(&mask, &p->thread.user_cpus_allowed, cpu_possible_mask);
|
||||
+ cpumask_or(&allowed, &p->thread.user_cpus_allowed, &p->cpus_allowed);
|
||||
+ cpumask_and(&mask, &allowed, cpu_active_mask);
|
||||
|
||||
out_unlock:
|
||||
read_unlock(&tasklist_lock);
|
|
@ -69,7 +69,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||
/**
|
||||
* ata_build_rw_tf - Build ATA taskfile for given read/write request
|
||||
* @tf: Target ATA taskfile
|
||||
@@ -4761,6 +4774,9 @@ static struct ata_queued_cmd *ata_qc_new
|
||||
@@ -4798,6 +4811,9 @@ static struct ata_queued_cmd *ata_qc_new
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -79,7 +79,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||
|
||||
return qc;
|
||||
}
|
||||
@@ -5671,6 +5687,9 @@ struct ata_port *ata_port_alloc(struct a
|
||||
@@ -5708,6 +5724,9 @@ struct ata_port *ata_port_alloc(struct a
|
||||
ap->stats.unhandled_irq = 1;
|
||||
ap->stats.idle_irq = 1;
|
||||
#endif
|
||||
|
@ -89,7 +89,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||
ata_sff_port_init(ap);
|
||||
|
||||
return ap;
|
||||
@@ -5692,6 +5711,12 @@ static void ata_host_release(struct devi
|
||||
@@ -5729,6 +5748,12 @@ static void ata_host_release(struct devi
|
||||
|
||||
kfree(ap->pmp_link);
|
||||
kfree(ap->slave_link);
|
||||
|
@ -102,7 +102,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||
kfree(ap);
|
||||
host->ports[i] = NULL;
|
||||
}
|
||||
@@ -6138,7 +6163,23 @@ int ata_host_register(struct ata_host *h
|
||||
@@ -6175,7 +6200,23 @@ int ata_host_register(struct ata_host *h
|
||||
host->ports[i]->print_id = atomic_inc_return(&ata_print_id);
|
||||
host->ports[i]->local_port_no = i + 1;
|
||||
}
|
||||
|
@ -138,7 +138,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org>
|
|||
|
||||
/*
|
||||
* Define if arch has non-standard setup. This is a _PCI_ standard
|
||||
@@ -872,6 +875,12 @@ struct ata_port {
|
||||
@@ -874,6 +877,12 @@ struct ata_port {
|
||||
#ifdef CONFIG_ATA_ACPI
|
||||
struct ata_acpi_gtm __acpi_init_gtm; /* use ata_acpi_init_gtm() */
|
||||
#endif
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/init/main.c
|
||||
+++ b/init/main.c
|
||||
@@ -962,7 +962,8 @@ static int __ref kernel_init(void *unuse
|
||||
@@ -963,7 +963,8 @@ static int __ref kernel_init(void *unuse
|
||||
pr_err("Failed to execute %s (error %d). Attempting defaults...\n",
|
||||
execute_command, ret);
|
||||
}
|
||||
|
|
|
@ -18,7 +18,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
|
||||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -553,6 +553,16 @@ config I2C_KEMPLD
|
||||
@@ -554,6 +554,16 @@ config I2C_KEMPLD
|
||||
This driver can also be built as a module. If so, the module
|
||||
will be called i2c-kempld.
|
||||
|
||||
|
|
|
@ -164,7 +164,7 @@
|
|||
enum mtd_parser_type type,
|
||||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -627,7 +627,7 @@ out_register:
|
||||
@@ -628,7 +628,7 @@ out_register:
|
||||
}
|
||||
|
||||
|
||||
|
@ -173,7 +173,7 @@
|
|||
__mtd_add_partition(struct mtd_info *master, const char *name,
|
||||
long long offset, long long length, bool dup_check)
|
||||
{
|
||||
@@ -748,7 +748,7 @@ run_parsers_by_type(struct mtd_part *sla
|
||||
@@ -749,7 +749,7 @@ run_parsers_by_type(struct mtd_part *sla
|
||||
return nr_parts;
|
||||
}
|
||||
|
||||
|
@ -182,7 +182,7 @@
|
|||
mtd_pad_erasesize(struct mtd_info *mtd, int offset, int len)
|
||||
{
|
||||
unsigned long mask = mtd->erasesize - 1;
|
||||
@@ -818,7 +818,6 @@ static void split_uimage(struct mtd_info
|
||||
@@ -819,7 +819,6 @@ static void split_uimage(struct mtd_info
|
||||
return;
|
||||
|
||||
len = be32_to_cpu(hdr.size) + 0x40;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/drivers/phy/Kconfig
|
||||
+++ b/drivers/phy/Kconfig
|
||||
@@ -239,6 +239,11 @@
|
||||
@@ -239,6 +239,11 @@ config PHY_XGENE
|
||||
help
|
||||
This option enables support for APM X-Gene SoC multi-purpose PHY.
|
||||
|
||||
|
@ -14,7 +14,7 @@
|
|||
depends on RESET_CONTROLLER
|
||||
--- a/drivers/phy/Makefile
|
||||
+++ b/drivers/phy/Makefile
|
||||
@@ -31,3 +31,4 @@
|
||||
@@ -31,3 +31,4 @@ obj-$(CONFIG_PHY_ST_SPEAR1340_MIPHY) +=
|
||||
obj-$(CONFIG_PHY_XGENE) += phy-xgene.o
|
||||
obj-$(CONFIG_PHY_STIH407_USB) += phy-stih407-usb.o
|
||||
obj-$(CONFIG_PHY_STIH41X_USB) += phy-stih41x-usb.o
|
||||
|
|
|
@ -45,7 +45,7 @@ Signed-off-by: John Crispin <blogic@openwrt.org>
|
|||
+};
|
||||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -710,6 +710,10 @@ config I2C_RK3X
|
||||
@@ -711,6 +711,10 @@ config I2C_RK3X
|
||||
This driver can also be built as a module. If so, the module will
|
||||
be called i2c-rk3x.
|
||||
|
||||
|
|
|
@ -219,7 +219,7 @@
|
|||
{
|
||||
--- a/arch/mips/ralink/mt7621.c
|
||||
+++ b/arch/mips/ralink/mt7621.c
|
||||
@@ -176,6 +176,7 @@ void prom_soc_init(struct ralink_soc_inf
|
||||
@@ -193,6 +193,7 @@ void prom_soc_init(struct ralink_soc_inf
|
||||
soc_info->mem_size_min = MT7621_DDR2_SIZE_MIN;
|
||||
soc_info->mem_size_max = MT7621_DDR2_SIZE_MAX;
|
||||
soc_info->mem_base = MT7621_DRAM_BASE;
|
||||
|
|
|
@ -5546,7 +5546,7 @@
|
|||
ctrl_ctx->add_flags |= cpu_to_le32(added_ctxs);
|
||||
new_add_flags = le32_to_cpu(ctrl_ctx->add_flags);
|
||||
|
||||
@@ -4451,8 +4597,14 @@ static u16 xhci_call_host_update_timeout
|
||||
@@ -4454,8 +4600,14 @@ static u16 xhci_call_host_update_timeout
|
||||
u16 *timeout)
|
||||
{
|
||||
if (state == USB3_LPM_U1)
|
||||
|
@ -5561,7 +5561,7 @@
|
|||
return xhci_calculate_u2_timeout(xhci, udev, desc);
|
||||
|
||||
return USB3_LPM_DISABLED;
|
||||
@@ -4837,7 +4989,9 @@ int xhci_gen_setup(struct usb_hcd *hcd,
|
||||
@@ -4840,7 +4992,9 @@ int xhci_gen_setup(struct usb_hcd *hcd,
|
||||
hcd->self.no_sg_constraint = 1;
|
||||
|
||||
/* XHCI controllers don't stop the ep queue on short packets :| */
|
||||
|
@ -5571,7 +5571,7 @@
|
|||
|
||||
if (usb_hcd_is_primary_hcd(hcd)) {
|
||||
xhci = kzalloc(sizeof(struct xhci_hcd), GFP_KERNEL);
|
||||
@@ -4900,6 +5054,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
|
||||
@@ -4903,6 +5057,10 @@ int xhci_gen_setup(struct usb_hcd *hcd,
|
||||
goto error;
|
||||
xhci_dbg(xhci, "Reset complete\n");
|
||||
|
||||
|
@ -5582,7 +5582,7 @@
|
|||
/* Set dma_mask and coherent_dma_mask to 64-bits,
|
||||
* if xHC supports 64-bit addressing */
|
||||
if (HCC_64BIT_ADDR(xhci->hcc_params) &&
|
||||
@@ -4994,8 +5152,57 @@ MODULE_DESCRIPTION(DRIVER_DESC);
|
||||
@@ -4997,8 +5155,57 @@ MODULE_DESCRIPTION(DRIVER_DESC);
|
||||
MODULE_AUTHOR(DRIVER_AUTHOR);
|
||||
MODULE_LICENSE("GPL");
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/arch/mips/kernel/setup.c
|
||||
+++ b/arch/mips/kernel/setup.c
|
||||
@@ -675,7 +675,6 @@
|
||||
@@ -675,7 +675,6 @@ static void __init arch_mem_init(char **
|
||||
crashk_res.end - crashk_res.start + 1,
|
||||
BOOTMEM_DEFAULT);
|
||||
#endif
|
||||
|
@ -8,7 +8,7 @@
|
|||
sparse_init();
|
||||
plat_swiotlb_setup();
|
||||
paging_init();
|
||||
@@ -784,6 +783,7 @@
|
||||
@@ -784,6 +783,7 @@ void __init setup_arch(char **cmdline_p)
|
||||
prefill_possible_map();
|
||||
|
||||
cpu_cache_init();
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/drivers/i2c/busses/Kconfig
|
||||
+++ b/drivers/i2c/busses/Kconfig
|
||||
@@ -714,6 +714,10 @@ config I2C_RALINK
|
||||
@@ -715,6 +715,10 @@ config I2C_RALINK
|
||||
tristate "Ralink I2C Controller"
|
||||
select OF_I2C
|
||||
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -818,9 +818,6 @@ static void split_uimage(struct mtd_info
|
||||
@@ -819,9 +819,6 @@ static void split_uimage(struct mtd_info
|
||||
return;
|
||||
|
||||
len = be32_to_cpu(hdr.size) + 0x40;
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
--- a/drivers/mtd/mtdpart.c
|
||||
+++ b/drivers/mtd/mtdpart.c
|
||||
@@ -806,8 +806,11 @@ static void split_uimage(struct mtd_info
|
||||
@@ -807,8 +807,11 @@ static void split_uimage(struct mtd_info
|
||||
{
|
||||
struct {
|
||||
__be32 magic;
|
||||
|
@ -13,7 +13,7 @@
|
|||
} hdr;
|
||||
size_t len;
|
||||
|
||||
@@ -817,7 +820,10 @@ static void split_uimage(struct mtd_info
|
||||
@@ -818,7 +821,10 @@ static void split_uimage(struct mtd_info
|
||||
if (len != sizeof(hdr) || hdr.magic != cpu_to_be32(UBOOT_MAGIC))
|
||||
return;
|
||||
|
||||
|
|
Loading…
Reference in a new issue