summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* ARM: oxnas: Change OX810SE default driver configNeil Armstrong2016-07-061-1/+1
| | | | | | | | Since the SP804 timer changes will not been merged upstream, switch the default OX810SE config to the OXNAS RPS Timer driver configuration. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Olof Johansson <olof@lixom.net>
* Merge tag 'imx-soc-4.8' of ↵Olof Johansson2016-07-0613-17/+85
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux into next/soc The i.MX SoC changes for 4.8: - A patch series including both cpuidle and FEC driver changes to disable deeper idle states when FEC is active while board level workaround for ERR006687 is not available - A number patches to fix sparse warnings and spell errors - A fix for TZIC FIQ translation from VIRQ to HWIRQ - Support compatible of i.MX7 Solo SoC which has a subset of i.MX7 Dual * tag 'imx-soc-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux: ARM: imx: add support for i.MX 7Solo ARM: i.MX: Disable supervisor protect for i.MX51 ARM: imx6: fix missing <soc/imx/cpuidle.h> in cpuidle-imx6q.c ARM: i.MX: Fix FIQ interrupt handling for TZIC ARM: imx6: fix static declaration in include/soc/imx/cpuidle.h ARM: imx6q: export cpuidle functions needed by fec driver ARM: imx: fix missing include of common.h ARM: imx: fix missing includes ARM: imx6: disable deeper idle states when FEC is active w/o HW workaround ARM: mach-imx6q: fix spelling mistake in error message Signed-off-by: Olof Johansson <olof@lixom.net>
| * ARM: imx: add support for i.MX 7SoloStefan Agner2016-06-281-0/+1
| | | | | | | | | | | | | | Add device tree compatible string "imx7s" for i.MX 7Solo. Signed-off-by: Stefan Agner <stefan@agner.ch> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: i.MX: Disable supervisor protect for i.MX51Alexander Shiyan2016-06-281-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most peripherals on the i.MX51 have an Off-Platform Peripheral Access Control Register (OPACR) in which the access rights (together with the MPROT registers) can be declared. However, this does not seem to work for example for SSI1+SDMA, because the supervisor bit is not set for the SDMA unit. A similar problem was described in the patch for i.MX53 CPU (ARM: i.MX53: globally disable supervisor protect), and the same solution is applicable for i.MX51 CPU. Patch has tested on custom board based on Digi CCMX-51 module (i.MX51). Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: imx6: fix missing <soc/imx/cpuidle.h> in cpuidle-imx6q.cBen Dooks2016-06-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | The <soc/imx/cpuidle.h> file has declarations of two funcitons exported from cpuidle-imx6q.c but it is not included. Fix the following warnings by adding the include: arch/arm/mach-imx/cpuidle-imx6q.c:71:6: warning: symbol 'imx6q_cpuidle_fec_irqs_used' was not declared. Should it be static? arch/arm/mach-imx/cpuidle-imx6q.c:76:6: warning: symbol 'imx6q_cpuidle_fec_irqs_unused' was not declared. Should it be static? Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: i.MX: Fix FIQ interrupt handling for TZICAlexander Shiyan2016-06-213-16/+15
| | | | | | | | | | | | | | | | | | IRQ number should be translated from VIRQ to HWIRQ for TZIC. As a solution for this issue, move existing translation code from AVIC to common place. Signed-off-by: Alexander Shiyan <shc_work@mail.ru> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: imx6: fix static declaration in include/soc/imx/cpuidle.hBen Dooks2016-06-211-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | If both CONFIG_CPU_IDLE or CONFIG_SOC_IMX6Q are not set then the imx6q_cpuidle_fec_irqs_used() and other functions should be marked static inline to avoid the following warnings whilst building drivers/net/ethernet/freescale: include/soc/imx/cpuidle.h:21:6: warning: symbol 'imx6q_cpuidle_fec_irqs_used' was not declared. Should it be static? include/soc/imx/cpuidle.h:22:6: warning: symbol 'imx6q_cpuidle_fec_irqs_unused' was not declared. Should it be static? Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: imx6q: export cpuidle functions needed by fec driverShawn Guo2016-06-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | Export cpuidle functions needed by fec driver to fix the issue below seen with fec module build. ERROR: "imx6q_cpuidle_fec_irqs_unused" [drivers/net/ethernet/freescale/fec.ko] undefined! ERROR: "imx6q_cpuidle_fec_irqs_used" [drivers/net/ethernet/freescale/fec.ko] undefined! Reported-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: imx: fix missing include of common.hBen Dooks2016-06-121-0/+1
| | | | | | | | | | | | | | | | | | | | Fix the following warning by including ../common.h to provide the protoype for mxc_register_gpio() : arch/arm/mach-imx/devices/platform-gpio-mxc.c:11:24: warning: symbol 'mxc_register_gpio' was not declared. Should it be static? Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: imx: fix missing includesBen Dooks2016-06-121-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | Fix the following warnings by adding the include files that define them: arch/arm/mach-imx/devices/devices.c:25:15: warning: symbol 'mxc_aips_bus' was not declared. Should it be static? arch/arm/mach-imx/devices/devices.c:29:15: warning: symbol 'mxc_ahb_bus' was not declared. Should it be static? arch/arm/mach-imx/devices/devices.c:33:12: warning: symbol 'mxc_device_init' was not declared. Should it be static? Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: imx6: disable deeper idle states when FEC is active w/o HW workaroundLucas Stach2016-06-125-0/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | The i.MX6 Q/DL has an erratum (ERR006687) that prevents the FEC from waking the CPUs when they are in wait(unclocked) state. As the hardware workaround isn't applicable to all boards, disable the deeper idle state when the workaround isn't present and the FEC is in use. This allows to safely run a kernel with CPUidle enabled on all i.MX6 boards. Signed-off-by: Lucas Stach <l.stach@pengutronix.de> Acked-by: David S. Miller <davem@davemloft.net> (for network changes) Signed-off-by: Shawn Guo <shawnguo@kernel.org>
| * ARM: mach-imx6q: fix spelling mistake in error messageJean Guyomarc'h2016-06-101-1/+1
| | | | | | | | | | | | | | | | The compatible device tree node that is searched for is imx6q-iomuxc-gpr but was misspelled imx6q-iomux-gpr in the error handling message. Signed-off-by: Jean Guyomarc'h <jean.guyomarch@openwide.fr> Signed-off-by: Shawn Guo <shawnguo@kernel.org>
* | Update ARM/TANGO sectionMarc Gonzalez2016-07-061-2/+1
| | | | | | | | | | | | | | Use regex pattern to match tango-specific files. Signed-off-by: Marc Gonzalez <marc_gonzalez@sigmadesigns.com> Signed-off-by: Olof Johansson <olof@lixom.net>
* | ARM: tango: add HOTPLUG_CPU supportMarc Gonzalez2016-07-062-1/+39
| | | | | | | | | | | | | | cpu_die() and cpu_kill() are implemented in firmware. Signed-off-by: Marc Gonzalez <marc_gonzalez@sigmadesigns.com> Signed-off-by: Olof Johansson <olof@lixom.net>
* | ARM: uniphier: remove empty DT machine descriptorMasahiro Yamada2016-07-052-31/+0
| | | | | | | | | | | | | | | | Since the initial support of mach-uniphier, this has always been just empty. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Signed-off-by: Olof Johansson <olof@lixom.net>
* | Merge tag 'qcom-soc-for-4.8' of ↵Olof Johansson2016-07-052-0/+5
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux into next/soc Qualcomm ARM Based SoC Updates for v4.8 * Add MSM9615 support * tag 'qcom-soc-for-4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/agross/linux: ARM: qcom: Add support for MDM9615 Signed-off-by: Olof Johansson <olof@lixom.net>
| * | ARM: qcom: Add support for MDM9615Neil Armstrong2016-06-252-0/+5
| |/ | | | | | | | | | | | | Add support for Qualcomm MDM9615 in Kconfig and in DT match list. Signed-off-by: Neil Armstrong <narmstrong@baylibre.com> Signed-off-by: Andy Gross <andy.gross@linaro.org>
* | Merge tag 'davinci-for-v4.8' of ↵Olof Johansson2016-07-0510-23/+28
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci into next/soc Clean-up unused pdata for DaVinci McBSP audio driver and add McBSP clocks for DaVinci DA850 SoC. * tag 'davinci-for-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/nsekhar/linux-davinci: ARM: davinci: remove unused davinci-i2s pdata ARM: davinci: da850: add clocks for mcbsp0 and 1 Signed-off-by: Olof Johansson <olof@lixom.net>
| * | ARM: davinci: remove unused davinci-i2s pdataPetr Kulhavy2016-06-248-23/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The davinci-i2s driver ("davinci-mcbsp") does not use platform data any longer. Remove the dummy pdata provided by the board drivers dm355, dm365, dm644x and neuros-osd2. Signed-off-by: Petr Kulhavy <petr@barix.com> Reviewed-by: Peter Ujfalusi <peter.ujfalusi@ti.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
| * | ARM: davinci: da850: add clocks for mcbsp0 and 1Petr Kulhavy2016-06-102-0/+18
| |/ | | | | | | | | | | | | | | | | | | | | | | Add clock definitions "davinci-mcbsp.0" and "davinci-mcbsp.1" in order to make McBSP driver work on the DA850 platform. The McBSP 0 and 1 interfaces were not defined for the DA850 platform. Neither were the related clocks. In order to make the use of McBSP via devicetree the clocks need to be defined. Signed-off-by: Petr Kulhavy <petr@barix.com> Signed-off-by: Sekhar Nori <nsekhar@ti.com>
* | Merge tag 'at91-ab-4.8-soc2' of ↵Olof Johansson2016-07-052-4/+11
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/soc SoC changes for 4.8 #2: - Add final documentation for sama5d2 - Fix some compilation warnings * tag 'at91-ab-4.8-soc2' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: ARM: at91: fix warnings in pm.c ARM: at91: Documentation: update the sama5d2 entry Signed-off-by: Olof Johansson <olof@lixom.net>
| * | ARM: at91: fix warnings in pm.cBen Dooks2016-06-211-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a pair of missing statics on un-exported functions and include <linux/platform_data/atmel.h> to provide the declaration of at91_suspend_entering_slow_clock() to fix the following sparse warnings: arch/arm/mach-at91/pm.c:127:5: warning: symbol 'at91_suspend_entering_slow_clock' was not declared. Should it be static? arch/arm/mach-at91/pm.c:358:6: warning: symbol 'at91rm9200_idle' was not declared. Should it be static? arch/arm/mach-at91/pm.c:367:6: warning: symbol 'at91sam9_idle' was not declared. Should it be static? Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
| * | ARM: at91: Documentation: update the sama5d2 entryNicolas Ferre2016-06-211-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | Update the Atmel SoC entry for SAMA5D2 with all the product variants. Add the datasheet web link, now that it's available, for instant access to full product documentation. Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
* | | Merge tag 'keystone_for_4.8' of ↵Olof Johansson2016-07-051-0/+2
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone into next/soc ARM: Keystone fix for 4.8 - pm_domain warning fix. * tag 'keystone_for_4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/ssantosh/linux-keystone: ARM: keystone: fix missing keystone.h in pm_domain.c Signed-off-by: Olof Johansson <olof@lixom.net>
| * | | ARM: keystone: fix missing keystone.h in pm_domain.cBen Dooks2016-06-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The declaration of keystone_pm_runtime_init() is not included from keystone.h in pm_domain.c. Including the file fixes the following sparse warning: arch/arm/mach-keystone/pm_domain.c:37:12: warning: symbol 'keystone_pm_runtime_init' was not declared. Should it be static? Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Signed-off-by: Santosh Shilimkar <ssantosh@kernel.org>
* | | | Merge tag 'arm-soc/for-4.8/soc' of http://github.com/Broadcom/stblinux into ↵Olof Johansson2016-06-206-45/+98
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | next/soc This pull request contains SoC changes for Broadcom ARM-based SoCs: - Chris prepares support for the BCM23550 by removing reset code in the BCM21664 machine code since a proper drivers/power/reset driver is provided and shared, he then adds a machine entry point for BCM23550 and updates the SMP code to bring-up the secondary cores on BCM23550 - Ben fixes a warning in the Kona L2 SMC code by adding the missing include file * tag 'arm-soc/for-4.8/soc' of http://github.com/Broadcom/stblinux: ARM: bcm: fix missing include of kona_l2_cache.h ARM: BCM23550 SMP support ARM: Add support for Broadcom BCM23550 SoC ARM: bcm21664: Remove reset code Signed-off-by: Olof Johansson <olof@lixom.net>
| * | | | ARM: bcm: fix missing include of kona_l2_cache.hBen Dooks2016-06-081-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix a warning of kona_l2_cache_init() not being declared by including the header file kona_l2_cache.h which defines it thus fixing: arch/arm/mach-bcm/kona_l2_cache.c:21:13: warning: symbol 'kona_l2_cache_init' was not declared. Should it be static? Signed-off-by: Ben Dooks <ben.dooks@codethink.co.uk> Acked-by: Ray Jui <ray.jui@broadcom.com> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
| * | | | ARM: BCM23550 SMP supportChris Brand2016-06-061-0/+58
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BCM23550 has a Cluster Dormant Control IP block that holds cores in an idle state. Support a new CPU enable method in which the CDC is accessed to bring the core online. Signed-off-by: Raymond Ngun <raymond.ngun@broadcom.com> Signed-off-by: Chris Brand <chris.brand@broadcom.com> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
| * | | | ARM: Add support for Broadcom BCM23550 SoCChris Brand2016-06-063-3/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | BCM23550 is a quad-A7 SoC used on the Broadcom "Sparrow" board. It shares many IP blocks with other Broadcom Kona chips. Signed-off-by: Chris Brand <chris.brand@broadcom.com> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
| * | | | ARM: bcm21664: Remove reset codeChris Brand2016-06-061-42/+0
| | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | The kona reset driver now provides this functionality. Signed-off-by: Chris Brand <chris.brand@broadcom.com> Signed-off-by: Florian Fainelli <f.fainelli@gmail.com>
* | | | Merge tag 'at91-ab-4.8-soc' of ↵Olof Johansson2016-06-142-24/+47
|\ \ \ \ | | |_|/ | |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux into next/soc SoC changes for 4.8: - Solve an issue with DEBUG_LL and multi_v7 - Also make DEBUG_LL more user friendly * tag 'at91-ab-4.8-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/abelloni/linux: ARM: at91: debug: add default DEBUG_LL addresses ARM: at91: debug: use DEBUG_UART_VIRT Signed-off-by: Olof Johansson <olof@lixom.net>
| * | | ARM: at91: debug: add default DEBUG_LL addressesAlexandre Belloni2016-06-101-14/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add configuration options for the most commonly used UART physical and virtual addresses to ease the use of DEBUG_LL and earlyprintk. Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
| * | | ARM: at91: debug: use DEBUG_UART_VIRTAlexandre Belloni2016-06-102-14/+7
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | AT91 still uses an offset (0x0100 0000) from the physical address to map the debug UART. This is unfortunate as for some platforms (sama5d3 and earlier), it ends up in the PCI zone and PCI is enabled in multi_v7. Switch to DEBUG_UART_VIRT to solve that. Tested on sama5d3 and 9g20. Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Alexandre Belloni <alexandre.belloni@free-electrons.com>
* | | Merge tag 'renesas-soc-for-v4.8' of ↵Olof Johansson2016-06-142-10/+5
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc Renesas ARM Based SoC Updates for v4.8 * Use ICRAM1 for jump stub on R-Car Gen 2 SoCs * Postpone call to pm_genpd_init * tag 'renesas-soc-for-v4.8' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas: ARM: shmobile: rcar-gen2: Use ICRAM1 for jump stub on all SoCs ARM: shmobile: pm-rmobile: Postpone call to pm_genpd_init() Signed-off-by: Olof Johansson <olof@lixom.net>
| * | | ARM: shmobile: rcar-gen2: Use ICRAM1 for jump stub on all SoCsGeert Uytterhoeven2016-05-301-9/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently the different SoCs in the R-Car Gen2 family use different types of on-chip RAM for the jump stub: - R-Car H2 uses Media RAM, - R-Car M2-W uses another type of optional On-chip RAM, as it doesn't have Media RAM, - R-Car M2-N uses Inter Connect RAM in Magnus Damm's "ARM: shmobile: r8a7793 boot address update". As all R-Car Gen2 SoCs have 4 KiB of Inter Connect RAM, consolidate the code by always using that. Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
| * | | ARM: shmobile: pm-rmobile: Postpone call to pm_genpd_init()Geert Uytterhoeven2016-05-301-1/+1
| |/ / | | | | | | | | | | | | | | | | | | | | | | | | All local setup of the generic_pm_domain structure should have been completed before calling pm_genpd_init(). Signed-off-by: Geert Uytterhoeven <geert+renesas@glider.be> Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Simon Horman <horms+renesas@verge.net.au>
* | | Linux 4.7-rc3v4.7-rc3Linus Torvalds2016-06-121-1/+1
| | |
* | | Merge branch 'for-rc' of ↵Linus Torvalds2016-06-122-8/+10
|\ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux Pull thermal management fixes from Zhang Rui: - fix an ordering issue in cpu cooling that cooling device is registered before it's ready (freq_table being populated). (Lukasz Luba) - fix a missing comment update (Caesar Wang) * 'for-rc' of git://git.kernel.org/pub/scm/linux/kernel/git/rzhang/linux: thermal: add the note for set_trip_temp thermal: cpu_cooling: fix improper order during initialization
| * | | thermal: add the note for set_trip_tempCaesar Wang2016-06-011-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes commit 60f9ce3ada53 ("thermal: of-thermal: allow setting trip_temp on hardware") Signed-off-by: Caesar Wang <wxt@rock-chips.com> Cc: Zhang Rui <rui.zhang@intel.com> Cc: Eduardo Valentin <edubezval@gmail.com> Cc: linux-pm@vger.kernel.org Signed-off-by: Zhang Rui <rui.zhang@intel.com>
| * | | thermal: cpu_cooling: fix improper order during initializationLukasz Luba2016-06-011-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The freq_table array is not populated before calling thermal_of_cooling_register. The code which populates the freq table was introduced in commit f6859014. This should be done before registering new thermal cooling device. The log shows effects of this wrong decision. [ 2.172614] cpu cpu1: Failed to get voltage for frequency 1984518656000: -34 [ 2.220863] cpu cpu0: Failed to get voltage for frequency 1984524416000: -34 Cc: <stable@vger.kernel.org> # 3.19+ Fixes: f6859014c7e7 ("thermal: cpu_cooling: Store frequencies in descending order") Signed-off-by: Lukasz Luba <lukasz.luba@arm.com> Acked-by: Javi Merino <javi.merino@arm.com> Acked-by: Viresh Kumar <viresh.kumar@linaro.org> Signed-off-by: Zhang Rui <rui.zhang@intel.com>
* | | | Merge branch 'for-linus' of git://git.kernel.dk/linux-blockLinus Torvalds2016-06-126-37/+59
|\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Pull block layer fixes from Jens Axboe: "A small collection of fixes for the current series. This contains: - Two fixes for xen-blkfront, from Bob Liu. - A bug fix for NVMe, releasing only the specific resources we requested. - Fix for a debugfs flags entry for nbd, from Josef. - Plug fix from Omar, fixing up a case of code being switched between two functions. - A missing bio_put() for the new discard callers of submit_bio_wait(), fixing a regression causing a leak of the bio. From Shaun. - Improve dirty limit calculation precision in the writeback code, fixing a case where setting a limit lower than 1% of memory would end up being zero. From Tejun" * 'for-linus' of git://git.kernel.dk/linux-block: NVMe: Only release requested regions xen-blkfront: fix resume issues after a migration xen-blkfront: don't call talk_to_blkback when already connected to blkback nbd: pass the nbd pointer for flags debugfs block: missing bio_put following submit_bio_wait blk-mq: really fix plug list flushing for nomerge queues writeback: use higher precision calculation in domain_dirty_limits()
| * | | | NVMe: Only release requested regionsJohannes Thumshirn2016-06-091-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The NVMe driver only requests the PCIe device's memory regions but releases all possible regions (including eventual I/O regions). This leads to a stale warning entry in dmesg about freeing non existent resources. Signed-off-by: Johannes Thumshirn <jthumshirn@suse.de> Signed-off-by: Jens Axboe <axboe@fb.com>
| * | | | Merge branch 'stable/for-jens-4.7' of ↵Jens Axboe2016-06-091-13/+22
| |\ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/konrad/xen into for-linus Konrad writes: Thishas two fixes for a guest migrating from host that has multi-queue to one without it (and vice-versa).
| | * | | | xen-blkfront: fix resume issues after a migrationBob Liu2016-06-081-12/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | After a migrate to another host (which may not have multiqueue support), the number of rings (block hardware queues) may be changed and the ring info structure will also be reallocated. This patch fixes two related bugs: * call blk_mq_update_nr_hw_queues() to make blk-core know the number of hardware queues have been changed. * Don't store rinfo pointer to hctx->driver_data, because rinfo may be reallocated so use hctx->queue_num to get the rinfo structure instead. Signed-off-by: Bob Liu <bob.liu@oracle.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
| | * | | | xen-blkfront: don't call talk_to_blkback when already connected to blkbackBob Liu2016-06-081-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes blkfront may twice receive blkback_changed() notification (XenbusStateConnected) after migration, which will cause talk_to_blkback() to be called twice too and confuse xen-blkback. The flow is as follow: blkfront blkback blkfront_resume() > talk_to_blkback() > Set blkfront to XenbusStateInitialised front changed() > Connect() > Set blkback to XenbusStateConnected blkback_changed() > Skip talk_to_blkback() because frontstate == XenbusStateInitialised > blkfront_connect() > Set blkfront to XenbusStateConnected ----- And here we get another XenbusStateConnected notification leading to: ----- blkback_changed() > because now frontstate != XenbusStateInitialised talk_to_blkback() is also called again > blkfront state changed from XenbusStateConnected to XenbusStateInitialised (Which is not correct!) front_changed(): > Do nothing because blkback already in XenbusStateConnected Now blkback is in XenbusStateConnected but blkfront is still in XenbusStateInitialised - leading to no disks. Poking of the XenbusStateConnected state is allowed (to deal with block disk change) and has to be dealt with. The most likely cause of this bug are custom udev scripts hooking up the disks and then validating the size. Signed-off-by: Bob Liu <bob.liu@oracle.com> Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com>
| * | | | | nbd: pass the nbd pointer for flags debugfsJosef Bacik2016-06-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We were passing in &nbd for the private data in debugfs_create_file() for the flags entry. We expect it to just be nbd, fix this so we get proper output from this debugfs entry. Signed-off-by: Josef Bacik <jbacik@fb.com> Signed-off-by: Jens Axboe <axboe@fb.com>
| * | | | | block: missing bio_put following submit_bio_waitShaun Tancheff2016-06-071-3/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | submit_bio_wait() gives the caller an opportunity to examine struct bio and so expects the caller to issue the put_bio() This fixes a memory leak reported by a few people in 4.7-rc2 kmemleak report after 9082e87bfbf8 ("block: remove struct bio_batch") Signed-off-by: Shaun Tancheff <shaun.tancheff@seagate.com> Tested-by: Catalin Marinas <catalin.marinas@arm.com> Tested-by: Larry Finger@lwfinger.net Tested-by: David Drysdale <drysdale@google.com> Reviewed-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Jens Axboe <axboe@fb.com>
| * | | | | blk-mq: really fix plug list flushing for nomerge queuesOmar Sandoval2016-06-021-9/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 0809e3ac6231 ("block: fix plug list flushing for nomerge queues") updated blk_mq_make_request() to set request_count even when blk_queue_nomerges() returns true. However, blk_mq_make_request() only does limited plugging and doesn't use request_count; blk_sq_make_request() is the one that should have been fixed. Do that and get rid of the unnecessary work in the mq version. Fixes: 0809e3ac6231 ("block: fix plug list flushing for nomerge queues") Signed-off-by: Omar Sandoval <osandov@fb.com> Reviewed-by: Ming Lei <tom.leiming@gmail.com> Reviewed-by: Jeff Moyer <jmoyer@redhat.com> Signed-off-by: Jens Axboe <axboe@fb.com>
| * | | | | writeback: use higher precision calculation in domain_dirty_limits()Tejun Heo2016-05-301-9/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | As vm.dirty_[background_]bytes can't be applied verbatim to multiple cgroup writeback domains, they get converted to percentages in domain_dirty_limits() and applied the same way as vm.dirty_[background]ratio. However, if the specified bytes is lower than 1% of available memory, the calculated ratios become zero and the writeback domain gets throttled constantly. Fix it by using per-PAGE_SIZE instead of percentage for ratio calculations. Also, the updated DIV_ROUND_UP() usages now should yield 1/4096 (0.0244%) as the minimum ratio as long as the specified bytes are above zero. Signed-off-by: Tejun Heo <tj@kernel.org> Reported-by: Miao Xie <miaoxie@huawei.com> Link: http://lkml.kernel.org/g/57333E75.3080309@huawei.com Cc: stable@vger.kernel.org # v4.2+ Fixes: 9fc3a43e1757 ("writeback: separate out domain_dirty_limits()") Reviewed-by: Jan Kara <jack@suse.cz> Adjusted comment based on Jan's suggestion. Signed-off-by: Jens Axboe <axboe@fb.com>
* | | | | | Merge tag 'gpio-v4.7-3' of ↵Linus Torvalds2016-06-126-7/+16
|\ \ \ \ \ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio Pull GPIO fixes from Linus Walleij: "A new bunch of GPIO fixes for v4.7. This time I am very grateful that Ricardo Ribalda Delgado went in and fixed my stupid refcounting mistakes in the removal path for GPIO chips. I had a feeling something was wrong here and so it was. It exploded on OMAP and it fixes their problem. Now it should be (more) solid. The rest i compilation, Kconfig and driver fixes. Some tagged for stable. Summary: - Fix a NULL pointer dereference when we are searching the GPIO device list but one of the devices have been removed (struct gpio_chip pointer is NULL). - Fix unaligned reference counters: we were ending on +3 after all said and done. It should be 0. Remove an extraneous get_device(), and call cdev_del() followed by device_del() in gpiochip_remove() instead and the count goes to zero and calls the release() function properly. - Fix a compile warning due to a missing #include in the OF/device tree portions. - Select ANON_INODES for GPIOLIB, we're using that for our character device. Some randconfig tests disclosed the problem. - Make sure the Zynq driver clock runs also without CONFIG_PM enabled - Fix an off-by-one error in the 104-DIO-48E driver - Fix warnings in bcm_kona_gpio_reset()" * tag 'gpio-v4.7-3' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: gpio: bcm-kona: fix bcm_kona_gpio_reset() warnings gpio: select ANON_INODES gpio: include <linux/io-mapping.h> in gpiolib-of gpiolib: Fix unaligned used of reference counters gpiolib: Fix NULL pointer deference gpio: zynq: initialize clock even without CONFIG_PM gpio: 104-dio-48e: Fix control port offset computation off-by-one error