1. 29 10月, 2019 10 次提交
    • M
      arm64: Enable workaround for Cavium TX2 erratum 219 when running SMT · 42927455
      Marc Zyngier 提交于
      commit 93916beb70143c46bf1d2bacf814be3a124b253b upstream.
      
      It appears that the only case where we need to apply the TX2_219_TVM
      mitigation is when the core is in SMT mode. So let's condition the
      enabling on detecting a CPU whose MPIDR_EL1.Aff0 is non-zero.
      
      Cc: <stable@vger.kernel.org>
      Signed-off-by: NMarc Zyngier <marc.zyngier@arm.com>
      Signed-off-by: NWill Deacon <will@kernel.org>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      42927455
    • H
      parisc: Fix vmap memory leak in ioremap()/iounmap() · ca65fe21
      Helge Deller 提交于
      commit 513f7f747e1cba81f28a436911fba0b485878ebd upstream.
      
      Sven noticed that calling ioremap() and iounmap() multiple times leads
      to a vmap memory leak:
      	vmap allocation for size 4198400 failed:
      	use vmalloc=<size> to increase size
      
      It seems we missed calling vunmap() in iounmap().
      Signed-off-by: NHelge Deller <deller@gmx.de>
      Noticed-by: NSven Schnelle <svens@stackframe.org>
      Cc: <stable@vger.kernel.org> # v3.16+
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      ca65fe21
    • M
      xtensa: drop EXPORT_SYMBOL for outs*/ins* · 19e2ed7b
      Max Filippov 提交于
      commit 8b39da985194aac2998dd9e3a22d00b596cebf1e upstream.
      
      Custom outs*/ins* implementations are long gone from the xtensa port,
      remove matching EXPORT_SYMBOLs.
      This fixes the following build warnings issued by modpost since commit
      15bfc2348d54 ("modpost: check for static EXPORT_SYMBOL* functions"):
      
        WARNING: "insb" [vmlinux] is a static EXPORT_SYMBOL
        WARNING: "insw" [vmlinux] is a static EXPORT_SYMBOL
        WARNING: "insl" [vmlinux] is a static EXPORT_SYMBOL
        WARNING: "outsb" [vmlinux] is a static EXPORT_SYMBOL
        WARNING: "outsw" [vmlinux] is a static EXPORT_SYMBOL
        WARNING: "outsl" [vmlinux] is a static EXPORT_SYMBOL
      
      Cc: stable@vger.kernel.org
      Fixes: d38efc1f ("xtensa: adopt generic io routines")
      Signed-off-by: NMax Filippov <jcmvbkbc@gmail.com>
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      19e2ed7b
    • P
      MIPS: tlbex: Fix build_restore_pagemask KScratch restore · 4034a503
      Paul Burton 提交于
      commit b42aa3fd5957e4daf4b69129e5ce752a2a53e7d6 upstream.
      
      build_restore_pagemask() will restore the value of register $1/$at when
      its restore_scratch argument is non-zero, and aims to do so by filling a
      branch delay slot. Commit 0b24cae4d535 ("MIPS: Add missing EHB in mtc0
      -> mfc0 sequence.") added an EHB instruction (Execution Hazard Barrier)
      prior to restoring $1 from a KScratch register, in order to resolve a
      hazard that can result in stale values of the KScratch register being
      observed. In particular, P-class CPUs from MIPS with out of order
      execution pipelines such as the P5600 & P6600 are affected.
      
      Unfortunately this EHB instruction was inserted in the branch delay slot
      causing the MFC0 instruction which performs the restoration to no longer
      execute along with the branch. The result is that the $1 register isn't
      actually restored, ie. the TLB refill exception handler clobbers it -
      which is exactly the problem the EHB is meant to avoid for the P-class
      CPUs.
      
      Similarly build_get_pgd_vmalloc() will restore the value of $1/$at when
      its mode argument equals refill_scratch, and suffers from the same
      problem.
      
      Fix this by in both cases moving the EHB earlier in the emitted code.
      There's no reason it needs to immediately precede the MFC0 - it simply
      needs to be between the MTC0 & MFC0.
      
      This bug only affects Cavium Octeon systems which use
      build_fast_tlb_refill_handler().
      Signed-off-by: NPaul Burton <paulburton@kernel.org>
      Fixes: 0b24cae4d535 ("MIPS: Add missing EHB in mtc0 -> mfc0 sequence.")
      Cc: Dmitry Korotin <dkorotin@wavecomp.com>
      Cc: stable@vger.kernel.org # v3.15+
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Signed-off-by: NGreg Kroah-Hartman <gregkh@linuxfoundation.org>
      4034a503
    • C
      mips: Loongson: Fix the link time qualifier of 'serial_exit()' · db1e664e
      Christophe JAILLET 提交于
      [ Upstream commit 25b69a889b638b0b7e51e2c4fe717a66bec0e566 ]
      
      'exit' functions should be marked as __exit, not __init.
      
      Fixes: 85cc0288 ("mips: make loongsoon serial driver explicitly modular")
      Signed-off-by: NChristophe JAILLET <christophe.jaillet@wanadoo.fr>
      Signed-off-by: NPaul Burton <paul.burton@mips.com>
      Cc: chenhc@lemote.com
      Cc: ralf@linux-mips.org
      Cc: jhogan@kernel.org
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Cc: kernel-janitors@vger.kernel.org
      Signed-off-by: NSasha Levin <sashal@kernel.org>
      db1e664e
    • R
      xen/efi: Set nonblocking callbacks · 90a886b6
      Ross Lagerwall 提交于
      [ Upstream commit df359f0d09dc029829b66322707a2f558cb720f7 ]
      
      Other parts of the kernel expect these nonblocking EFI callbacks to
      exist and crash when running under Xen. Since the implementations of
      xen_efi_set_variable() and xen_efi_query_variable_info() do not take any
      locks, use them for the nonblocking callbacks too.
      Signed-off-by: NRoss Lagerwall <ross.lagerwall@citrix.com>
      Reviewed-by: NJuergen Gross <jgross@suse.com>
      Signed-off-by: NJuergen Gross <jgross@suse.com>
      Signed-off-by: NSasha Levin <sashal@kernel.org>
      90a886b6
    • O
      MIPS: dts: ar9331: fix interrupt-controller size · 5d880444
      Oleksij Rempel 提交于
      [ Upstream commit 0889d07f3e4b171c453b2aaf2b257f9074cdf624 ]
      
      It is two registers each of 4 byte.
      Signed-off-by: NOleksij Rempel <o.rempel@pengutronix.de>
      Signed-off-by: NPaul Burton <paul.burton@mips.com>
      Cc: Rob Herring <robh+dt@kernel.org>
      Cc: Mark Rutland <mark.rutland@arm.com>
      Cc: Pengutronix Kernel Team <kernel@pengutronix.de>
      Cc: Ralf Baechle <ralf@linux-mips.org>
      Cc: James Hogan <jhogan@kernel.org>
      Cc: devicetree@vger.kernel.org
      Cc: linux-mips@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Signed-off-by: NSasha Levin <sashal@kernel.org>
      5d880444
    • P
      ARM: dts: am4372: Set memory bandwidth limit for DISPC · 1cd24f5e
      Peter Ujfalusi 提交于
      [ Upstream commit f90ec6cdf674248dcad85bf9af6e064bf472b841 ]
      
      Set memory bandwidth limit to filter out resolutions above 720p@60Hz to
      avoid underflow errors due to the bandwidth needs of higher resolutions.
      
      am43xx can not provide enough bandwidth to DISPC to correctly handle
      'high' resolutions.
      Signed-off-by: NPeter Ujfalusi <peter.ujfalusi@ti.com>
      Signed-off-by: NTomi Valkeinen <tomi.valkeinen@ti.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      Signed-off-by: NSasha Levin <sashal@kernel.org>
      1cd24f5e
    • T
      ARM: OMAP2+: Fix warnings with broken omap2_set_init_voltage() · ec3817c6
      Tony Lindgren 提交于
      [ Upstream commit cf395f7ddb9ebc6b2d28d83b53d18aa4e7c19701 ]
      
      This code is currently unable to find the dts opp tables as ti-cpufreq
      needs to set them up first based on speed binning.
      
      We stopped initializing the opp tables with platform code years ago for
      device tree based booting with commit 92d51856 ("ARM: OMAP3+: do not
      register non-dt OPP tables for device tree boot"), and all of mach-omap2
      is now booting using device tree.
      
      We currently get the following errors on init:
      
      omap2_set_init_voltage: unable to find boot up OPP for vdd_mpu
      omap2_set_init_voltage: unable to set vdd_mpu
      omap2_set_init_voltage: unable to find boot up OPP for vdd_core
      omap2_set_init_voltage: unable to set vdd_core
      omap2_set_init_voltage: unable to find boot up OPP for vdd_iva
      omap2_set_init_voltage: unable to set vdd_iva
      
      Let's just drop the unused code. Nowadays ti-cpufreq should be used to
      to initialize things properly.
      
      Cc: Adam Ford <aford173@gmail.com>
      Cc: André Roth <neolynx@gmail.com>
      Cc: "H. Nikolaus Schaller" <hns@goldelico.com>
      Cc: Nishanth Menon <nm@ti.com>
      Cc: Tero Kristo <t-kristo@ti.com>
      Tested-by: Adam Ford <aford173@gmail.com> #logicpd-torpedo-37xx-devkit
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      Signed-off-by: NSasha Levin <sashal@kernel.org>
      ec3817c6
    • T
      ARM: OMAP2+: Fix missing reset done flag for am3 and am43 · a23cd06c
      Tony Lindgren 提交于
      [ Upstream commit 8ad8041b98c665b6147e607b749586d6e20ba73a ]
      
      For ti,sysc-omap4 compatible devices with no sysstatus register, we do have
      reset done status available in the SOFTRESET bit that clears when the reset
      is done. This is documented for example in am437x TRM for DMTIMER_TIOCP_CFG
      register. The am335x TRM just says that SOFTRESET bit value 1 means reset is
      ongoing, but it behaves the same way clearing after reset is done.
      
      With the ti-sysc driver handling this automatically based on no sysstatus
      register defined, we see warnings if SYSC_HAS_RESET_STATUS is missing in the
      legacy platform data:
      
      ti-sysc 48042000.target-module: sysc_flags 00000222 != 00000022
      ti-sysc 48044000.target-module: sysc_flags 00000222 != 00000022
      ti-sysc 48046000.target-module: sysc_flags 00000222 != 00000022
      ...
      
      Let's fix these warnings by adding SYSC_HAS_RESET_STATUS. Let's also
      remove the useless parentheses while at it.
      
      If it turns out we do have ti,sysc-omap4 compatible devices without a
      working SOFTRESET bit we can set up additional quirk handling for it.
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      Signed-off-by: NSasha Levin <sashal@kernel.org>
      a23cd06c
  2. 18 10月, 2019 6 次提交
  3. 12 10月, 2019 24 次提交