1. 01 Sep, 2015 32 commits
    • Vishal Mahaveer's avatar
      ARM: DRA752: Add ID detect for ES2.0 · 81032e34
      Vishal Mahaveer authored
      ES2.0 is a minor variant of ES1.1. ES2.0 is an incremental revision
      with various fixes including the following:
      	- reset logic fixes
      	- few assymetric aging logic fixes
      	- MMC clock rate fixes
      	- Ethernet speed fixes
      	- edma fixes for mcasp
      
      NOTE: even though we use a compatible of dra742 and dra752, the usage in
      the Linux kernel is more or less interchangable - we use dra752 more
      often in the linux kernel compared to dra742 and 4.2-rc6
      Signed-off-by: default avatarVishal Mahaveer <vishalm@ti.com>
      Signed-off-by: default avatarNishanth Menon <nm@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      81032e34
    • Frans Klaver's avatar
      ARM: OMAP3: vc: fix 'or' always true warning · 05f4f1ab
      Frans Klaver authored
      Fix the warning:
      arch/arm/mach-omap2/vc.c:302:47: warning: logical ‘or’ of collectively exhaustive tests is always true [-Wlogical-op]
      
      As we're toggling both CLKREQ and OFFMODE, we should also be checking
      OFFMODE.
      Signed-off-by: default avatarFrans Klaver <fransklaver@gmail.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      05f4f1ab
    • Tony Lindgren's avatar
      ARM: OMAP2+: Fix booting if no timer parent clock is available · 874b300a
      Tony Lindgren authored
      When bringing up a new SoC we needlessly prevent booting at timer
      init if timer clock_set_parent fails. This can fail if the system
      is booting on bootloader configured PLL values until the clock
      framework driver for the PLL is implemented.
      
      Let's just WARN instead, this will provide helpful information
      for anybody bringing up a new SoC what needs to be fixed.
      
      This allows to boot dm814x that's still missing the PLL driver.
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      874b300a
    • Grygorii Strashko's avatar
      ARM: OMAP2+: omap-device: fix race deferred probe of omap_hsmmc vs omap_device_late_init · fe8291e8
      Grygorii Strashko authored
      Kernel fails to boot 50% of times (form build to build) with
      RT-patchset applied due to the following race - on late boot
      stages deferred_probe_work_func->omap_hsmmc_probe races with omap_device_late_ini.
      
      The same issue has been reported now on linux-next (4.3) by Keerthy [1]
      
      late_initcall
       - deferred_probe_initcal() tries to re-probe all pending driver's probe.
      
      - later on, some driver is probing in this case It's cpsw.c
        (but could be any other drivers)
        cpsw_init
        - platform_driver_register
          - really_probe
             - driver_bound
               - driver_deferred_probe_trigger
        and boot proceed.
        So, at this moment we have deferred_probe_work_func scheduled.
      
      late_initcall_sync
        - omap_device_late_init
          - omap_device_idle
      
      CPU1					CPU2
        - deferred_probe_work_func
          - really_probe
            - omap_hsmmc_probe
      	- pm_runtime_get_sync
      					late_initcall_sync
      					- omap_device_late_init
      						if (od->_driver_status != BUS_NOTIFY_BOUND_DRIVER) {
      							if (od->_state == OMAP_DEVICE_STATE_ENABLED) {
      								- omap_device_idle [ops - IP is disabled]
      	- [fail]
      	- pm_runtime_put_sync
                - omap_hsmmc_runtime_suspend [ooops!]
      
      == log ==
       omap_hsmmc 480b4000.mmc: unable to get vmmc regulator -517
       davinci_mdio 48485000.mdio: davinci mdio revision 1.6
       davinci_mdio 48485000.mdio: detected phy mask fffffff3
       libphy: 48485000.mdio: probed
       davinci_mdio 48485000.mdio: phy[2]: device 48485000.mdio:02, driver unknown
       davinci_mdio 48485000.mdio: phy[3]: device 48485000.mdio:03, driver unknown
       omap_hsmmc 480b4000.mmc: unable to get vmmc regulator -517
       cpsw 48484000.ethernet: Detected MACID = b4:99:4c:c7:d2:48
       cpsw 48484000.ethernet: cpsw: Detected MACID = b4:99:4c:c7:d2:49
       hctosys: unable to open rtc device (rtc0)
       omap_hsmmc 480b4000.mmc: omap_device_late_idle: enabled but no driver.  Idling
       ldousb: disabling
       Unhandled fault: imprecise external abort (0x1406) at 0x00000000
       [00000000] *pgd=00000000
       Internal error: : 1406 [#1] PREEMPT SMP ARM
       Modules linked in:
       CPU: 1 PID: 58 Comm: kworker/u4:1 Not tainted 4.1.2-rt1-00467-g6da3c0a-dirty #5
       Hardware name: Generic DRA74X (Flattened Device Tree)
       Workqueue: deferwq deferred_probe_work_func
       task: ee6ddb00 ti: edd3c000 task.ti: edd3c000
       PC is at omap_hsmmc_runtime_suspend+0x1c/0x12c
       LR is at _od_runtime_suspend+0xc/0x24
       pc : [<c0471998>]    lr : [<c0029590>]    psr: a0000013
       sp : edd3dda0  ip : ee6ddb00  fp : c07be540
       r10: 00000000  r9 : c07be540  r8 : 00000008
       r7 : 00000000  r6 : ee646c10  r5 : ee646c10  r4 : edd79380
       r3 : fa0b4100  r2 : 00000000  r1 : 00000000  r0 : ee646c10
       Flags: NzCv  IRQs on  FIQs on  Mode SVC_32  ISA ARM  Segment kernel
       Control: 10c5387d  Table: 8000406a  DAC: 00000015
       Process kworker/u4:1 (pid: 58, stack limit = 0xedd3c218)
       Stack: (0xedd3dda0 to 0xedd3e000)
       dda0: ee646c70 ee646c10 c0029584 00000000 00000008 c0029590 ee646c70 ee646c10
       ddc0: c0029584 c03adfb8 ee646c10 00000004 0000000c c03adff0 ee646c10 00000004
       dde0: 0000000c c03ae4ec 00000000 edd3c000 ee646c10 00000004 ee646c70 00000004
       de00: fa0b4000 c03aec20 ee6ddb00 ee646c10 00000004 ee646c70 ee646c10 fffffdfb
       de20: edd79380 00000000 fa0b4000 c03aee90 fffffdfb edd79000 ee646c00 c0474290
       de40: 00000000 edda24c0 edd79380 edc81f00 00000000 00000200 00000001 c06dd488
       de60: edda3960 ee646c10 ee646c10 c0824cc4 fffffdfb c0880c94 00000002 edc92600
       de80: c0836378 c03a7f84 ee646c10 c0824cc4 00000000 c0880c80 c0880c94 c03a6568
       dea0: 00000000 ee646c10 c03a66ac ee4f8000 00000000 00000001 edc92600 c03a4b40
       dec0: ee404c94 edc83c4c ee646c10 ee646c10 ee646c44 c03a63c4 ee646c10 ee646c10
       dee0: c0814448 c03a5aa8 ee646c10 c0814220 edd3c000 c03a5ec0 c0814250 ee6be400
       df00: edd3c000 c004e5bc ee6ddb01 00000078 ee6ddb00 ee4f8000 ee6be418 edd3c000
       df20: ee4f8028 00000088 c0836045 ee4f8000 ee6be400 c004e928 ee4f8028 00000000
       df40: c004e8ec 00000000 ee6bf1c0 ee6be400 c004e8ec 00000000 00000000 00000000
       df60: 00000000 c0053450 2e56fa97 00000000 afdffbd7 ee6be400 00000000 00000000
       df80: edd3df80 edd3df80 00000000 00000000 edd3df90 edd3df90 edd3dfac ee6bf1c0
       dfa0: c0053384 00000000 00000000 c000f668 00000000 00000000 00000000 00000000
       dfc0: 00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000
       dfe0: 00000000 00000000 00000000 00000000 00000013 00000000 f1fc9d7e febfbdff
       [<c0471998>] (omap_hsmmc_runtime_suspend) from [<c0029590>] (_od_runtime_suspend+0xc/0x24)
       [<c0029590>] (_od_runtime_suspend) from [<c03adfb8>] (__rpm_callback+0x24/0x3c)
       [<c03adfb8>] (__rpm_callback) from [<c03adff0>] (rpm_callback+0x20/0x80)
       [<c03adff0>] (rpm_callback) from [<c03ae4ec>] (rpm_suspend+0xe4/0x618)
       [<c03ae4ec>] (rpm_suspend) from [<c03aee90>] (__pm_runtime_idle+0x60/0x80)
       [<c03aee90>] (__pm_runtime_idle) from [<c0474290>] (omap_hsmmc_probe+0x6bc/0xa7c)
       [<c0474290>] (omap_hsmmc_probe) from [<c03a7f84>] (platform_drv_probe+0x44/0xa4)
       [<c03a7f84>] (platform_drv_probe) from [<c03a6568>] (driver_probe_device+0x170/0x2b4)
       [<c03a6568>] (driver_probe_device) from [<c03a4b40>] (bus_for_each_drv+0x64/0x98)
       [<c03a4b40>] (bus_for_each_drv) from [<c03a63c4>] (device_attach+0x70/0x88)
       [<c03a63c4>] (device_attach) from [<c03a5aa8>] (bus_probe_device+0x84/0xac)
       [<c03a5aa8>] (bus_probe_device) from [<c03a5ec0>] (deferred_probe_work_func+0x58/0x88)
       [<c03a5ec0>] (deferred_probe_work_func) from [<c004e5bc>] (process_one_work+0x134/0x464)
       [<c004e5bc>] (process_one_work) from [<c004e928>] (worker_thread+0x3c/0x4fc)
       [<c004e928>] (worker_thread) from [<c0053450>] (kthread+0xcc/0xe4)
       [<c0053450>] (kthread) from [<c000f668>] (ret_from_fork+0x14/0x2c)
       Code: e594302c e593202c e584205c e594302c (e5932128)
       ---[ end trace 0000000000000002 ]---
      
      The issue happens because omap_device_late_init() do not take into
      account that some drivers are present, but their probes were not
      finished successfully and where deferred instead. This is the valid
      case, and omap_device_late_init() should not idle such devices.
      
      To fix this issue, the value of omap_device->_driver_status field
      should be checked not only for BUS_NOTIFY_BOUND_DRIVER (driver is
      present and has been bound to device successfully), but also checked
      for BUS_NOTIFY_BIND_DRIVER (driver about to be bound) - which means
      driver is present and there was try to bind it to device.
      
      [1] http://www.spinics.net/lists/arm-kernel/msg441880.html
      Cc: Tero Kristo <t-kristo@ti.com>
      Cc: Keerthy <j-keerthy@ti.com>
      Tested-by: default avatarKeerthy <j-keerthy@ti.com>
      Signed-off-by: default avatarGrygorii Strashko <grygorii.strashko@ti.com>
      Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
      fe8291e8
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 2faf962d
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Olof Johansson:
       "We mostly keep defconfigs updates on a separate branch due to their
        tendency to conflict between platforms and this encourages more
        careful separation of code changes and config changes.
      
        Most updates here are minor tweaks, enabling new drivers for various
        platforms, and so on.  Renesas also removed one defconfig
        (marzen_defconfig)"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (44 commits)
        ARM: add TC2 PM support to multi_v7_defconfig
        ARM: tegra: Update multi_v7_defconfig
        ARM: tegra: Update default configuration
        ARM: at91/defconfig: at91_dt: remove ARM_AT91_ETHER
        ARM: at91/defconfig: at91_dt: enable DRM hlcdc support
        ARM: at91: at91_dt_defconfig: enable ISI and ov2640 support
        ARM: multi_v7_defconfig: Enable Allwinner P2WI, PWM, DMA_SUN6I, cryptodev
        ARM: sunxi_defconfig: Enable DMA_SUN6I, P2WI, PWM, cryptodev, EXTCON, FHANDLE
        ARM: shmobile: Enable fixed voltage regulator in shmobile_defconfig
        ARM: multi_v7_defconfig: Select MX6UL and MX7D
        ARM: prima2_defconfig: enable build for hwspinlock
        ARM: prima2_defconfig: enable build for RTC
        ARM: prima2_defconfig: enable build for misc input
        ARM: prima2_defconfig: enable build for SiRFSoC SDHC host
        ARM: prima2_defconfig: fix the outdated defconfig
        ARM: imx_v6_v7_defconfig: Select CONFIG_IKCONFIG_PROC
        ARM: defconfig: orion5x: add DT support
        ARM: qcom_defconfig: Enable options for KS8851 ethernet
        ARM: multi_v7_defconfig: Enable support for PWM Regulators
        ARM: multi_v7_defconfig: Enable ST's PWM driver
        ...
      2faf962d
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · b3a5af43
      Linus Torvalds authored
      Pull ARM DT updates from Olof Johansson:
       "Ladies and gentlemen, we proudly announce to you the latest branch of
        ARM device tree contents for the mainline kernel.  Come and see, come
        and see!
      
        No less than twentythree thousand lines of additions! Just imagine the
        joy you will have of using your mainline kernel on newly supported
        hardware such as Rockchip Chromebooks, Freescale i.MX6UL boards or
        UniPhier hardware!
      
        For those of you feeling less adventurous, added hardware support on
        platforms such as TI DM814x and Gumstix Overo platforms might be more
        of your liking.
      
        We've got something for everyone here!
      
        Ahem.  Cough.  So, anyway...
      
        This is the usual large batch of DT updates.  Lots and lots of smaller
        changes, some of the larger ones to point out are:
      
         - Rockchip veyron (Chromebook) support, as well as several other new boards
         - DRM support on Atmel AT91SAM9N12EK
         - USB additions on some Allwinner platforms
         - Mediatek MT6580 support
         - Freescale i.MX6UL support
         - cleanups for Renesas shmobile platforms
         - lots of added devices on LPC18xx
         - lots of added devices and boards on UniPhier
      
        There's also some dependent code added here, in particular some
        branches that are primarily merged through the clock tree"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (389 commits)
        ARM: tegra: Add gpio-ranges property
        ARM: tegra: Fix AHB base address on Tegra20, Tegra30 and Tegra114
        ARM: tegra: Add Tegra124 PMU support
        ARM: tegra: jetson-tk1: Add GK20A GPU DT node
        ARM: tegra: venice2: Add GK20A GPU DT node
        ARM: tegra: Add IOMMU node to GK20A
        ARM: tegra: Add CPU regulator to the Jetson TK1 device tree
        ARM: tegra: Add entries for cpufreq on Tegra124
        ARM: tegra: Enable the DFLL on the Jetson TK1
        ARM: tegra: Add the DFLL to Tegra124 device tree
        ARM: dts: zynq: Add devicetree entry for Xilinx Zynq reset controller.
        ARM: dts: UniPhier: fix PPI interrupt CPU mask of timer nodes
        ARM: dts: rockchip: correct regulator power states for suspend
        ARM: dts: rockchip: correct regulator PM properties
        ARM: dts: vexpress: Use assigned-clock-parents for sp810
        pinctrl: tegra: Only set the gpio range if needed
        arm: boot: dts: am4372: add ARM timers and SCU nodes
        ARM: dts: AM4372: Add the am4372-rtc compatible string
        ARM: shmobile: r8a7794 dtsi: Add CPG/MSTP Clock Domain
        ARM: shmobile: r8a7793 dtsi: Add CPG/MSTP Clock Domain
        ...
      b3a5af43
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 10217810
      Linus Torvalds authored
      Pull ARM SoC driver updates from Olof Johansson:
       "Some releases this branch is nearly empty, others we have more stuff.
        It tends to gather drivers that need SoC modification or dependencies
        such that they have to (also) go in through our tree.
      
        For this release, we have merged in part of the reset controller tree
        (with handshake that the parts we have merged in will remain stable),
        as well as dependencies on a few clock branches.
      
        In general, new items here are:
      
         - Qualcomm driver for SMM/SMD, which is how they communicate with the
           coprocessors on (some) of their platforms
      
         - memory controller work for ARM's PL172 memory controller
      
         - reset drivers for various platforms
      
         - PMU power domain support for Marvell platforms
      
         - Tegra support for T132/T210 SoCs: PMC, fuse, memory controller
           per-SoC support"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (49 commits)
        ARM: tegra: cpuidle: implement cpuidle_state.enter_freeze()
        ARM: tegra: Disable cpuidle if PSCI is available
        soc/tegra: pmc: Use existing pclk reference
        soc/tegra: pmc: Remove unnecessary return statement
        soc: tegra: Remove redundant $(CONFIG_ARCH_TEGRA) in Makefile
        memory: tegra: Add Tegra210 support
        memory: tegra: Add support for a variable-size client ID bitfield
        clk: shmobile: rz: Add CPG/MSTP Clock Domain support
        clk: shmobile: rcar-gen2: Add CPG/MSTP Clock Domain support
        clk: shmobile: r8a7779: Add CPG/MSTP Clock Domain support
        clk: shmobile: r8a7778: Add CPG/MSTP Clock Domain support
        clk: shmobile: Add CPG/MSTP Clock Domain support
        ARM: dove: create a proper PMU driver for power domains, PMU IRQs and resets
        reset: reset-zynq: Adding support for Xilinx Zynq reset controller.
        docs: dts: Added documentation for Xilinx Zynq Reset Controller bindings.
        MIPS: ath79: Add the reset controller to the AR9132 dtsi
        reset: Add a driver for the reset controller on the AR71XX/AR9XXX
        devicetree: Add bindings for the ATH79 reset controller
        reset: socfpga: Update reset-socfpga to read the altr,modrst-offset property
        doc: dt: add documentation for lpc1850-rgu reset driver
        ...
      10217810
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 50686e8a
      Linus Torvalds authored
      Pull ARM SoC platform updates from Olof Johansson:
       "New or improved SoC support:
      
         - add support for Atmel's SAMA5D2 SoC
         - add support for Freescale i.MX6UL
         - improved support for TI's DM814x platform
         - misc fixes and improvements for RockChip platforms
         - Marvell MVEBU suspend/resume support
      
        A few driver changes that ideally would belong in the drivers branch
        are also here (acked by appropriate maintainers):
      
         - power key input driver for Freescale platforms (svns)
         - RTC driver updates for Freescale platforms (svns/mxc)
         - clk fixes for TI DM814/816X
      
        + a bunch of other changes for various platforms"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (83 commits)
        ARM: rockchip: pm: Fix PTR_ERR() argument
        ARM: imx: mach-imx6ul: Fix allmodconfig build
        clk: ti: fix for definition movement
        ARM: uniphier: drop v7_invalidate_l1 call at secondary entry
        memory: kill off set_irq_flags usage
        rtc: snvs: select option REGMAP_MMIO
        ARM: brcmstb: select ARCH_DMA_ADDR_T_64BIT for LPAE
        ARM: BCM: Enable ARM erratum 798181 for BRCMSTB
        ARM: OMAP2+: Fix power domain operations regression caused by 81xx
        ARM: rockchip: enable PMU_GPIOINT_WAKEUP_EN when entering shallow suspend
        ARM: rockchip: set correct stabilization thresholds in suspend
        ARM: rockchip: rename osc_switch_to_32k variable
        ARM: imx6ul: add fec MAC refrence clock and phy fixup init
        ARM: imx6ul: add fec bits to GPR syscon definition
        rtc: mxc: add support of device tree
        dt-binding: document the binding for mxc rtc
        rtc: mxc: use a second rtc clock
        ARM: davinci: cp_intc: use IRQCHIP_SKIP_SET_WAKE instead of irq_set_wake callback
        soc: mediatek: Fix SCPSYS compilation
        ARM: at91/soc: add basic support for new sama5d2 SoC
        ...
      50686e8a
    • Linus Torvalds's avatar
      Merge tag 'armsoc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · c5fc2498
      Linus Torvalds authored
      Pull ARM SoC cleanups from Olof Johansson:
       "A large cleanup branch this release, with a healthy 10k negative line
        delta.
      
        Most of this is removal of legacy (non-DT) support of shmobile
        platforms.  There is also removal of two non-DT platforms on OMAP, and
        the plat-samsung directory is cleaned out by moving most of the
        previously shared-location-but-not-actually-shared files from there to
        the appropriate mach directories instead.
      
        There are other sets of changes in here as well:
      
         - Rob Herring removed use of set_irq_flags under all platforms and
           moved to genirq alternatives
      
         - a series of timer API conversions to set-state interface
      
         - ep93xx, nomadik and ux500 cleanups from Linus Walleij
      
         - __init annotation fixes from Nicolas Pitre
      
         + a bunch of other changes that all add up to a nice set of cleanups"
      
      * tag 'armsoc-cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (108 commits)
        ARM/fb: ep93xx: switch framebuffer to use modedb only
        ARM: gemini: Setup timer3 as free running timer
        ARM: gemini: Use timer1 for clockevent
        ARM: gemini: Add missing register definitions for gemini timer
        ARM: ep93xx/timer: Migrate to new 'set-state' interface
        ARM: nomadik: push accelerometer down to boards
        ARM: nomadik: move l2x0 setup to device tree
        ARM: nomadik: selectively enable UART0 on boards
        ARM: nomadik: move hog code to use DT hogs
        ARM: shmobile: Fix mismerges
        ARM: ux500: simplify secondary CPU boot
        ARM: SAMSUNG: remove keypad-core header in plat-samsung
        ARM: SAMSUNG: local watchdog-reset header in mach-s3c64xx
        ARM: SAMSUNG: local onenand-core header in mach-s3c64xx
        ARM: SAMSUNG: local irq-uart header in mach-s3c64xx
        ARM: SAMSUNG: local backlight header in mach-s3c64xx
        ARM: SAMSUNG: local ata-core header in mach-s3c64xx
        ARM: SAMSUNG: local regs-usb-hsotg-phy header in mach-s3c64xx
        ARM: SAMSUNG: local spi-core header in mach-s3c24xx
        ARM: SAMSUNG: local nand-core header in mach-s3c24xx
        ...
      c5fc2498
    • Linus Torvalds's avatar
      Merge tag 'armsoc-fixes-nc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 00e3fcc2
      Linus Torvalds authored
      Pull ARM SoC non-urgent fixes from Olof Johansson:
       "We normally collect non-urgent fixes during the release cycle and
        queue them for the merge window.
      
        This time around the list is short (in part because some have gone in
        other branches).
      
         - Maintainers addition for bcm2835
         - IRQ number fix for orion5x (been present since 3.18)
         - DT fix for display on exynos3250
         - Exynos fix to use of IOMEM_ERR_PTR properly"
      
      * tag 'armsoc-fixes-nc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        ARM: orion5x: fix legacy orion5x IRQ numbers
        MAINTAINERS: Explicitly add linux-arm-kernel for bcm2835
        MAINTAINERS: Add myself as a bcm2835 co-maintainer.
        ARM: EXYNOS: Use IOMEM_ERR_PTR when function returns iomem
        ARM: dts: fix clock-frequency of display timing0 for exynos3250-rinato
      00e3fcc2
    • Linus Torvalds's avatar
      Merge tag 'arc-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc · 28dce7c7
      Linus Torvalds authored
      Pull ARC architecture updates from Vineet Gupta:
       "ARC updates for 4.3:
      
         - perf support for ARCv2 based cores (sampling interrupt, SMP)
         - leftovers for ARCv2 support
         - futex fixes"
      
      * tag 'arc-4.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/vgupta/arc:
        ARCv2: entry: Fix reserved handler
        ARCv2: perf: Finally introduce HS perf unit
        ARCv2: perf: SMP support
        ARCv2: perf: implement exclusion of event counting in user or kernel mode
        ARCv2: perf: Support sampling events using overflow interrupts
        ARCv2: perf: implement "event_set_period"
        ARC: perf: cap the number of counters to hardware max of 32
        ARC: Eliminate some ARCv2 specific code for ARCompact build
        ARC: add/fix some comments in code - no functional change
        ARC: change some branchs to jumps to resolve linkage errors
        ARC: ensure futex ops are atomic in !LLSC config
        ARC: Enable HAVE_FUTEX_CMPXCHG
        ARC: make futex_atomic_cmpxchg_inatomic() return bimodal
        ARC: futex cosmetics
        ARC: add barriers to futex code
        ARCv2: IOC: Allow boot time disable
        ARCv2: SLC: Allow boot time disable
        ARCv2: Support IO Coherency and permutations involving L1 and L2 caches
        ARC: Enable optimistic spinning for LLSC config
        MAINTAINERS: add git tree for the arc architecture
      28dce7c7
    • Linus Torvalds's avatar
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 361f7d17
      Linus Torvalds authored
      Pull x86 core platform updates from Ingo Molnar:
       "The main changes are:
      
         - Intel Atom platform updates.  (Andy Shevchenko)
      
         - modularity fixlets.  (Paul Gortmaker)
      
         - x86 platform clockevents driver updates for lguest, uv and Xen.
           (Viresh Kumar)
      
         - Microsoft Hyper-V TSC fixlet.  (Vitaly Kuznetsov)"
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/platform: Make atom/pmc_atom.c explicitly non-modular
        x86/hyperv: Mark the Hyper-V TSC as unstable
        x86/xen/time: Migrate to new set-state interface
        x86/uv/time: Migrate to new set-state interface
        x86/lguest/timer: Migrate to new set-state interface
        x86/pci/intel_mid_pci: Use proper constants for irq polarity
        x86/pci/intel_mid_pci: Make intel_mid_pci_ops static
        x86/pci/intel_mid_pci: Propagate actual return code
        x86/pci/intel_mid_pci: Work around for IRQ0 assignment
        x86/platform/iosf_mbi: Add Intel Tangier PCI id
        x86/platform/iosf_mbi: Source cleanup
        x86/platform/iosf_mbi: Remove NULL pointer checks for pci_dev_put()
        x86/platform/iosf_mbi: Check return value of debugfs_create properly
        x86/platform/iosf_mbi: Move to dedicated folder
        x86/platform/intel/pmc_atom: Move the PMC-Atom code to arch/x86/platform/atom
        x86/platform/intel/pmc_atom: Add Cherrytrail PMC interface
        x86/platform/intel/pmc_atom: Supply register mappings via PMC object
        x86/platform/intel/pmc_atom: Print index of device in loop
        x86/platform/intel/pmc_atom: Export accessors to PMC registers
      361f7d17
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 25525bea
      Linus Torvalds authored
      Pull x86 mm updates from Ingo Molnar:
       "The dominant change in this cycle was the continued work to isolate
        kernel drivers from MTRR legacies: this tree gets rid of all kernel
        internal driver interfaces to MTRRs (mostly by rewriting it to proper
        PAT interfaces), the only access left is the /proc/mtrr ABI.
      
        This work was done by Luis R Rodriguez.
      
        There's also some related PCI interface additions for which I've
        Cc:-ed Bjorn"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)
        x86/mm/mtrr: Remove kernel internal MTRR interfaces: unexport mtrr_add() and mtrr_del()
        s390/io: Add pci_iomap_wc() and pci_iomap_wc_range()
        drivers/dma/iop-adma: Use dma_alloc_writecombine() kernel-style
        drivers/video/fbdev/vt8623fb: Use arch_phys_wc_add() and pci_iomap_wc()
        drivers/video/fbdev/s3fb: Use arch_phys_wc_add() and pci_iomap_wc()
        drivers/video/fbdev/arkfb.c: Use arch_phys_wc_add() and pci_iomap_wc()
        PCI: Add pci_iomap_wc() variants
        drivers/video/fbdev/gxt4500: Use pci_ioremap_wc_bar() to map framebuffer
        drivers/video/fbdev/kyrofb: Use arch_phys_wc_add() and pci_ioremap_wc_bar()
        drivers/video/fbdev/i740fb: Use arch_phys_wc_add() and pci_ioremap_wc_bar()
        PCI: Add pci_ioremap_wc_bar()
        x86/mm: Make kernel/check.c explicitly non-modular
        x86/mm/pat: Make mm/pageattr[-test].c explicitly non-modular
        x86/mm/pat: Add comments to cachemode translation tables
        arch/*/io.h: Add ioremap_uc() to all architectures
        drivers/video/fbdev/atyfb: Use arch_phys_wc_add() and ioremap_wc()
        drivers/video/fbdev/atyfb: Replace MTRR UC hole with strong UC
        drivers/video/fbdev/atyfb: Clarify ioremap() base and length used
        drivers/video/fbdev/atyfb: Carve out framebuffer length fudging into a helper
        x86/mm, asm-generic: Add IOMMU ioremap_uc() variant default
        ...
      25525bea
    • Linus Torvalds's avatar
      Merge branch 'x86-irq-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 2962156d
      Linus Torvalds authored
      Pull x86 irq fixlet from Ingo Molnar:
       "A single change that hides the 'HYP:' line in /proc/interrupts when
        it's unused"
      
      * 'x86-irq-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/irq: Hide 'HYP:' line in /proc/interrupts when not on Xen/Hyper-V
      2962156d
    • Linus Torvalds's avatar
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6b2282aa
      Linus Torvalds authored
      Pull x86 cpu updates from Ingo Molnar:
       "Two changes: a suspend/resume quirk and a new CPUID bit definition"
      
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/cpufeature: Add feature bit for Intel's Silicon Debug CPUID bit
        x86/cpu: Restore MSR_IA32_ENERGY_PERF_BIAS after resume
      6b2282aa
    • Linus Torvalds's avatar
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 0c0fee01
      Linus Torvalds authored
      Pull x86 init code fixlet from Ingo Molnar:
       "A single change: fix obsolete init code annotations"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Drop bogus __ref / __refdata annotations
      0c0fee01
    • Linus Torvalds's avatar
      Merge branch 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a0c0d985
      Linus Torvalds authored
      Pull x86 build fixlet from Ingo Molnar:
       "A single change propagating CONFIG_JUMP_LABEL into the x86 defconfigs"
      
      * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kconfig: Enable CONFIG_JUMP_LABEL in the defconfigs
      a0c0d985
    • Linus Torvalds's avatar
      Merge branch 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 11e612dd
      Linus Torvalds authored
      Pull x86 boot updates from Ingo Molnar:
       "The main x86 bootup related changes in this cycle were:
      
         - more boot time optimizations.  (Len Brown)
      
         - implement hex output to allow the debugging of early bootup
           parameters.  (Kees Cook)
      
         - remove obsolete MCA leftovers.  (Paolo Pisati)"
      
      * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/smpboot: Remove APIC.wait_for_init_deassert and atomic init_deasserted
        x86/smpboot: Remove SIPI delays from cpu_up()
        x86/smpboot: Remove udelay(100) when polling cpu_callin_map
        x86/smpboot: Remove udelay(100) when polling cpu_initialized_map
        x86/boot: Obsolete the MCA sys_desc_table
        x86/boot: Add hex output for debugging
      11e612dd
    • Linus Torvalds's avatar
      Merge branch 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5778077d
      Linus Torvalds authored
      Pull x86 asm changes from Ingo Molnar:
       "The biggest changes in this cycle were:
      
         - Revamp, simplify (and in some cases fix) Time Stamp Counter (TSC)
           primitives.  (Andy Lutomirski)
      
         - Add new, comprehensible entry and exit handlers written in C.
           (Andy Lutomirski)
      
         - vm86 mode cleanups and fixes.  (Brian Gerst)
      
         - 32-bit compat code cleanups.  (Brian Gerst)
      
        The amount of simplification in low level assembly code is already
        palpable:
      
           arch/x86/entry/entry_32.S                          | 130 +----
           arch/x86/entry/entry_64.S                          | 197 ++-----
      
        but more simplifications are planned.
      
        There's also the usual laudry mix of low level changes - see the
        changelog for details"
      
      * 'x86-asm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (83 commits)
        x86/asm: Drop repeated macro of X86_EFLAGS_AC definition
        x86/asm/msr: Make wrmsrl() a function
        x86/asm/delay: Introduce an MWAITX-based delay with a configurable timer
        x86/asm: Add MONITORX/MWAITX instruction support
        x86/traps: Weaken context tracking entry assertions
        x86/asm/tsc: Add rdtscll() merge helper
        selftests/x86: Add syscall_nt selftest
        selftests/x86: Disable sigreturn_64
        x86/vdso: Emit a GNU hash
        x86/entry: Remove do_notify_resume(), syscall_trace_leave(), and their TIF masks
        x86/entry/32: Migrate to C exit path
        x86/entry/32: Remove 32-bit syscall audit optimizations
        x86/vm86: Rename vm86->v86flags and v86mask
        x86/vm86: Rename vm86->vm86_info to user_vm86
        x86/vm86: Clean up vm86.h includes
        x86/vm86: Move the vm86 IRQ definitions to vm86.h
        x86/vm86: Use the normal pt_regs area for vm86
        x86/vm86: Eliminate 'struct kernel_vm86_struct'
        x86/vm86: Move fields from 'struct kernel_vm86_struct' to 'struct vm86'
        x86/vm86: Move vm86 fields out of 'thread_struct'
        ...
      5778077d
    • Linus Torvalds's avatar
      Merge branch 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 65a99597
      Linus Torvalds authored
      Pull NOHZ updates from Ingo Molnar:
       "The main changes, mostly written by Frederic Weisbecker, include:
      
         - Fix some jiffies based cputime assumptions.  (No real harm because
           the concerned code isn't used by full dynticks.)
      
         - Simplify jiffies <-> usecs conversions.  Remove dead code.
      
         - Remove early hacks on nohz full code that avoided messing up idle
           nohz internals.  Now nohz integrates well full and idle and such
           hack have become needless.
      
         - Restart nohz full tick from irq exit.  (A simplification and a
           preparation for future optimization on scheduler kick to nohz
           full)
      
         - Code cleanups.
      
         - Tile driver isolation enhancement on top of nohz.  (Chris Metcalf)"
      
      * 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        nohz: Remove useless argument on tick_nohz_task_switch()
        nohz: Move tick_nohz_restart_sched_tick() above its users
        nohz: Restart nohz full tick from irq exit
        nohz: Remove idle task special case
        nohz: Prevent tilegx network driver interrupts
        alpha: Fix jiffies based cputime assumption
        apm32: Fix cputime == jiffies assumption
        jiffies: Remove HZ > USEC_PER_SEC special case
      65a99597
    • Linus Torvalds's avatar
      Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 418c2e1f
      Linus Torvalds authored
      Pull scheduler fix from Ingo Molnar:
       "This is a leftover scheduler fix from the v4.2 cycle"
      
      * 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        sched: Fix cpu_active_mask/cpu_online_mask race
      418c2e1f
    • Linus Torvalds's avatar
      Merge branch 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a1d85611
      Linus Torvalds authored
      Pull scheduler updates from Ingo Molnar:
       "The biggest change in this cycle is the rewrite of the main SMP load
        balancing metric: the CPU load/utilization.  The main goal was to make
        the metric more precise and more representative - see the changelog of
        this commit for the gory details:
      
          9d89c257 ("sched/fair: Rewrite runnable load and utilization average tracking")
      
        It is done in a way that significantly reduces complexity of the code:
      
          5 files changed, 249 insertions(+), 494 deletions(-)
      
        and the performance testing results are encouraging.  Nevertheless we
        need to keep an eye on potential regressions, since this potentially
        affects every SMP workload in existence.
      
        This work comes from Yuyang Du.
      
        Other changes:
      
         - SCHED_DL updates.  (Andrea Parri)
      
         - Simplify architecture callbacks by removing finish_arch_switch().
           (Peter Zijlstra et al)
      
         - cputime accounting: guarantee stime + utime == rtime.  (Peter
           Zijlstra)
      
         - optimize idle CPU wakeups some more - inspired by Facebook server
           loads.  (Mike Galbraith)
      
         - stop_machine fixes and updates.  (Oleg Nesterov)
      
         - Introduce the 'trace_sched_waking' tracepoint.  (Peter Zijlstra)
      
         - sched/numa tweaks.  (Srikar Dronamraju)
      
         - misc fixes and small cleanups"
      
      * 'sched-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (44 commits)
        sched/deadline: Fix comment in enqueue_task_dl()
        sched/deadline: Fix comment in push_dl_tasks()
        sched: Change the sched_class::set_cpus_allowed() calling context
        sched: Make sched_class::set_cpus_allowed() unconditional
        sched: Fix a race between __kthread_bind() and sched_setaffinity()
        sched: Ensure a task has a non-normalized vruntime when returning back to CFS
        sched/numa: Fix NUMA_DIRECT topology identification
        tile: Reorganize _switch_to()
        sched, sparc32: Update scheduler comments in copy_thread()
        sched: Remove finish_arch_switch()
        sched, tile: Remove finish_arch_switch
        sched, sh: Fold finish_arch_switch() into switch_to()
        sched, score: Remove finish_arch_switch()
        sched, avr32: Remove finish_arch_switch()
        sched, MIPS: Get rid of finish_arch_switch()
        sched, arm: Remove finish_arch_switch()
        sched/fair: Clean up load average references
        sched/fair: Provide runnable_load_avg back to cfs_rq
        sched/fair: Remove task and group entity load when they are dead
        sched/fair: Init cfs_rq's sched_entity load average
        ...
      a1d85611
    • Linus Torvalds's avatar
      Merge branch 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3959df1d
      Linus Torvalds authored
      Pull RAS updates from Ingo Molnar:
       "MCE handling updates, but also some generic drivers/edac/ changes to
        better organize the Kconfig space"
      
      * 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/ras: Move AMD MCE injector to arch/x86/ras/
        x86/mce: Add a wrapper around mce_log() for injection
        x86/mce: Rename rcu_dereference_check_mce() to mce_log_get_idx_check()
        RAS: Add a menuconfig option with descriptive text
        x86/mce: Reenable CMCI banks when swiching back to interrupt mode
        x86/mce: Clear Local MCE opt-in before kexec
        x86/mce: Remove unused function declarations
        x86/mce: Kill drain_mcelog_buffer()
        x86/mce: Avoid potential deadlock due to printk() in MCE context
        x86/mce: Remove the MCE ring for Action Optional errors
        x86/mce: Don't use percpu workqueues
        x86/mce: Provide a lockless memory pool to save error records
        x86/mce: Reuse one of the u16 padding fields in 'struct mce'
      3959df1d
    • Linus Torvalds's avatar
      Merge branch 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 41d859a8
      Linus Torvalds authored
      Pull perf updates from Ingo Molnar:
       "Main perf kernel side changes:
      
         - uprobes updates/fixes.  (Oleg Nesterov)
      
         - Add PERF_RECORD_SWITCH to indicate context switches and use it in
           tooling.  (Adrian Hunter)
      
         - Support BPF programs attached to uprobes and first steps for BPF
           tooling support.  (Wang Nan)
      
         - x86 generic x86 MSR-to-perf PMU driver.  (Andy Lutomirski)
      
         - x86 Intel PT, LBR and BTS updates.  (Alexander Shishkin)
      
         - x86 Intel Skylake support.  (Andi Kleen)
      
         - x86 Intel Knights Landing (KNL) RAPL support.  (Dasaratharaman
           Chandramouli)
      
         - x86 Intel Broadwell-DE uncore support.  (Kan Liang)
      
         - x86 hw breakpoints robustization (Andy Lutomirski)
      
        Main perf tooling side changes:
      
         - Support Intel PT in several tools, enabling the use of the
           processor trace feature introduced in Intel Broadwell processors:
           (Adrian Hunter)
      
             # dmesg | grep Performance
             # [0.188477] Performance Events: PEBS fmt2+, 16-deep LBR, Broadwell events, full-width counters, Intel PMU driver.
             # perf record -e intel_pt//u -a sleep 1
             [ perf record: Woken up 1 times to write data ]
             [ perf record: Captured and wrote 0.216 MB perf.data ]
             # perf script # then navigate in the tool output to some area, like this one:
             184 1030 dl_main (/usr/lib64/ld-2.17.so) => 7f21ba661440 dl_main (/usr/lib64/ld-2.17.so)
             185 1457 dl_main (/usr/lib64/ld-2.17.so) => 7f21ba669f10 _dl_new_object (/usr/lib64/ld-2.17.so)
             186 9f37 _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba677b90 strlen (/usr/lib64/ld-2.17.so)
             187 7ba3 strlen (/usr/lib64/ld-2.17.so) => 7f21ba677c75 strlen (/usr/lib64/ld-2.17.so)
             188 7c78 strlen (/usr/lib64/ld-2.17.so) => 7f21ba669f3c _dl_new_object (/usr/lib64/ld-2.17.so)
             189 9f8a _dl_new_object (/usr/lib64/ld-2.17.so) => 7f21ba65fab0 calloc@plt (/usr/lib64/ld-2.17.so)
             190 fab0 calloc@plt (/usr/lib64/ld-2.17.so) => 7f21ba675e70 calloc (/usr/lib64/ld-2.17.so)
             191 5e87 calloc (/usr/lib64/ld-2.17.so) => 7f21ba65fa90 malloc@plt (/usr/lib64/ld-2.17.so)
             192 fa90 malloc@plt (/usr/lib64/ld-2.17.so) => 7f21ba675e60 malloc (/usr/lib64/ld-2.17.so)
             193 5e68 malloc (/usr/lib64/ld-2.17.so) => 7f21ba65fa80 __libc_memalign@plt (/usr/lib64/ld-2.17.so)
             194 fa80 __libc_memalign@plt (/usr/lib64/ld-2.17.so) => 7f21ba675d50 __libc_memalign (/usr/lib64/ld-2.17.so)
             195 5d63 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675e20 __libc_memalign (/usr/lib64/ld-2.17.so)
             196 5e40 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675d73 __libc_memalign (/usr/lib64/ld-2.17.so)
             197 5d97 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675e18 __libc_memalign (/usr/lib64/ld-2.17.so)
             198 5e1e __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba675df9 __libc_memalign (/usr/lib64/ld-2.17.so)
             199 5e10 __libc_memalign (/usr/lib64/ld-2.17.so) => 7f21ba669f8f _dl_new_object (/usr/lib64/ld-2.17.so)
             200 9fc2 _dl_new_object (/usr/lib64/ld-2.17.so) =>  7f21ba678e70 memcpy (/usr/lib64/ld-2.17.so)
             201 8e8c memcpy (/usr/lib64/ld-2.17.so) => 7f21ba678ea0 memcpy (/usr/lib64/ld-2.17.so)
      
         - Add support for using several Intel PT features (CYC, MTC packets),
           the relevant documentation was updated in:
               tools/perf/Documentation/intel-pt.txt
           briefly describing those packets, its purposes, how to configure
           them in the event config terms and relevant external documentation
           for further reading.  (Adrian Hunter)
      
         - Introduce support for probing at an absolute address, for user and
           kernel 'perf probe's, useful when one have the symbol maps on a
           developer machine but not on an embedded system.  (Wang Nan)
      
         - Add Intel BTS support, with a call-graph script to show it and PT
           in use in a GUI using 'perf script' python scripting with
           postgresql and Qt.  (Adrian Hunter)
      
         - Allow selecting the type of callchains per event, including
           disabling callchains in all but one entry in an event list, to save
           space, and also to ask for the callchains collected in one event to
           be used in other events.  (Kan Liang)
      
         - Beautify more syscall arguments in 'perf trace': (Arnaldo Carvalho
           de Melo)
             * A bunch more translate file/pathnames from pointers to strings.
             * Convert numbers to strings for the 'keyctl' syscall 'option'
               arg.
             * Add missing 'clockid' entries.
      
         - Introduce 'srcfile' sort key: (Andi Kleen)
      
             # perf record -F 10000 usleep 1
             # perf report --stdio --dsos '[kernel.vmlinux]' -s srcfile
             <SNIP>
             # Overhead  Source File
                26.49%  copy_page_64.S
                 5.49%  signal.c
                 0.51%  msr.h
             #
      
           It can be combined with other fields, for instance, experiment with
           '-s srcfile,symbol'.
      
           There are some oddities in some distros and with some specific
           DSOs, being investigated, so your mileage may vary.
      
         - Support per-event 'freq' term: (Namhyung Kim)
      
             $ perf record -e 'cpu/instructions,freq=1234/',cycles -c 1000 sleep 1
             $ perf evlist -F
             cpu/instructions,freq=1234/: sample_freq=1234
             cycles: sample_period=1000
             $
      
         - Deref sys_enter pointer args with contents from probe:vfs_getname,
           showing pathnames instead of pointers in many syscalls in 'perf
           trace'.  (Arnaldo Carvalho de Melo)
      
         - Stop collecting /proc/kallsyms in perf.data files, saving about
           4.5MB on a typical x86-64 system, use the the symbol resolution
           routines used in all the other tools (report, top, etc) now that we
           can ask libtraceevent to use perf's symbol resolution code.
           (Arnaldo Carvalho de Melo)
      
         - Allow filtering out of perf's PID via 'perf record --exclude-perf'.
           (Wang Nan)
      
         - 'perf trace' now supports syscall groups, like strace, i.e:
      
             $ trace -e file touch file
      
           Will expand 'file' into multiple, file related, syscalls.  More
           work needed to add extra groups for other syscall groups, and also
           to complement what was added for the 'file' group, included as a
           proof of concept.  (Arnaldo Carvalho de Melo)
      
         - Add lock_pi stresser to 'perf bench futex', to test the kernel code
           related to FUTEX_(UN)LOCK_PI.  (Davidlohr Bueso)
      
         - Let user have timestamps with per-thread recording in 'perf record'
           (Adrian Hunter)
      
         - ... and tons of other changes, see the shortlog and the Git log for
           details"
      
      * 'perf-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (240 commits)
        perf evlist: Add backpointer for perf_env to evlist
        perf tools: Rename perf_session_env to perf_env
        perf tools: Do not change lib/api/fs/debugfs directly
        perf tools: Add tracing_path and remove unneeded functions
        perf buildid: Introduce sysfs/filename__sprintf_build_id
        perf evsel: Add a backpointer to the evlist a evsel is in
        perf trace: Add header with copyright and background info
        perf scripts python: Add new compaction-times script
        perf stat: Get correct cpu id for print_aggr
        tools lib traceeveent: Allow for negative numbers in print format
        perf script: Add --[no-]-demangle/--[no-]-demangle-kernel
        tracing/uprobes: Do not print '0x (null)' when offset is 0
        perf probe: Support probing at absolute address
        perf probe: Fix error reported when offset without function
        perf probe: Fix list result when address is zero
        perf probe: Fix list result when symbol can't be found
        tools build: Allow duplicate objects in the object list
        perf tools: Remove export.h from MANIFEST
        perf probe: Prevent segfault when reading probe point with absolute address
        perf tools: Update Intel PT documentation
        ...
      41d859a8
    • Linus Torvalds's avatar
      Merge branch 'mm-kasan-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 46580009
      Linus Torvalds authored
      Pull x86/kasan changes from Ingo Molnar:
       "These are two KASAN changes that factor out (and generalize) x86
        specific KASAN code from x86 to mm"
      
      * 'mm-kasan-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/kasan, mm: Introduce generic kasan_populate_zero_shadow()
        x86/kasan: Define KASAN_SHADOW_OFFSET per architecture
      46580009
    • Linus Torvalds's avatar
      Merge branch 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e10994ff
      Linus Torvalds authored
      Pull liblockdep fixes from Ingo Molnar:
       "Three liblockdep fixes left over from the v4.2 cycle"
      
      * 'locking-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        tools/liblockdep: Use the rbtree header provided by common tools headers
        tools/liblockdep: Correct macro for WARN
        tools: Restore export.h
      e10994ff
    • Linus Torvalds's avatar
      Merge branch 'core-types-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5757bd61
      Linus Torvalds authored
      Pull inlining tuning from Ingo Molnar:
       "A handful of inlining optimizations inspired by x86 work but
        applicable in general"
      
      * 'core-types-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        jiffies: Force inlining of {m,u}msecs_to_jiffies()
        x86/hweight: Force inlining of __arch_hweight{32,64}()
        linux/bitmap: Force inlining of bitmap weight functions
      5757bd61
    • Linus Torvalds's avatar
      Merge branch 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7073bc66
      Linus Torvalds authored
      Pull RCU updates from Ingo Molnar:
       "The main RCU changes in this cycle are:
      
         - the combination of tree geometry-initialization simplifications and
           OS-jitter-reduction changes to expedited grace periods.  These two
           are stacked due to the large number of conflicts that would
           otherwise result.
      
         - privatize smp_mb__after_unlock_lock().
      
           This commit moves the definition of smp_mb__after_unlock_lock() to
           kernel/rcu/tree.h, in recognition of the fact that RCU is the only
           thing using this, that nothing else is likely to use it, and that
           it is likely to go away completely.
      
         - documentation updates.
      
         - torture-test updates.
      
         - misc fixes"
      
      * 'core-rcu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (60 commits)
        rcu,locking: Privatize smp_mb__after_unlock_lock()
        rcu: Silence lockdep false positive for expedited grace periods
        rcu: Don't disable CPU hotplug during OOM notifiers
        scripts: Make checkpatch.pl warn on expedited RCU grace periods
        rcu: Update MAINTAINERS entry
        rcu: Clarify CONFIG_RCU_EQS_DEBUG help text
        rcu: Fix backwards RCU_LOCKDEP_WARN() in synchronize_rcu_tasks()
        rcu: Rename rcu_lockdep_assert() to RCU_LOCKDEP_WARN()
        rcu: Make rcu_is_watching() really notrace
        cpu: Wait for RCU grace periods concurrently
        rcu: Create a synchronize_rcu_mult()
        rcu: Fix obsolete priority-boosting comment
        rcu: Use WRITE_ONCE in RCU_INIT_POINTER
        rcu: Hide RCU_NOCB_CPU behind RCU_EXPERT
        rcu: Add RCU-sched flavors of get-state and cond-sync
        rcu: Add fastpath bypassing funnel locking
        rcu: Rename RCU_GP_DONE_FQS to RCU_GP_DOING_FQS
        rcu: Pull out wait_event*() condition into helper function
        documentation: Describe new expedited stall warnings
        rcu: Add stall warnings to synchronize_sched_expedited()
        ...
      7073bc66
    • Linus Torvalds's avatar
      Merge git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6 · d4c90396
      Linus Torvalds authored
      Pull crypto updates from Herbert Xu:
       "Here is the crypto update for 4.3:
      
        API:
      
         - the AEAD interface transition is now complete.
         - add top-level skcipher interface.
      
        Drivers:
      
         - x86-64 acceleration for chacha20/poly1305.
         - add sunxi-ss Allwinner Security System crypto accelerator.
         - add RSA algorithm to qat driver.
         - add SRIOV support to qat driver.
         - add LS1021A support to caam.
         - add i.MX6 support to caam"
      
      * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6: (163 commits)
        crypto: algif_aead - fix for multiple operations on AF_ALG sockets
        crypto: qat - enable legacy VFs
        MPI: Fix mpi_read_buffer
        crypto: qat - silence a static checker warning
        crypto: vmx - Fixing opcode issue
        crypto: caam - Use the preferred style for memory allocations
        crypto: caam - Propagate the real error code in caam_probe
        crypto: caam - Fix the error handling in caam_probe
        crypto: caam - fix writing to JQCR_MS when using service interface
        crypto: hash - Add AHASH_REQUEST_ON_STACK
        crypto: testmgr - Use new skcipher interface
        crypto: skcipher - Add top-level skcipher interface
        crypto: cmac - allow usage in FIPS mode
        crypto: sahara - Use dmam_alloc_coherent
        crypto: caam - Add support for LS1021A
        crypto: qat - Don't move data inside output buffer
        crypto: vmx - Fixing GHASH Key issue on little endian
        crypto: vmx - Fixing AES-CTR counter bug
        crypto: null - Add missing Kconfig tristate for NULL2
        crypto: nx - Add forward declaration for struct crypto_aead
        ...
      d4c90396
    • Linus Torvalds's avatar
      Merge tag 'clk-for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux · f36fc04e
      Linus Torvalds authored
      Pull clk updates from Michael Turquette:
       "The clk framework changes for 4.3 are mostly updates to existing
        drivers and the addition of new clock drivers.  Stephen Boyd has also
        done a lot of subsystem-wide driver clean-ups (thanks!).  There are
        also fixes to the framework core and changes to better split clock
        provider drivers from clock consumer drivers"
      
      * tag 'clk-for-linus-4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux: (227 commits)
        clk: s5pv210: add missing call to samsung_clk_of_add_provider()
        clk: pistachio: correct critical clock list
        clk: pistachio: Fix PLL rate calculation in integer mode
        clk: pistachio: Fix override of clk-pll settings from boot loader
        clk: pistachio: Fix 32bit integer overflows
        clk: tegra: Fix some static checker problems
        clk: qcom: Fix MSM8916 prng clock enable bit
        clk: Add missing header for 'bool' definition to clk-conf.h
        drivers/clk: appropriate __init annotation for const data
        clk: rockchip: register pll mux before pll itself
        clk: add bindings for the Ux500 clocks
        clk/ARM: move Ux500 PRCC bases to the device tree
        clk: remove duplicated code with __clk_set_parent_after
        clk: Convert __clk_get_name(hw->clk) to clk_hw_get_name(hw)
        clk: Constify clk_hw argument to provider APIs
        clk: Hi6220: add stub clock driver
        dt-bindings: clk: Hi6220: Document stub clock driver
        dt-bindings: arm: Hi6220: add doc for SRAM controller
        clk: atlas7: fix pll missed divide NR in fraction mode
        clk: atlas7: fix bit field and its root clk for coresight_tpiu
        ...
      f36fc04e
    • Linus Torvalds's avatar
      Merge tag 'pci-v4.3-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 26f8b7ed
      Linus Torvalds authored
      Pull PCI updates from Bjorn Helgaas:
       "PCI changes for the v4.3 merge window:
      
        Enumeration:
         - Allocate ATS struct during enumeration (Bjorn Helgaas)
         - Embed ATS info directly into struct pci_dev (Bjorn Helgaas)
         - Reduce size of ATS structure elements (Bjorn Helgaas)
         - Stop caching ATS Invalidate Queue Depth (Bjorn Helgaas)
         - iommu/vt-d: Cache PCI ATS state and Invalidate Queue Depth (Bjorn Helgaas)
         - Move MPS configuration check to pci_configure_device() (Bjorn Helgaas)
         - Set MPS to match upstream bridge (Keith Busch)
         - ARM/PCI: Set MPS before pci_bus_add_devices() (Murali Karicheri)
         - Add pci_scan_root_bus_msi() (Lorenzo Pieralisi)
         - ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi() (Lorenzo Pieralisi)
      
        Resource management:
         - Call pci_read_bridge_bases() from core instead of arch code (Lorenzo Pieralisi)
      
        PCI device hotplug:
         - pciehp: Remove unused interrupt events (Bjorn Helgaas)
         - pciehp: Remove ignored MRL sensor interrupt events (Bjorn Helgaas)
         - pciehp: Handle invalid data when reading from non-existent devices (Jarod Wilson)
         - pciehp: Simplify pcie_poll_cmd() (Yijing Wang)
         - Use "slot" and "pci_slot" for struct hotplug_slot and struct pci_slot (Yijing Wang)
         - Protect pci_bus->slots with pci_slot_mutex, not pci_bus_sem (Yijing Wang)
         - Hold pci_slot_mutex while searching bus->slots list (Yijing Wang)
      
        Power management:
         - Disable async suspend/resume for JMicron multi-function SATA/AHCI (Zhang Rui)
      
        Virtualization:
         - Add ACS quirks for Intel I219-LM/V (Alex Williamson)
         - Restore ACS configuration as part of pci_restore_state() (Alexander Duyck)
      
        MSI:
         - Add pcibios_alloc_irq() and pcibios_free_irq() (Jiang Liu)
         - x86: Implement pcibios_alloc_irq() and pcibios_free_irq() (Jiang Liu)
         - Add helpers to manage pci_dev->irq and pci_dev->irq_managed (Jiang Liu)
         - Free legacy IRQ when enabling MSI/MSI-X (Jiang Liu)
         - ARM/PCI: Remove msi_controller from struct pci_sys_data (Lorenzo Pieralisi)
         - Remove unused pcibios_msi_controller() hook (Lorenzo Pieralisi)
      
        Generic host bridge driver:
         - Remove dependency on ARM-specific struct hw_pci (Jayachandran C)
         - Build setup-irq.o for arm64 (Jayachandran C)
         - Add arm64 support (Jayachandran C)
      
        APM X-Gene host bridge driver:
         - Add APM X-Gene PCIe 64-bit prefetchable window (Duc Dang)
         - Add support for a 64-bit prefetchable memory window (Duc Dang)
         - Drop owner assignment from platform_driver (Krzysztof Kozlowski)
      
        Broadcom iProc host bridge driver:
         - Allow BCMA bus driver to be built as module (Hauke Mehrtens)
         - Delete unnecessary checks before phy calls (Markus Elfring)
         - Add arm64 support (Ray Jui)
      
        Synopsys DesignWare host bridge driver:
         - Don't complain missing *config* reg space if va_cfg0 is set (Murali Karicheri)
      
        TI DRA7xx host bridge driver:
         - Disable pm_runtime on get_sync failure (Kishon Vijay Abraham I)
         - Add PM support (Kishon Vijay Abraham I)
         - Clear MSE bit during suspend so clocks will idle (Kishon Vijay Abraham I)
         - Add support to make GPIO drive PERST# line (Kishon Vijay Abraham I)
      
        Xilinx AXI host bridge driver:
         - Check for MSI interrupt flag before handling as INTx (Russell Joyce)
      
        Miscellaneous:
         - Fix Intersil/Techwell TW686[4589] AV capture class code (Krzysztof Hałasa)
         - Use PCI_CLASS_SERIAL_USB instead of bare number (Bjorn Helgaas)
         - Fix generic NCR 53c810 class code quirk (Bjorn Helgaas)
         - Fix TI816X class code quirk (Bjorn Helgaas)
         - Remove unused "pci_probe" flags (Bjorn Helgaas)
         - Host bridge driver code simplifications (Fabio Estevam)
         - Add dev_flags bit to access VPD through function 0 (Mark Rustad)
         - Add VPD function 0 quirk for Intel Ethernet devices (Mark Rustad)
         - Kill off set_irq_flags() usage (Rob Herring)
         - Remove Intel Cherrytrail D3 delays (Srinidhi Kasagar)
         - Clean up pci_find_capability() (Wei Yang)"
      
      * tag 'pci-v4.3-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (72 commits)
        PCI: Disable async suspend/resume for JMicron multi-function SATA/AHCI
        PCI: Set MPS to match upstream bridge
        PCI: Move MPS configuration check to pci_configure_device()
        PCI: Drop references acquired by of_parse_phandle()
        PCI/MSI: Remove unused pcibios_msi_controller() hook
        ARM/PCI: Remove msi_controller from struct pci_sys_data
        ARM/PCI, designware, xilinx: Use pci_scan_root_bus_msi()
        PCI: Add pci_scan_root_bus_msi()
        ARM/PCI: Replace panic with WARN messages on failures
        PCI: generic: Add arm64 support
        PCI: Build setup-irq.o for arm64
        PCI: generic: Remove dependency on ARM-specific struct hw_pci
        PCI: imx6: Simplify a trivial if-return sequence
        PCI: spear: Use BUG_ON() instead of condition followed by BUG()
        PCI: dra7xx: Remove unneeded use of IS_ERR_VALUE()
        PCI: Remove pci_ats_enabled()
        PCI: Stop caching ATS Invalidate Queue Depth
        PCI: Move ATS declarations to linux/pci.h so they're all together
        PCI: Clean up ATS error handling
        PCI: Use pci_physfn() rather than looking up physfn by hand
        ...
      26f8b7ed
    • Linus Torvalds's avatar
      Merge tag 'leds_for_4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds · edc837da
      Linus Torvalds authored
      Pull LED updates from Jacek Anaszewski:
       "In this merge window we'd like to announce a change on the list of LED
        subsystem maintainers - Bryan Wu decided to step back and handed over
        the maintainership to me (Jacek Anaszewski), which entailed an update
        of LED subsystem git tree URL.
      
        Besides the changes in MAINTAINERS we have:
      
         - optimizations and improvements to existing LED class drivers
      
         - improvements to the common LEDs DT documentation
      
         - modifications of kirkwood-* dts files, to be in sync with patches
           for leds-ns2 driver, that move LEDs mode mapping outside of the
           driver"
      
      * tag 'leds_for_4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds:
        leds: Export OF module alias information in missing drivers
        leds:lp55xx: use the private data instead of updating I2C device platform data
        leds: syscon: Correct check for syscon_node_to_regmap() errors
        leds: leds-fsg: Use devm_led_classdev_register
        MAINTAINERS: Change LED subsystem git tree URL
        leds/led-class: Add missing put_device()
        ARM: Kirkwood: add modes-map property to ns2-leds nodes
        leds: tlc591xx: Remove redundant I2C_FUNC_SMBUS_BYTE_DATA functionality check
        leds: leds-ns2: depends on MACH_ARMADA_370
        leds: leds-ns2: handle can_sleep GPIOs
        leds: leds-ns2: move LED modes mapping outside of the driver
        leds: lp8860: Constify reg_default tables
        leds: Drop owner assignment from i2c_driver
        leds: Allow compile test of LEDS_AAT1290 and LEDS_KTD2692 if !GPIOLIB
        leds: Allow compile test of GPIO consumers if !GPIOLIB
        DT: leds: Improve description of flash LEDs related properties
      edc837da
  2. 31 Aug, 2015 8 commits
    • Linus Torvalds's avatar
      Merge tag 'spi-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · e5aeced6
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "A few core tweaks this time together with the usual collection of
        driver specific updates and fixes plus a larger than average selection
        of new device support:
      
         - fix DMA mapping of unaligned vmalloc() buffers
      
         - statistics tracking transfer volumes exposed via sysfs
      
         - new drivers for Freescale MPC5125, Intel Sunrise Point, Mediatek
           SoCs, and Netlogic XLP SoCs"
      
      * tag 'spi-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (66 commits)
        spi: sh-msiof: Fix FIFO size to 64 word from 256 word
        spi: fsl-(e)spi: Fix checking return value of devm_ioremap_resource
        spi: Add DT bindings documentation for Netlogic XLP SPI controller
        spi/xlp: SPI controller driver for Netlogic XLP SoCs
        spi: fsl-espi: add runtime PM
        spi: fsl-(e)spi: simplify cleanup code
        spi: fsl-(e)spi: migrate to using devm_ functions to simplify cleanup
        spi: mediatek: fix SPI_CMD_PAUSE_IE macro error
        spi: check bits_per_word in spi_setup
        spi: mediatek: replace *_time name
        spi: mediatek: add PM clk_prepare_enable fail flow
        spi: mediatek: replace int with u32, delete TAB and define MTK_SPI_PAUSE_INT_STATUS marco
        spi: mediatek: add linux/io.h include file
        spi/bcm63xx-hsspi: add support for dual spi read/write
        spi: dw: Allow interface drivers to limit data I/O to word sizes
        dt: snps,dw-apb-ssi: Document new I/O data register width property
        spi: Fall back to master maximum speed if no slave speed specified
        spi: mediatek: use BIT() to instead of SPI_CMD_*_OFFSET
        spi: medaitek: revise quirks compatibility style
        spi: mediatek: fix spi incorrect endian usage
        ...
      e5aeced6
    • Linus Torvalds's avatar
      Merge tag 'regulator-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · cf9d615f
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "The biggest changes in the core this time around have been some
        refactorings that move us towards being able to drop the list of
        regulators maintained by the core and instead just use the driver
        model list maintained for the class devices for regulators which will
        make the code smaller and avoid some potential bugs.
      
        Otherwise another fairly quiet release for the regulator API,
        highlights include:
      
         - a new API for setting voltages based on a minimum, target, maximum
           triplet
      
         - support for continuous voltage ranges rather than tables of
           explicit steps in the PWM regulator, requiring less explicit
           configuration
      
         - new driver support for Dialog DA9215, Maxim 77843, Mediatek MT6311
           and Qualcomm RPM"
      
      * tag 'regulator-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (70 commits)
        regulator: mt6311: fix platform_no_drv_owner.cocci warnings
        regulator: ltc3589: Remove unnecessary MODULE_ALIAS()
        regulator: ad5398: Remove unnecessary MODULE_ALIAS()
        regulator: pfuze100: Remove unnecessary MODULE_ALIAS()
        regulator: core: use debug level print in regulator_check_drms
        regulator: lp872x: handle error case
        regulator: lp872x: use the private data instead of updating I2C device platform data
        regulator: isl9305: Export OF module alias information
        regulators: max77693: register driver earlier to avoid deferred probe
        regulator: qcom_smd: Set n_voltages for pm8941_lnldo
        regulator: core: Use IS_ERR_OR_NULL()
        regulator: core: Define regulator_set_voltage_triplet()
        regulator: Regulator driver for the Qualcomm RPM
        regulator: pbias: Fix broken pbias disable functionality
        regulator: core: Spelling fix
        regulator: core: Use class device list for regulator_list in late init
        regulator: core: Move more deallocation into class unregister
        regulator: core: Reduce rdev locking region when releasing regulator
        Input: Remove the max77843 haptic driver
        Input: max77693: Add support for Maxim 77843
        ...
      cf9d615f
    • Linus Torvalds's avatar
      Merge tag 'docs-for-linus' of git://git.lwn.net/linux-2.6 · e2701603
      Linus Torvalds authored
      Pull documentation updates from Jonathan Corbet:
       "There's been a fair amount going on in the docs tree this time around,
        including:
      
         - Support for reproducible document builds, from Ben Hutchings and
           company.
      
         - The ability to automatically generate cross-reference links within
           a single DocBook book and embedded descriptions for large
           structures.  From Danilo Cesar Lemes de Paula.
      
         - A new document on how to add a system call from David Drysdale.
      
         - Chameleon bus documentation from Johannes Thumshirn.
      
        ...plus the usual collection of improvements, typo fixes, and more"
      
      * tag 'docs-for-linus' of git://git.lwn.net/linux-2.6: (39 commits)
        Documentation, add kernel-parameters.txt entry for dis_ucode_ldr
        Documentation/x86: Rename IRQSTACKSIZE to IRQ_STACK_SIZE
        Documentation/Intel-IOMMU.txt: Modify definition of DRHD
        docs: update HOWTO for 3.x -> 4.x versioning
        kernel-doc: ignore unneeded attribute information
        scripts/kernel-doc: Adding cross-reference links to html documentation.
        DocBook: Fix non-determinstic installation of duplicate man pages
        Documentation: minor typo fix in mailbox.txt
        Documentation: describe how to add a system call
        doc: Add more workqueue functions to the documentation
        ARM: keystone: add documentation for SoCs and EVMs
        scripts/kernel-doc Allow struct arguments documentation in struct body
        SubmittingPatches: remove stray quote character
        Revert "DocBook: Avoid building man pages repeatedly and inconsistently"
        Documentation: Minor changes to men-chameleon-bus.txt
        Doc: fix trivial typo in SubmittingPatches
        MAINTAINERS: Direct Documentation/DocBook/media properly
        Documentation: installed man pages don't need to be executable
        fix Evolution submenu name in email-clients.txt
        Documentation: Add MCB documentation
        ...
      e2701603
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v4.3' of... · 22629b6d
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon updates from Guenter Roeck:
       "Notable changes:
      
         - added support for LTM4675, LTC3886, LTC2980, LTM2987, LTC2975,
           LTC3887, LTC3882, MAX20751, ADM1293, and ADM1294 to PMBus drivers
         - added support for IT8732F to it87 driver
         - added support for AMD Carrizo to fam15h_power driver
         - added support for various new attributes to nct7802 driver
         - added support for F81866 and F71868 to f71882fg driver"
      
      * tag 'hwmon-for-linus-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (45 commits)
        hwmon: (fam15h_power) Add ratio of Tsample to the PTSC period
        hwmon: (fam15h_power) Add documentation for new processors support
        hwmon: (fam15h_power) Update running_avg_capture bit field to 28
        hwmon: (fam15h_power) Rename fam15h_power_is_internal_node0 function
        hwmon: (fam15h_power) Add support for AMD Carrizo
        hwmon: (ltc2978) Add support for LTM4675
        hwmon: (ltc2978) Add polling for chips requiring it
        hwmon: (pmbus) Enable PEC if the controller supports it
        hwmon: (pmbus) Use BIT macro
        hwmon: (ltc2978) Add support for LTC3886
        hwmon: (ltc2978) Add support for LTC2980 and LTM2987
        hwmon: (ltc2978) Add missing chip IDs for LTC2978 and LTC3882
        hwmon: (ltc2978) Use correct ID mask to detect all chips
        hwmon: (ltc2978) Introduce helper functions for min and max values
        hwmon: (ltc2978) Introduce feature flags
        hwmon: (pmbus) Convert command register definitions to enum
        hwmon: (ltc2978) Add support for LTC2975
        hwmon: (ltc2978) Add support for LTC3887
        hwmon: (ltc2978) Add additional chip IDs for LTM4676 and LTM4676A
        hwmon: (ltc2978) Add support for LTC3882
        ...
      22629b6d
    • Linus Torvalds's avatar
      Merge tag 'for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · c8192ba4
      Linus Torvalds authored
      Pull power supply and reset changes from Sebastian Reichel:
       - new reset driver for ZTE SoCs
       - add support for sama5d3 reset handling
       - overhaul of twl4030 charger driver
       - misc fixes and cleanups
      
      * tag 'for-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (35 commits)
        bq2415x_charger: Allow to load and use driver even if notify device is not registered yet
        twl4030_charger: fix compile error when TWL4030_MADC not available.
        power: bq24190_charger: Fix charge type sysfs property
        power: Allow compile test of GPIO consumers if !GPIOLIB
        power: Export I2C module alias information in missing drivers
        twl4030_charger: Increase current carefully while watching voltage.
        twl4030_charger: add ac/mode to match usb/mode
        twl4030_charger: add software controlled linear charging mode.
        twl4030_charger: enable manual enable/disable of usb charging.
        twl4030_charger: allow max_current to be managed via sysfs.
        twl4030_charger: distinguish between USB current and 'AC' current
        twl4030_charger: allow fine control of charger current.
        twl4030_charger: split uA calculation into a function.
        twl4030_charger: trust phy to determine when USB power is available.
        twl4030_charger: correctly handle -EPROBE_DEFER from devm_usb_get_phy_by_node
        twl4030_charger: convert to module_platform_driver instead of ..._probe.
        twl4030_charger: use runtime_pm to keep usb phy active while charging.
        rx51-battery: Set name to rx51-battery
        MAINTAINERS: AVS is not maintained via power supply tree
        power: olpc_battery: clean up eeprom read function
        ...
      c8192ba4
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 9c6a019c
      Linus Torvalds authored
      Pull s390 updates from Martin Schwidefsky:
       "The big one is support for fake NUMA, splitting a really large machine
        in more manageable piece improves performance in some cases, e.g. for
        a KVM host.
      
        The FICON Link Incident handling has been improved, this helps the
        operator to identify degraded or non-operational FICON connections.
      
        The save and restore of floating point and vector registers has been
        overhauled to allow the future use of vector registers in the kernel.
      
        A few small enhancement, magic sys-requests for the vt220 console via
        SCLP, some more assembler code has been converted to C, the PCI error
        handling is improved.
      
        And the usual cleanup and bug fixing"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (59 commits)
        s390/jump_label: Use %*ph to print small buffers
        s390/sclp_vt220: support magic sysrequests
        s390/ctrlchar: improve handling of magic sysrequests
        s390/numa: remove superfluous ARCH_WANT defines
        s390/3270: redraw screen on unsolicited device end
        s390/dcssblk: correct out of bounds array indexes
        s390/mm: simplify page table alloc/free code
        s390/pci: move debug messages to debugfs
        s390/nmi: initialize control register 0 earlier
        s390/zcrypt: use msleep() instead of mdelay()
        s390/hmcdrv: fix interrupt registration
        s390/setup: fix novx parameter
        s390/uaccess: remove uaccess_primary kernel parameter
        s390: remove unneeded sizeof(void *) comparisons
        s390/facilities: remove transactional-execution bits
        s390/numa: re-add DIE sched_domain_topology_level
        s390/dasd: enhance CUIR scope detection
        s390/dasd: fix failing path verification
        s390/vdso: emit a GNU hash
        s390/numa: make core to node mapping data dynamic
        ...
      9c6a019c
    • Linus Torvalds's avatar
      Merge tag 'xtensa-20150830' of git://github.com/czankel/xtensa-linux · 7c019191
      Linus Torvalds authored
      Pull xtensa updates from Chris Zankel:
       "Xtensa fixes and improvements for 4.3:
      
         - reimplement DMA API using common helpers
         - implement counting and sampling perf events using hardware perf
           counters
         - add fake NMI support for hardware perf counters
         - fix THREADPTR register reloading on return to userspace
         - keep exception/interrupt stack continuous for debugger
         - improve vmlinux.lds.S post-processing"
      
      * tag 'xtensa-20150830' of git://github.com/czankel/xtensa-linux:
        xtensa: improve vmlinux.lds.S sed post-processing
        xtensa: drop unused irq_err_count
        xtensa: implement fake NMI
        xtensa: don't touch EXC_TABLE_FIXUP in _switch_to
        xtensa: fix kernel register spilling
        xtensa: reorganize irq flags tracing
        perf tools: xtensa: add DWARF register names
        xtensa: implement counting and sampling perf events
        xtensa: count software page fault perf events
        xtensa: add profiling IRQ type to xtensa_irq_map
        xtensa: select PERF_USE_VMALLOC for cache-aliasing configurations
        xtensa: move oprofile stack tracing to stacktrace.c
        xtensa: keep exception/interrupt stack continuous
        xtensa: clean up Kconfig dependencies for custom cores
        xtensa: reimplement DMA API using common helpers
        xtensa: fix threadptr reload on return to userspace
        xtensa: ISS: add missing va_end into split_if_spec
      7c019191
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha · 7b8067d3
      Linus Torvalds authored
      Pull alpha update from Matt Turner:
       "A single patch for alpha, one that enables ARCH_USE_CMPXCHG_LOCKREF
        and offers around an 8% performance improvement on a little benchmark
        that you wrote"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha:
        alpha: select CONFIG_ARCH_USE_CMPXCHG_LOCKREF.
      7b8067d3