diff options
author | Hauke Mehrtens <hauke@hauke-m.de> | 2017-02-15 21:54:37 +0100 |
---|---|---|
committer | Hauke Mehrtens <hauke@hauke-m.de> | 2017-02-16 00:46:23 +0100 |
commit | 236840eb473d271450d9864d1c46927ddaf305ee (patch) | |
tree | c9b34623da285c535cafdcd7fbc286a5f39f7462 /target/linux/generic | |
parent | d517f043434901452fd19dabc7deefb58179c444 (diff) | |
download | upstream-236840eb473d271450d9864d1c46927ddaf305ee.tar.gz upstream-236840eb473d271450d9864d1c46927ddaf305ee.tar.bz2 upstream-236840eb473d271450d9864d1c46927ddaf305ee.zip |
kernel: update kernel 4.9 to version 4.9.10
Signed-off-by: Hauke Mehrtens <hauke@hauke-m.de>
Diffstat (limited to 'target/linux/generic')
3 files changed, 10 insertions, 102 deletions
diff --git a/target/linux/generic/patches-4.9/170-Revert-bcma-init-serial-console-directly-from-ChipCo.patch b/target/linux/generic/patches-4.9/170-Revert-bcma-init-serial-console-directly-from-ChipCo.patch deleted file mode 100644 index affe090457..0000000000 --- a/target/linux/generic/patches-4.9/170-Revert-bcma-init-serial-console-directly-from-ChipCo.patch +++ /dev/null @@ -1,92 +0,0 @@ -From: =?UTF-8?q?Rafa=C5=82=20Mi=C5=82ecki?= <rafal@milecki.pl> -Subject: [PATCH] Revert "bcma: init serial console directly from ChipCommon - code" -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This reverts commit 4c81acab3816 ("bcma: init serial console directly -from ChipCommon code") as it broke IRQ assignment. Getting IRQ with -bcma_core_irq helper on SoC requires MIPS core to be set. It happens -*after* ChipCommon initialization so we can't do this so early. - -This fixes a user reported regression. It wasn't critical as serial was -still somehow working but lack of IRQs was making in unreliable. - -Fixes: 4c81acab3816 ("bcma: init serial console directly from ChipCommon code") -Reported-by: Felix Fietkau <nbd@nbd.name> -Cc: stable@vger.kernel.org # 4.6+ -Signed-off-by: Rafał Miłecki <rafal@milecki.pl> ---- - drivers/bcma/bcma_private.h | 3 +++ - drivers/bcma/driver_chipcommon.c | 11 +++-------- - drivers/bcma/driver_mips.c | 3 +++ - 3 files changed, 9 insertions(+), 8 deletions(-) - ---- a/drivers/bcma/bcma_private.h -+++ b/drivers/bcma/bcma_private.h -@@ -45,6 +45,9 @@ int bcma_sprom_get(struct bcma_bus *bus) - void bcma_core_chipcommon_early_init(struct bcma_drv_cc *cc); - void bcma_core_chipcommon_init(struct bcma_drv_cc *cc); - void bcma_chipco_bcm4331_ext_pa_lines_ctl(struct bcma_drv_cc *cc, bool enable); -+#ifdef CONFIG_BCMA_DRIVER_MIPS -+void bcma_chipco_serial_init(struct bcma_drv_cc *cc); -+#endif /* CONFIG_BCMA_DRIVER_MIPS */ - - /* driver_chipcommon_b.c */ - int bcma_core_chipcommon_b_init(struct bcma_drv_cc_b *ccb); ---- a/drivers/bcma/driver_chipcommon.c -+++ b/drivers/bcma/driver_chipcommon.c -@@ -15,8 +15,6 @@ - #include <linux/platform_device.h> - #include <linux/bcma/bcma.h> - --static void bcma_chipco_serial_init(struct bcma_drv_cc *cc); -- - static inline u32 bcma_cc_write32_masked(struct bcma_drv_cc *cc, u16 offset, - u32 mask, u32 value) - { -@@ -186,9 +184,6 @@ void bcma_core_chipcommon_early_init(str - if (cc->capabilities & BCMA_CC_CAP_PMU) - bcma_pmu_early_init(cc); - -- if (IS_BUILTIN(CONFIG_BCM47XX) && bus->hosttype == BCMA_HOSTTYPE_SOC) -- bcma_chipco_serial_init(cc); -- - if (bus->hosttype == BCMA_HOSTTYPE_SOC) - bcma_core_chipcommon_flash_detect(cc); - -@@ -378,9 +373,9 @@ u32 bcma_chipco_gpio_pulldown(struct bcm - return res; - } - --static void bcma_chipco_serial_init(struct bcma_drv_cc *cc) -+#ifdef CONFIG_BCMA_DRIVER_MIPS -+void bcma_chipco_serial_init(struct bcma_drv_cc *cc) - { --#if IS_BUILTIN(CONFIG_BCM47XX) - unsigned int irq; - u32 baud_base; - u32 i; -@@ -422,5 +417,5 @@ static void bcma_chipco_serial_init(stru - ports[i].baud_base = baud_base; - ports[i].reg_shift = 0; - } --#endif /* CONFIG_BCM47XX */ - } -+#endif /* CONFIG_BCMA_DRIVER_MIPS */ ---- a/drivers/bcma/driver_mips.c -+++ b/drivers/bcma/driver_mips.c -@@ -278,9 +278,12 @@ static void bcma_core_mips_nvram_init(st - - void bcma_core_mips_early_init(struct bcma_drv_mips *mcore) - { -+ struct bcma_bus *bus = mcore->core->bus; -+ - if (mcore->early_setup_done) - return; - -+ bcma_chipco_serial_init(&bus->drv_cc); - bcma_core_mips_nvram_init(mcore); - - mcore->early_setup_done = true; diff --git a/target/linux/generic/patches-4.9/304-mips_disable_fpu.patch b/target/linux/generic/patches-4.9/304-mips_disable_fpu.patch index b46ae878f3..af09137257 100644 --- a/target/linux/generic/patches-4.9/304-mips_disable_fpu.patch +++ b/target/linux/generic/patches-4.9/304-mips_disable_fpu.patch @@ -26,7 +26,7 @@ v2: incorporated changes suggested by Jonas Gorski --- a/arch/mips/Kconfig +++ b/arch/mips/Kconfig -@@ -2891,6 +2891,20 @@ +@@ -2891,6 +2891,20 @@ config MIPS_O32_FP64_SUPPORT If unsure, say N. @@ -49,7 +49,7 @@ v2: incorporated changes suggested by Jonas Gorski select OF --- a/arch/mips/Makefile +++ b/arch/mips/Makefile -@@ -287,7 +287,7 @@ +@@ -287,7 +287,7 @@ OBJCOPYFLAGS += --remove-section=.regin head-y := arch/mips/kernel/head.o libs-y += arch/mips/lib/ @@ -60,7 +60,7 @@ v2: incorporated changes suggested by Jonas Gorski core-y += arch/mips/ --- a/arch/mips/include/asm/fpu.h +++ b/arch/mips/include/asm/fpu.h -@@ -227,8 +227,10 @@ +@@ -227,8 +227,10 @@ static inline int init_fpu(void) /* Restore FRE */ write_c0_config5(config5); enable_fpu_hazard(); @@ -82,7 +82,7 @@ v2: incorporated changes suggested by Jonas Gorski #ifdef CONFIG_DEBUG_FS struct mips_fpu_emulator_stats { -@@ -63,6 +64,16 @@ +@@ -63,6 +64,16 @@ do { \ extern int fpu_emulator_cop1Handler(struct pt_regs *xcp, struct mips_fpu_struct *ctx, int has_fpu, void *__user *fault_addr); @@ -101,7 +101,7 @@ v2: incorporated changes suggested by Jonas Gorski int process_fpemu_return(int sig, void __user *fault_addr, --- a/arch/mips/include/asm/dsemul.h +++ b/arch/mips/include/asm/dsemul.h -@@ -41,6 +41,7 @@ +@@ -41,6 +41,7 @@ struct task_struct; extern int mips_dsemul(struct pt_regs *regs, mips_instruction ir, unsigned long branch_pc, unsigned long cont_pc); @@ -109,7 +109,7 @@ v2: incorporated changes suggested by Jonas Gorski /** * do_dsemulret() - Return from a delay slot 'emulation' frame * @xcp: User thread register context. -@@ -88,5 +89,27 @@ +@@ -88,5 +89,27 @@ extern bool dsemul_thread_rollback(struc * before @mm is freed in order to avoid memory leaks. */ extern void dsemul_mm_cleanup(struct mm_struct *mm); diff --git a/target/linux/generic/patches-4.9/834-ledtrig-libata.patch b/target/linux/generic/patches-4.9/834-ledtrig-libata.patch index 00e04a63ab..63a31f5db3 100644 --- a/target/linux/generic/patches-4.9/834-ledtrig-libata.patch +++ b/target/linux/generic/patches-4.9/834-ledtrig-libata.patch @@ -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 -@@ -4961,6 +4974,9 @@ struct ata_queued_cmd *ata_qc_new_init(s +@@ -4963,6 +4976,9 @@ struct ata_queued_cmd *ata_qc_new_init(s if (tag < 0) return NULL; } @@ -79,7 +79,7 @@ Signed-off-by: Daniel Golle <daniel@makrotopia.org> qc = __ata_qc_from_tag(ap, tag); qc->tag = tag; -@@ -5863,6 +5879,9 @@ struct ata_port *ata_port_alloc(struct a +@@ -5865,6 +5881,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; -@@ -5884,6 +5903,12 @@ static void ata_host_release(struct devi +@@ -5886,6 +5905,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; } -@@ -6330,7 +6355,23 @@ int ata_host_register(struct ata_host *h +@@ -6332,7 +6357,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; } |