1. 27 Jul, 2017 3 commits
    • Petr Mladek's avatar
      printk/console: Enhance the check for consoles using init memory · 5a814231
      Petr Mladek authored
      printk_late_init() is responsible for disabling boot consoles that
      use init memory. It checks the address of struct console for this.
      
      But this is not enough. For example, there are several early
      consoles that have write() method in the init section and
      struct console in the normal section. They are not disabled
      and could cause fancy and hard to debug system states.
      
      It is even more complicated by the macros EARLYCON_DECLARE() and
      OF_EARLYCON_DECLARE() where various struct members are set at
      runtime by the provided setup() function.
      
      I have tried to reproduce this problem and forced the classic uart
      early console to stay using keep_bootcon parameter. In particular
      I used earlycon=uart,io,0x3f8 keep_bootcon console=ttyS0,115200.
      The system did not boot:
      
      [    1.570496] PM: Image not found (code -22)
      [    1.570496] PM: Image not found (code -22)
      [    1.571886] PM: Hibernation image not present or could not be loaded.
      [    1.571886] PM: Hibernation image not present or could not be loaded.
      [    1.576407] Freeing unused kernel memory: 2528K
      [    1.577244] kernel tried to execute NX-protected page - exploit attempt? (uid: 0)
      
      The double lines are caused by having both early uart console and
      ttyS0 console enabled at the same time. The early console stopped
      working when the init memory was freed. Fortunately, the invalid
      call was caught by the NX-protexted page check and did not cause
      any silent fancy problems.
      
      This patch adds a check for many other addresses stored in
      struct console. It omits setup() and match() that are used
      only when the console is registered. Therefore they have
      already been used at this point and there is no reason
      to use them again.
      
      Link: http://lkml.kernel.org/r/1500036673-7122-3-git-send-email-pmladek@suse.com
      
      
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Matt Redfearn <matt.redfearn@imgtec.com>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Jiri Slaby <jslaby@suse.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Alan Cox <gnomes@lxorguk.ukuu.org.uk>
      Cc: "Fabio M. Di Nitto" <fdinitto@redhat.com>
      Cc: linux-serial@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Reviewed-by: default avatarSergey Senozhatsky <sergey.senozhatsky@gmail.com>
      Signed-off-by: default avatarPetr Mladek <pmladek@suse.com>
      5a814231
    • Matt Redfearn's avatar
      printk/console: Always disable boot consoles that use init memory before it is freed · 2b1be689
      Matt Redfearn authored
      Commit 4c30c6f5 ("kernel/printk: do not turn off bootconsole in
      printk_late_init() if keep_bootcon") added a check on keep_bootcon to
      ensure that boot consoles were kept around until the real console is
      registered.
      
      This can lead to problems if the boot console data and code are in the
      init section, since it can be freed before the boot console is
      unregistered.
      
      Commit 81cc26f2 ("printk: only unregister boot consoles when
      necessary") fixed this a better way. It allowed to keep boot consoles
      that did not use init data. Unfortunately it did not remove the check
      of keep_bootcon.
      
      This can lead to crashes and weird panics when the bootconsole is
      accessed after free, especially if page poisoning is in use and the
      code / data have been overwritten with a poison value.
      
      To prevent this, always free the boot console if it is within the init
      section. In addition, print a warning about that the console is removed
      prematurely.
      
      Finally there is a new comment how to avoid the warning. It replaced
      an explanation that duplicated a more comprehensive function
      description few lines above.
      
      Fixes: 4c30c6f5 ("kernel/printk: do not turn off bootconsole in printk_late_init() if keep_bootcon")
      Link: http://lkml.kernel.org/r/1500036673-7122-2-git-send-email-pmladek@suse.com
      
      
      Cc: Steven Rostedt <rostedt@goodmis.org>
      Cc: Andrew Morton <akpm@linux-foundation.org>
      Cc: Peter Zijlstra <peterz@infradead.org>
      Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      Cc: Jiri Slaby <jslaby@suse.com>
      Cc: "David S. Miller" <davem@davemloft.net>
      Cc: Alan Cox <gnomes@lxorguk.ukuu.org.uk>
      Cc: "Fabio M. Di Nitto" <fdinitto@redhat.com>
      Cc: linux-serial@vger.kernel.org
      Cc: linux-kernel@vger.kernel.org
      Signed-off-by: default avatarMatt Redfearn <matt.redfearn@imgtec.com>
      [pmladek@suse.com: print the warning, code and comments clean up]
      Reviewed-by: default avatarSergey Senozhatsky <sergey.senozhatsky@gmail.com>
      Signed-off-by: default avatarPetr Mladek <pmladek@suse.com>
      2b1be689
    • Pierre Kuo's avatar
      printk: Modify operators of printed_len and text_len · aec47caa
      Pierre Kuo authored
      With commit <ddb9baa8> ("printk: report lost messages in printk
      safe/nmi contexts") and commit <8b1742c9> ("printk: remove zap_locks()
      function"), it seems we can remove initialization, "=0", of text_len and
      directly assign result of log_output to printed_len.
      
      Link: http://lkml.kernel.org/r/1499755255-6258-1-git-send-email-vichy.kuo@gmail.com
      
      
      Cc: rostedt@goodmis.org
      Cc: linux-kernel@vger.kernel.org
      Cc: joe@perches.com
      Signed-off-by: default avatarPierre Kuo <vichy.kuo@gmail.com>
      Reviewed-by: default avatarSergey Senozhatsky <sergey.senozhatsky@gmail.com>
      Signed-off-by: default avatarPetr Mladek <pmladek@suse.com>
      aec47caa
  2. 05 Jul, 2017 1 commit
  3. 04 Jul, 2017 26 commits
    • Linus Torvalds's avatar
      Merge tag 'armsoc-arm64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 19964541
      Linus Torvalds authored
      Pull ARM SoC 64-bit updates from Arnd Bergmann:
       "Changes to platform code for 64-bit ARM platforms.
      
        Andreas Färber adds two new platforms with initial code: Realtek
        RTD1295 and Action Semi S900. Both are fairly similar chips, used
        mainly in set-top-boxes, but with other possible applications, and
        additional members in the respective product families that could be
        added in the future. The code here is fairly minimal, as all the
        interesting parts are in device drivers and dts files.
      
        The Broadcom Vulcan platform gets dropped, as no products ever became
        available, and Cavium integrated the platform under a new name.
      
        Among some other defconfig changes, Timur Tabi enables a number of
        options that are typically required for server platforms"
      
      * tag 'armsoc-arm64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        arm64: defconfig: remove duplicate entry
        arm64: defconfig: enable Qualcomm Technologies EMAC and some PHY drivers
        arm64: defconfig: enable QCOM_L2_PMU and QCOM_L3_PMU
        arm64: defconfig: enable EDAC options
        arm64: defconfig: enable APEI and GHES features
        arm64: defconfig: enable support for PCIe hotplug
        arm64: defconfig: enable EFI_CAPSULE_LOADER
        arm64: defconfig: enable BLK_DEV_NVME
        arm64: defconfig: enable ACPI_CPPC_CPUFREQ
        arm64: marvell: enable ICU and GICP drivers
        arm64: marvell: enable the Armada 7K/8K pinctrl driver
        arm64: Prepare Actions Semi S900
        ARM64: defconfig: enable meson SPICC as module
        ARM64: defconfig: enable IR core, decoders and Meson IR device
        arm64: defconfig: enable Simple Sound Card support
        arm64: defconfig: Enable ARCH_BRCMSTB
        arm64: defconfig: drop ARCH_VULCAN
        arm64: disable Broadcom Vulcan platform
        MAINTAINERS: Add Realtek section
        ARM64: Prepare Realtek RTD1295
      19964541
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · a9ceea26
      Linus Torvalds authored
      Pull ARM 64-bit DT updates from Arnd Bergmann:
       "Device-tree updates for arm64 platforms. For the first time I can
        remember, this is actually larger than the corresponding branch for
        32-bit platforms overall, though that has more individual changes.
      
        A significant portion this time is due to added machine support:
      
         - Initial support for the Realtek RTD1295 SoC, along with the Zidoo
           X9S set-top-box
      
         - Initial support for Actions Semi S900 and the Bubblegum-96
           single-board-cёmputer.
      
         - Rockchips support for the rk3399-Firefly single-board-computer gets
           added, this one stands out for being relatively fast, affordable
           and well₋supported, compared to many boards that only fall into one
           or two of the above categories.
      
         - Mediatek gains support for the mt6797 mobile-phone SoC platform and
           corresponding evaluation board.
      
         - Amlogic board support gets added for the NanoPi K2 and S905x
           LibreTech CC single-board computers and the R-Box Pro set-top-box
      
         - Allwinner board support gets added for the OrangePi Win, Orangepi
           Zero Plus 2, NanoPi NEO2 and Orange Pi Prime single board computers
           and the SoPine system-on-module.
      
         - Renesas board support for Salvator-XS and H3ULCB automotive
           development systems.
      
         - Socionext Uniphier board support for LD11-global and LD20-global,
           whatever those may be.
      
         - Broadcom adds support for the new Stingray communication processor
           in its iProc family, along with two reference boards.
      
        Other updates include:
      
         - For the hisicon platform, support for Hi3660-Hikey960 gets extended
           significantly.
      
         - Lots of smaller updates for Renesas, Amlogic, Rockchip, UniPhier,
           Broadcom, Allwinner, Hisilicon, Qualcomm, Marvell, and NXP"
      
      * tag 'armsoc-dt64' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (243 commits)
        ARM64: dts: marvell: armada37xx: Fix timer interrupt specifiers
        Revert "arm64: dts: marvell: add dma-mask in crypto nodes for 7k/8k"
        arm64: dts: mediatek: don't include missing file
        ARM64: dts: meson-gxl: Add Libre Technology CC support
        dt-bindings: arm: amlogic: Add Libre Technology CC board
        dt-bindings: add Libre Technology vendor prefix
        arm64: dts: marvell: enable GICP and ICU on Armada 7K/8K
        arm64: dts: zte: Use - instead of @ for DT OPP entries
        arm64: dts: marvell: add gpio support for Armada 7K/8K
        arm64: dts: marvell: add pinctrl support for Armada 7K/8K
        arm64: dts: marvell: use new binding for the system controller on cp110
        arm64: dts: marvell: remove *-clock-output-names on cp110
        arm64: dts: marvell: use new bindings for xor clocks on ap806
        arm64: dts: marvell: mcbin: enable the mdio node
        arm64: dts: Add Actions Semi S900 and Bubblegum-96
        dt-bindings: Add vendor prefix for uCRobotics
        arm64: dts: marvell: add xmdio nodes for 7k/8k
        arm64: dts: marvell: add a comment on the cp110 slave node status
        arm64: dts: marvell: remove cpm crypto nodes from dts files
        arm64: dts: marvell: cp110: enable the crypto engine at the SoC level
        ...
      a9ceea26
    • Linus Torvalds's avatar
      Merge tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · e8547112
      Linus Torvalds authored
      Pull ARM SoC driver updates from Arnd Bergmann:
       "New SoC specific drivers:
      
         - NVIDIA Tegra PM Domain support for newer SoCs (Tegra186 and later)
           based on the "BPMP" firmware
      
         - Clocksource and system controller drivers for the newly added
           Action Semi platforms (both arm and arm64).
      
        Reset subsystem, merged through arm-soc by tradition:
      
         - New drivers for Altera Stratix10, TI Keystone and Cortina Gemini
           SoCs
      
         - Various subsystem-wide cleanups
      
        Updates for existing SoC-specific drivers
      
         - TI GPMC (General Purpose Memory Controller)
      
         - Mediatek "scpsys" system controller support for MT6797
      
         - Broadcom "brcmstb_gisb" bus arbitrer
      
         - ARM SCPI firmware
      
         - Renesas "SYSC" system controller
      
        One more driver update was submitted for the Freescale/NXP DPAA data
        path acceleration that has previously been used on PowerPC chips. I
        ended up postponing the merge until some API questions for its unusual
        MMIO access are resolved"
      
      * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (35 commits)
        clocksource: owl: Add S900 support
        clocksource: Add Owl timer
        soc: renesas: rcar-sysc: Use GENPD_FLAG_ALWAYS_ON
        firmware: tegra: Fix locking bugs in BPMP
        soc/tegra: flowctrl: Fix error handling
        soc/tegra: bpmp: Implement generic PM domains
        soc/tegra: bpmp: Update ABI header
        PM / Domains: Allow overriding the ->xlate() callback
        soc: brcmstb: enable drivers for ARM64 and BMIPS
        soc: renesas: Rework Kconfig and Makefile logic
        reset: Add the TI SCI reset driver
        dt-bindings: reset: Add TI SCI reset binding
        reset: use kref for reference counting
        soc: qcom: smsm: Improve error handling, quiesce probe deferral
        cpufreq: scpi: use new scpi_ops functions to remove duplicate code
        firmware: arm_scpi: add support to populate OPPs and get transition latency
        dt-bindings: reset: Add reset manager offsets for Stratix10
        memory: omap-gpmc: add error message if bank-width property is absent
        memory: omap-gpmc: make dts snippet include semicolon
        reset: Add a Gemini reset controller
        ...
      e8547112
    • Linus Torvalds's avatar
      Merge tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 9ce32ac8
      Linus Torvalds authored
      Pull ARM SoC defconfig updates from Arnd Bergmann:
       "The main changes this time are from a cleanup series that Krzysztof
        Kozłowski did, looking for config options in the defconfig files that
        got removed or renamed. He tracked them down to make sure we don't
        lose information unintentionally after an update.
      
        Aside from that, there is the usual driver enablement, this time for
        davinci, samsung, stm32, bcm2835, qualcomm, at91, imx, mvebu, and
        omap"
      
      * tag 'armsoc-defconfig' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (37 commits)
        multi_v7_defconfig: Enable OMAP MTD and DM816 AHCI
        ARM: qcom_defconfig: enable RPMSG_QCOM_SMD
        ARM: imx_v6_v7_defconfig: Select CONFIG_IMX7D_ADC
        ARM: mvebu: Enable SENSORS_PWM_FAN in defconfig
        ARM: davinci_all_defconfig: enable USB CDC NCM gadget
        ARM: davinci_all_defconfig: enable mtdtests
        ARM: imx_v6_v7_defconfig: Set THERMAL_WRITABLE_TRIPS=y for testing
        ARM: bcm2835_defconfig: Enable serial & ethernet USB gadget support
        ARM: tct_hammer_defconfig: Save defconfig
        ARM: s5pv210_defconfig: Save defconfig
        ARM: s3c6400_defconfig: Save defconfig
        ARM: mini2440_defconfig: Save defconfig
        ARM: s3c2410_defconfig: Save defconfig
        ARM: exynos_defconfig: Save defconfig
        ARM: s5pv210_defconfig: Bring back lost (but wanted) options
        ARM: s3c6400_defconfig: Bring back lost (but wanted) options
        ARM: s3c2410_defconfig: Bring back lost (but wanted) options
        ARM: tct_hammer_defconfig: Bring back lost (but wanted) options
        ARM: mini2440_defconfig: Bring back lost (but wanted) options
        ARM: defconfig: samsung: Re-order entries to match savedefconfig
        ...
      9ce32ac8
    • Linus Torvalds's avatar
      Merge tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 1849f800
      Linus Torvalds authored
      Pull ARM device-tree updates from Arnd Bergmann:
       "Device-tree continues to see lots of updates. The majority of patches
        here are smaller changes for new hardware on existing platforms, and
        there are a few larger changes worth pointing out.
      
        New machines:
      
         - The new Action Semi S500 platform is added along with initial
           support for the LeMaker Guitar board.
      
         - STM32 gains support for three new boards: stm32h743-disco,
           stm32f746-disco, and stm32f769-disco, along with new device support
           for the existing stm32f429 boards.
      
         - Renesas adds two new boards, the tiny GR-Peach based on RZ/A1H with
           10MB on-chip SRAM, and the iWave G20D-Q7 System-on-Module plus
           board.
      
         - On Marvell "mvebu", we gain support for the Linksys WRT3200ACM
           wireless router.
      
         - For NXP i.MX, we gain support for the Gateworks Ventana GW5600 and
           the Technexion Pico i.MX7D single-board computers.
      
         - The BeagleBone Blue is added for OMAP, it's the latest variation of
           the popular Beaglebone Black single-board computer.
      
         - The Allwinner based Lichee Pi Zero and NanoPi M1 Plus boards are
           added, these are the latest variations of a seemingly endless
           supply of similar single-board computers.
      
        Other updates:
      
         - Linus Walleij improves support for the "Faraday" based SoC
           platforms from various SoC makers (Moxart, Aspeed, Gemini)
      
         - The ARM Mali GPU is now describe on Rockchips SoCs
      
         - Mediatek MT7623 is extended significantly, making it much more
           useful.
      
         - Lots of individual updates on Renesas, OMAP, Rockchips, Broadcom,
           Allwinner, Qualcomm, iMX
      
         - For Amlogic, the clock support is extended a lot on meson8b.
      
         - We now build the devicetree file for the Raspberry Pi 3 on 32-bit
           ARM, in addition to the existing ARM64 support, to help users
           wanting to run a 32-bit system on it"
      
      * tag 'armsoc-dt' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (345 commits)
        ARM: dts: socfpga: set the i2c frequency
        ARM: dts: socfpga: Add second ethernet alias to VINING FPGA
        ARM: dts: socfpga: Drop LED node from VINING FPGA
        ARM: dts: socfpga: Remove I2C EEPROMs from VINING FPGA
        ARM: dts: socfpga: Enable QSPI support on VINING FPGA
        ARM: dts: socfpga: Fix the ethernet clock phandle
        ARM: pxa: Use - instead of @ for DT OPP entries
        ARM: dts: owl-s500: Add SPS node
        ARM: dts: owl-s500: Set CPU enable-method
        dt-bindings: arm: cpus: Add S500 enable-method
        ARM: dts: Add Actions Semi S500 and LeMaker Guitar
        dt-bindings: arm: Document Actions Semi S900
        dt-bindings: timer: Document Owl timer
        ARM: dts: imx6q-cm-fx6: add sdio wifi/bt nodes
        dt-bindings: arm: Document Actions Semi S500
        dt-bindings: Add vendor prefix for Actions Semi
        ARM: dts: turris-omnia: Add generic compatible string for I2C EEPROM
        ARM: dts: mvebu: add support for Linksys WRT3200ACM (Rango)
        ARM: dts: armada-385-linksys: fixup button node names
        ARM: dts: armada-385-linksys: group pins in pinctrl
        ...
      1849f800
    • Linus Torvalds's avatar
      Merge tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 8ca302e9
      Linus Torvalds authored
      Pull ARM SoC platform updates from Arnd Bergmann:
       "SoC platform changes (arch/arm/mach-*). This merge window, the bulk is
        for a few platforms:
      
         - Andres Färber adds initial support for the Actions Semi S500 (aka
           'owl') platform, a close relative of the S900 platform he adds for
           arm64.
      
         - in mach-omap2, we remove more legacy code
      
         - Rockchips gains support for the RV1108 SoC designed for camera
           applications.
      
         - For Atmel, we gain support for MMU-less SoCs (SAME70/V71/S70/V70)
      
         - Minor updates for other platforms, including davinci, s3c64xx,
           prima2, stm32, broadcom nsp, amlogic, pxa, imx and renesas"
      
      * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (74 commits)
        ARM: owl: smp: Drop bogus holding pen
        ARM: owl: Drop custom machine
        ARM: owl: smp: Implement SPS power-gating for CPU2 and CPU3
        soc: actions: owl-sps: Factor out owl_sps_set_pg() for power-gating
        soc: actions: Add Owl SPS
        dt-bindings: power: Add Owl SPS power domains
        MAINTAINERS: Update Actions Semi section with SPS
        ARM: owl: Implement CPU enable-method for S500
        MAINTAINERS: Add Actions Semi Owl section
        ARM: Prepare Actions Semi S500
        ARM: socfpga: Increase max number of GPIOs
        ARM: stm32: Introduce MACH_STM32F469 flag
        ARM: prima2: remove redundant select CPU_V7
        ARM: davinci: fix const warnings
        ARM: shmobile: pm-rmobile: Use GENPD_FLAG_ALWAYS_ON
        ARM: OMAP4: hwmod_data: add SHAM crypto accelerator
        ARM: OMAP4: hwmod data: add des
        ARM: OMAP4: hwmod data: add aes2
        ARM: OMAP4: hwmod data: add aes1
        ARM: pxa: Delete an error message for a failed memory allocation in pxa3xx_u2d_probe()
        ...
      8ca302e9
    • Linus Torvalds's avatar
      Merge tag 'armsoc-fixes-nc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc · 612341bd
      Linus Torvalds authored
      Pull non-urgent ARM SoC fixes from Arnd Bergmann:
       "Smaller patches that didn't seem to find a home in other branches, and
        low-priority fixes from late in the merge window.
      
         - Lee Jones retires as bcm2835 (raspberry pi) co-maintainer.
      
         - a couple of bugfixes for the ARM CCN bus driver that were regarded
           not important enough
      
         - minor device tree fixes for the Renesas and Marvell platforms, that
           came a little late or did not justify have another pull request
           after the last -rc"
      
      * tag 'armsoc-fixes-nc' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
        bus: arm-ccn: Enable stats for CCN-502 interconnect
        dt-bindings: arm-ccn: Add bindings info for CCN-502 compatible string
        bus: arm-ccn: Use devm_kcalloc() in arm_ccn_probe()
        bus: arm-ccn: Fix module autoload
        MAINTAINERS: add RV1108 Rockchip soc to maintained files
        ARM: dts: kirkwood: Fix Openblock A6 nand partition overlap
        ARM: dts: armadillo800eva: Split LCD mux and gpio
        MAINTAINERS: Remove Lee Jones from bcm2835.
      612341bd
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · c9946d01
      Linus Torvalds authored
      Pull HSI updates from Sebastian Reichel:
       "Misc cleanups"
      
      * tag 'hsi-for-4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: core: Use kcalloc() in two functions
        HSI: Use kcalloc() in hsi_register_board_info()
        HSI: omap_ssi: Delete an error message for a failed memory allocation in ssi_add_controller()
        HSI: omap_ssi: Fix a typo in a comment line
        HSI: omap_ssi: Use devm_kcalloc() in ssi_add_controller()
        HSI: nokia-modem: Add a space character for better code readability in nokia_modem_probe()
        HSI: nokia-modem: Delete error messages for a failed memory allocation in two functions
        HSI: nokia-modem: Use devm_kcalloc() in nokia_modem_gpio_probe()
      c9946d01
    • Linus Torvalds's avatar
      Merge tag 'for-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply · a897a101
      Linus Torvalds authored
      Pull power supply and reset updates from Sebastian Reichel:
       "New drivers:
         - Linear ltc3651 charger driver
         - Motorola CPCAP battery fuel-gauge driver
      
        New chip/feature support:
         - bq27xxx: prepare for chip data setup
         - axp20x_battery: support max charge current setup
      
        New core features:
         - add Apple Brick ID type
         - support "supplied-from" device property for generic ACPI/pdata support
         - support strings for sysfs properties representing enums
         - introduce battery-info (backend is DT only for now)
         - provide reboot-mode header globally
      
        .. and misc fixes"
      
      * tag 'for-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-power-supply: (39 commits)
        power: supply: sbs-battery: Don't needlessly set CAPACITY_MODE
        power: supply: sbs-battery: Prevent CAPACITY_MODE races
        power: supply: bq24735: remove incorrect le16_to_cpu calls
        power: supply: sbs-battery: remove incorrect le16_to_cpu calls
        power: supply: cpcap-charger: Add missing power_supply_config
        power: supply: twl4030-charger: move allocation of iio channel to the beginning
        power: supply: twl4030-charger: allocate iio by devm_iio_channel_get() and fix error path
        power: supply: core: constify psy_tcd_ops.
        dt-bindings: power: supply: cpcap-battery: Add power-supplies property
        dt-bindings: power: supply: move max8903-charger.txt to proper location
        dt-bindings: power: supply: move maxim,max14656.txt to proper location
        power: supply: twl4030_charger: Use sysfs_match_string() helper
        power: reset: reboot-mode: Make include file global
        power: supply: axp20x_battery: add DT support for battery max constant charge current
        power: supply: axp20x_battery: add support for DT battery
        power: supply: bq27xxx: Add power_supply_battery_info support
        power: supply: bq27xxx: Add chip data memory read/write support
        power: supply: bq27xxx: Add bulk transfer bus methods
        dt-bindings: power: supply: bq27xxx: Add monitored-battery documentation
        power: supply: core: Add power_supply_prop_precharge
        ...
      a897a101
    • Linus Torvalds's avatar
      Merge tag 'acpi-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · eceeae41
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These mostly update the ACPICA code in the kernel to upstream revision
        20170531 which covers all of the new material from ACPI 6.2, including
        new tables (WSMT, HMAT, PPTT), new subtables and definition changes
        for some existing tables (BGRT, HEST, SRAT, TPM2, PCCT), new resource
        descriptor macros for pin control, support for new predefined methods
        (_LSI, _LSR, _LSW, _HMA), fixes and cleanups.
      
        On top of that, an additional ACPICA change from Kees (which also is
        upstream already) switches all of the definitions of function pointer
        structures in ACPICA to use designated initializers so as to make the
        structure layout randomization GCC plugin work with it.
      
        The rest is a few fixes and cleanups in the EC driver, an xpower PMIC
        driver update, a new backlight blacklist entry, and update of the
        tables configfs interface and a messages formatting cleanup.
      
        Specifics:
      
         - Update the ACPICA code in the kernel to upstream revision revision
           20170531 (which covers all of the new material from ACPI 6.2)
           including:
            * Support for the PinFunction(), PinConfig(), PinGroup(),
              PinGroupFunction(), and PinGroupConfig() resource descriptors
              (Mika Westerberg).
            * Support for new subtables in HEST and SRAT, new notify value for
              HEST, header support for TPM2 table changes, and BGRT Status
              field update (Bob Moore).
            * Support for new PCCT subtables (David Box).
            * Support for _LSI, _LSR, _LSW, and _HMA as predefined methods
              (Erik Schmauss).
            * Support for the new WSMT, HMAT, and PPTT tables (Lv Zheng).
            * New UUID values for Processor Properties (Bob Moore).
            * New notify values for memory attributes and graceful shutdown
              (Bob Moore).
            * Fix related to the PCAT_COMPAT MADT flag (Janosch Hildebrand).
            * Resource to AML conversion fix for resources containing GPIOs
              (Mika Westerberg).
            * Disassembler-related updates (Bob Moore, David Box, Erik
              Schmauss).
            * Assorted fixes and cleanups (Bob Moore, Erik Schmauss, Lv Zheng,
              Cao Jin).
      
         - Modify ACPICA to always use designated initializers for function
           pointer structures to make the structure layout randomization GCC
           plugin work with it (Kees Cook).
      
         - Update the tables configfs interface to unload SSDTs on configfs
           entry removal (Jan Kiszka).
      
         - Add support for the GPI1 regulator to the xpower PMIC Operation
           Region handler (Hans de Goede).
      
         - Fix ACPI EC issues related to conflicting EC definitions in the
           ECDT and in the ACPI namespace (Lv Zheng, Carlo Caione, Chris
           Chiu).
      
         - Fix an interrupt storm issue in the EC driver and make its debug
           output work with dynamic debug as expected (Lv Zheng).
      
         - Add ACPI backlight quirk for Dell Precision 7510 (Shih-Yuan Lee).
      
         - Fix whitespace in pr_fmt() to align log entries properly in some
           places in the ACPI subsystem (Vincent Legoll)"
      
      * tag 'acpi-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (63 commits)
        ACPI / EC: Add quirk for GL720VMK
        ACPI / EC: Fix media keys not working problem on some Asus laptops
        ACPI / EC: Add support to skip boot stage DSDT probe
        ACPI / EC: Enhance boot EC sanity check
        ACPI / video: Add quirks for the Dell Precision 7510
        ACPI: EC: Fix EC command visibility for dynamic debug
        ACPI: EC: Fix an EC event IRQ storming issue
        ACPICA: Use designated initializers
        ACPICA: Update version to 20170531
        ACPICA: Update a couple of debug output messages
        ACPICA: acpiexec: enhance local signal handler
        ACPICA: Simplify output for the ACPI Debug Object
        ACPICA: Unix application OSL: Correctly handle control-c (EINTR)
        ACPICA: Improvements for debug output only
        ACPICA: Disassembler: allow conflicting external declarations to be emitted.
        ACPICA: Disassembler: add external op to namespace on first pass
        ACPICA: Disassembler: prevent external op's from opening a new scope
        ACPICA: Changed Gbl_disasm_flag to acpi_gbl_disasm_flag
        ACPICA: Changing External to a named object
        ACPICA: Update two error messages to emit control method name
        ...
      eceeae41
    • Linus Torvalds's avatar
      Merge tag 'pm-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 408c9861
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "The big ticket items here are the rework of suspend-to-idle in order
        to add proper support for power button wakeup from it on recent Dell
        laptops and the rework of interfaces exporting the current CPU
        frequency on x86.
      
        In addition to that, support for a few new pieces of hardware is
        added, the PCI/ACPI device wakeup infrastructure is simplified
        significantly and the wakeup IRQ framework is fixed to unbreak the IRQ
        bus locking infrastructure.
      
        Also, there are some functional improvements for intel_pstate, tools
        updates and small fixes and cleanups all over.
      
        Specifics:
      
         - Rework suspend-to-idle to allow it to take wakeup events signaled
           by the EC into account on ACPI-based platforms in order to properly
           support power button wakeup from suspend-to-idle on recent Dell
           laptops (Rafael Wysocki).
      
           That includes the core suspend-to-idle code rework, support for the
           Low Power S0 _DSM interface, and support for the ACPI INT0002
           Virtual GPIO device from Hans de Goede (required for USB keyboard
           wakeup from suspend-to-idle to work on some machines).
      
         - Stop trying to export the current CPU frequency via /proc/cpuinfo
           on x86 as that is inaccurate and confusing (Len Brown).
      
         - Rework the way in which the current CPU frequency is exported by
           the kernel (over the cpufreq sysfs interface) on x86 systems with
           the APERF and MPERF registers by always using values read from
           these registers, when available, to compute the current frequency
           regardless of which cpufreq driver is in use (Len Brown).
      
         - Rework the PCI/ACPI device wakeup infrastructure to remove the
           questionable and artificial distinction between "devices that can
           wake up the system from sleep states" and "devices that can
           generate wakeup signals in the working state" from it, which allows
           the code to be simplified quite a bit (Rafael Wysocki).
      
         - Fix the wakeup IRQ framework by making it use SRCU instead of RCU
           which doesn't allow sleeping in the read-side critical sections,
           but which in turn is expected to be allowed by the IRQ bus locking
           infrastructure (Thomas Gleixner).
      
         - Modify some computations in the intel_pstate driver to avoid
           rounding errors resulting from them (Srinivas Pandruvada).
      
         - Reduce the overhead of the intel_pstate driver in the HWP
           (hardware-managed P-states) mode and when the "performance" P-state
           selection algorithm is in use by making it avoid registering
           scheduler callbacks in those cases (Len Brown).
      
         - Rework the energy_performance_preference sysfs knob in intel_pstate
           by changing the values that correspond to different symbolic hint
           names used by it (Len Brown).
      
         - Make it possible to use more than one cpuidle driver at the same
           time on ARM (Daniel Lezcano).
      
         - Make it possible to prevent the cpuidle menu governor from using
           the 0 state by disabling it via sysfs (Nicholas Piggin).
      
         - Add support for FFH (Fixed Functional Hardware) MWAIT in ACPI C1 on
           AMD systems (Yazen Ghannam).
      
         - Make the CPPC cpufreq driver take the lowest nonlinear performance
           information into account (Prashanth Prakash).
      
         - Add support for hi3660 to the cpufreq-dt driver, fix the imx6q
           driver and clean up the sfi, exynos5440 and intel_pstate drivers
           (Colin Ian King, Krzysztof Kozlowski, Octavian Purdila, Rafael
           Wysocki, Tao Wang).
      
         - Fix a few minor issues in the generic power domains (genpd)
           framework and clean it up somewhat (Krzysztof Kozlowski, Mikko
           Perttunen, Viresh Kumar).
      
         - Fix a couple of minor issues in the operating performance points
           (OPP) framework and clean it up somewhat (Viresh Kumar).
      
         - Fix a CONFIG dependency in the hibernation core and clean it up
           slightly (Balbir Singh, Arvind Yadav, BaoJun Luo).
      
         - Add rk3228 support to the rockchip-io adaptive voltage scaling
           (AVS) driver (David Wu).
      
         - Fix an incorrect bit shift operation in the RAPL power capping
           driver (Adam Lessnau).
      
         - Add support for the EPP field in the HWP (hardware managed
           P-states) control register, HWP.EPP, to the x86_energy_perf_policy
           tool and update msr-index.h with HWP.EPP values (Len Brown).
      
         - Fix some minor issues in the turbostat tool (Len Brown).
      
         - Add support for AMD family 0x17 CPUs to the cpupower tool and fix a
           minor issue in it (Sherry Hurwitz).
      
         - Assorted cleanups, mostly related to the constification of some
           data structures (Arvind Yadav, Joe Perches, Kees Cook, Krzysztof
           Kozlowski)"
      
      * tag 'pm-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (69 commits)
        cpufreq: Update scaling_cur_freq documentation
        cpufreq: intel_pstate: Clean up after performance governor changes
        PM: hibernate: constify attribute_group structures.
        cpuidle: menu: allow state 0 to be disabled
        intel_idle: Use more common logging style
        PM / Domains: Fix missing default_power_down_ok comment
        PM / Domains: Fix unsafe iteration over modified list of domains
        PM / Domains: Fix unsafe iteration over modified list of domain providers
        PM / Domains: Fix unsafe iteration over modified list of device links
        PM / Domains: Handle safely genpd_syscore_switch() call on non-genpd device
        PM / Domains: Call driver's noirq callbacks
        PM / core: Drop run_wake flag from struct dev_pm_info
        PCI / PM: Simplify device wakeup settings code
        PCI / PM: Drop pme_interrupt flag from struct pci_dev
        ACPI / PM: Consolidate device wakeup settings code
        ACPI / PM: Drop run_wake from struct acpi_device_wakeup_flags
        PM / QoS: constify *_attribute_group.
        PM / AVS: rockchip-io: add io selectors and supplies for rk3228
        powercap/RAPL: prevent overridding bits outside of the mask
        PM / sysfs: Constify attribute groups
        ...
      408c9861
    • Linus Torvalds's avatar
      Merge tag 'spi-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · b39de277
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "There's only one big change in this release but it's a very big
        change: Geert Uytterhoeven has implemented support for SPI slave mode.
      
        This feature has been on the cards since the subsystem was originally
        merged back in the mists of time so it's great that Geert stepped up
        and finally implemented it.
      
         - SPI slave support, together with wholesale renaming of SPI
           controllers from master to controller which went surprisingly
           smoothly. This is already used with Renesas SoCs and support is in
           the works for i.MX too.
      
         - New drivers for Meson SPICC and ST STM32"
      
      * tag 'spi-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (57 commits)
        spi: loopback-test: Fix kfree() NULL pointer error.
        spi: loopback-test: fix spelling mistake: "reruning" -> "rerunning"
        spi: sirf: fix spelling mistake: "registerred" -> "registered"
        spi: stm32: fix potential dereference null return value
        spi: stm32: enhance DMA error management
        spi: stm32: add runtime PM support
        spi: stm32: use normal conditional statements instead of ternary operator
        spi: stm32: replace st, spi-midi with st, spi-midi-ns to fit bindings
        spi: stm32: fix example with st, spi-midi-ns property
        spi: stm32: fix compatible to fit with new bindings
        spi: stm32: use SoC specific compatible
        spi: rockchip: Disable Runtime PM when chip select is asserted
        spi: rockchip: Set GPIO_SS flag to enable Slave Select with GPIO CS
        spi: atmel: fix corrupted data issue on SAM9 family SoCs
        spi: stm32: fix error check on mbr being -ve
        spi: add driver for STM32 SPI controller
        spi: Document the STM32 SPI bindings
        spi/bcm63xx: Fix checkpatch warnings
        spi: imx: Check for allocation failure earlier
        spi: mediatek: add spi support for mt2712 IC
        ...
      b39de277
    • Linus Torvalds's avatar
      Merge tag 'regulator-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · d62eb5ed
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "A quiet release for the regulator API, a series of fairly small fixes
        plus one new feature and a few new drivers:
      
         - Support for regulators with different settling times for rising and
           falling voltage changes.
      
         - New drivers for Allwinner AXP803, HiSilicon HI6421V530 and TI
           LP87565"
      
      * tag 'regulator-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (21 commits)
        regulator: core: Fix size limit of supply_map
        regulator: core: Fix voltage change propagations to supply regulators
        regulator: lp87565: Fix the initial voltage range
        regulator: tps65910: wire up sleep control configuration
        regulator: hi6421v530: Describe consumed platform device
        regulator: tps65910: check TPS65910_NUM_REGS at build time
        regulator: core: Prioritise consumer mappings over regulator name
        regulator: lp87565: Fix the GPL header
        regulator: hi6421: Describe consumed platform device
        regulator: hi6421v530: add driver for hi6421v530 voltage regulator
        regulator: da9061: BUCK and LDO regulator driver
        regulator: bd9571mwv: Statize local symbols
        regulator: tps65917: Add support for SMPS12
        regulator: lp87565: Add support for lp87565 PMIC regulators
        regulator: axp20x-regulator: add support for AXP803
        regulator: lp8755: fix spelling mistake "acceess" -> "access"
        regulator: Allow for asymmetric settling times
        regulator: DT: Add properties for asymmetric settling times
        regulator: palmas: Drop unnecessary static
        MAINTAINERS: Update MAX77802 PMIC entry
        ...
      d62eb5ed
    • Linus Torvalds's avatar
      Merge tag 'regmap-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · 36b80422
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "The usual small smattering of activity for regmap this time round:
      
         - Addition of support for the 1-Wire bus standard.
      
         - Options that allow support for more interrupt controllers with
           regmap-irq.
      
         - Only build LZO cache support if it's actually being used"
      
      * tag 'regmap-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: irq: add chip option mask_writeonly
        regmap: irq: allow to register one cell interrupt controllers
        regmap: Fix typo in IS_ENABLED() check
        regmap: Add 1-Wire bus support
        regmap: make LZO cache optional
      36b80422
    • Linus Torvalds's avatar
      Merge tag 'hwmon-for-linus-v4.13-rc1' of... · 24d734a2
      Linus Torvalds authored
      Merge tag 'hwmon-for-linus-v4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging
      
      Pull hwmon updates from Guenter Roeck:
      
       - Add PMBus client driver for IR35221
      
       - Add support for NCT6795D to nct6775 driver
      
       - Functional improvements to adt7475, aspeed-pwm-tacho, and ibmpowernv
         drivers
      
       - Minor fixes and cleanups in various drivers
      
      * tag 'hwmon-for-linus-v4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (22 commits)
        hwmon: (aspeed-pwm-tacho) Poll with short sleeps.
        hwmon: (aspeed-pwm-tacho) reduce fan_tach period
        hwmon: (ibmpowernv) Add current(A) sensor
        hwmon: (ibmpowernv) introduce a legacy_compatibles array
        hwmon: (pwm-fan) Switch to new atomic PWM API
        hwmon: (scpi) Fix the scale of SCP sensor readings
        hwmon: (aspeed-pwm-tacho) Enable both edge measurement.
        hwmon: (ibmpowernv) Add highest/lowest attributes to sensors
        hwmon: (pmbus) move header file out of I2C realm
        hwmon: (max6639) move header file out of I2C realm
        hwmon: (ltc4245) move header file out of I2C realm
        hwmon: (ds620) move header file out of I2C realm
        hwmon: (ads1015) move header file out of I2C realm
        hwmon: (adt7475) temperature smoothing
        hwmon: (adt7475) add high frequency support
        hwmon: (adt7475) fan stall prevention
        hwmon: (adt7475) replace find_nearest() with find_closest()
        hwmon: (pmbus) Add client driver for IR35221
        hwmon: (nct6775) Add support for NCT6795D
        hwmon: (nct6775) Improve fan detection
        ...
      24d734a2
    • Linus Torvalds's avatar
      Merge tag 'mmc-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc · 17ece345
      Linus Torvalds authored
      Pull MMC updates from Ulf Hansson:
       "MMC core:
         - Add support to enable irq wake for slot gpio
         - Remove MMC_CAP2_HC_ERASE_SZ and make it the default behaviour
         - Improve R1 response error checks for stop commands
         - Cleanup and clarify some MMC specific code
         - Keep card runtime resumed while adding SDIO function devices
         - Use device_property_read instead of of_property_read in mmc_of_parse()
         - Move boot partition locking into a driver op to enable proper I/O scheduling
         - Move multi/single-ioctl() to use block layer to enable proper I/O scheduling
         - Delete bounce buffer Kconfig option
         - Improve the eMMC HW reset support provided via the eMMC pwrseq
         - Add host API to manage SDIO IRQs from a workqueue
      
        MMC host:
         - dw_mmc: Drop support for multiple slots
         - dw_mmc: Use device_property_read instead of of_property_read
         - dw_mmc-rockchip: Optional improved tuning to greatly decrease tuning time
         - dw_mmc: Prevent rpm suspend for SDIO IRQs instead of always for SDIO cards
         - dw_mmc: Convert to use MMC_CAP2_SDIO_IRQ_NOTHREAD for SDIO IRQs
         - omap_hsmmc: Convert to mmc regulator APIs to consolidate code
         - omap_hsmmc: Deprecate "vmmc_aux" in DT and use "vqmmc" instead
         - tmio: make sure SDIO gets reinitialized after resume
         - sdhi: add CMD23 support to R-Car Gen2 & Gen3
         - tmio: add CMD23 support
         - sdhi/tmio: Refactor code and rename files to simplify Kconfig options
         - sdhci-pci: Enable card detect wake for Intel BYT-related SD controllers
         - sdhci-pci: Add support for Intel CNP
         - sdhci-esdhc-imx: Remove ENGcm07207 workaround - allow multi block transfers
         - sdhci-esdhc-imx: Allow all supported prescaler values
         - sdhci-esdhc-imx: Fix DAT line software reset
         - sdhci-esdhc: Add SDHCI_QUIRK_32BIT_DMA_ADDR
         - atmel-mci: Drop AVR32 support"
      
      * tag 'mmc-v4.13' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: (86 commits)
        mmc: dw_mmc: remove the unnecessary slot variable
        mmc: dw_mmc: use the 'slot' instead of 'cur_slot'
        mmc: dw_mmc: remove the 'id' arguments about functions relevant to slot
        mmc: dw_mmc: change the array of slots
        mmc: dw_mmc: remove the loop about finding slots
        mmc: dw_mmc: deprecated the "num-slots" property
        mmc: dw_mmc-rockchip: parse rockchip, desired-num-phases from DT
        dt-bindings: rockchip-dw-mshc: add optional rockchip, desired-num-phases
        mmc: renesas-sdhi: improve checkpatch cleanness
        mmc: tmio: improve checkpatch cleanness
        mmc: sdhci-pci: Enable card detect wake for Intel BYT-related SD controllers
        mmc: slot-gpio: Add support to enable irq wake on cd_irq
        mmc: core: Remove MMC_CAP2_HC_ERASE_SZ
        mmc: core: for data errors, take response of stop cmd into account
        mmc: core: check also R1 response for stop commands
        mmc: core: Clarify code for sending CSD
        mmc: core: Drop mmc_all_send_cid() and use mmc_send_cxd_native() instead
        mmc: core: Re-factor code for sending CID
        mmc: core: Remove redundant code in mmc_send_cid()
        mmc: core: Make mmc_can_reset() static
        ...
      17ece345
    • Linus Torvalds's avatar
      Merge tag 'docs-4.13' of git://git.lwn.net/linux · 650fc870
      Linus Torvalds authored
      Pull documentation updates from Jonathan Corbet:
       "There has been a fair amount of activity in the docs tree this time
        around. Highlights include:
      
         - Conversion of a bunch of security documentation into RST
      
         - The conversion of the remaining DocBook templates by The Amazing
           Mauro Machine. We can now drop the entire DocBook build chain.
      
         - The usual collection of fixes and minor updates"
      
      * tag 'docs-4.13' of git://git.lwn.net/linux: (90 commits)
        scripts/kernel-doc: handle DECLARE_HASHTABLE
        Documentation: atomic_ops.txt is core-api/atomic_ops.rst
        Docs: clean up some DocBook loose ends
        Make the main documentation title less Geocities
        Docs: Use kernel-figure in vidioc-g-selection.rst
        Docs: fix table problems in ras.rst
        Docs: Fix breakage with Sphinx 1.5 and upper
        Docs: Include the Latex "ifthen" package
        doc/kokr/howto: Only send regression fixes after -rc1
        docs-rst: fix broken links to dynamic-debug-howto in kernel-parameters
        doc: Document suitability of IBM Verse for kernel development
        Doc: fix a markup error in coding-style.rst
        docs: driver-api: i2c: remove some outdated information
        Documentation: DMA API: fix a typo in a function name
        Docs: Insert missing space to separate link from text
        doc/ko_KR/memory-barriers: Update control-dependencies example
        Documentation, kbuild: fix typo "minimun" -> "minimum"
        docs: Fix some formatting issues in request-key.rst
        doc: ReSTify keys-trusted-encrypted.txt
        doc: ReSTify keys-request-key.txt
        ...
      650fc870
    • Linus Torvalds's avatar
      Merge tag 'char-misc-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc · f4dd029e
      Linus Torvalds authored
      Pull char/misc updates from Greg KH:
       "Here is the "big" char/misc driver patchset for 4.13-rc1.
      
        Lots of stuff in here, a large thunderbolt update, w1 driver header
        reorg, the new mux driver subsystem, google firmware driver updates,
        and a raft of other smaller things. Full details in the shortlog.
      
        All of these have been in linux-next for a while with the only
        reported issue being a merge problem with this tree and the jc-docs
        tree in the w1 documentation area"
      
      * tag 'char-misc-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/char-misc: (147 commits)
        misc: apds990x: Use sysfs_match_string() helper
        mei: drop unreachable code in mei_start
        mei: validate the message header only in first fragment.
        DocBook: w1: Update W1 file locations and names in DocBook
        mux: adg792a: always require I2C support
        nvmem: rockchip-efuse: add support for rk322x-efuse
        nvmem: core: add locking to nvmem_find_cell
        nvmem: core: Call put_device() in nvmem_unregister()
        nvmem: core: fix leaks on registration errors
        nvmem: correct Broadcom OTP controller driver writes
        w1: Add subsystem kernel public interface
        drivers/fsi: Add module license to core driver
        drivers/fsi: Use asynchronous slave mode
        drivers/fsi: Add hub master support
        drivers/fsi: Add SCOM FSI client device driver
        drivers/fsi/gpio: Add tracepoints for GPIO master
        drivers/fsi: Add GPIO based FSI master
        drivers/fsi: Document FSI master sysfs files in ABI
        drivers/fsi: Add error handling for slave
        drivers/fsi: Add tracepoints for low-level operations
        ...
      f4dd029e
    • Linus Torvalds's avatar
      Merge tag 'driver-core-4.13-rc1' of... · 97466841
      Linus Torvalds authored
      Merge tag 'driver-core-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core
      
      Pull driver core updates from Greg KH:
       "Here is the big driver core update for 4.13-rc1.
      
        The large majority of this is a lot of cleanup of old fields in the
        driver core structures and their remaining usages in random drivers.
        All of those fixes have been reviewed by the various subsystem
        maintainers. There's also some small firmware updates in here, a new
        kobject uevent api interface that makes userspace interaction easier,
        and a few other minor things.
      
        All of these have been in linux-next for a long while with no reported
        issues"
      
      * tag 'driver-core-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (56 commits)
        arm: mach-rpc: ecard: fix build error
        zram: convert remaining CLASS_ATTR() to CLASS_ATTR_RO()
        driver-core: remove struct bus_type.dev_attrs
        powerpc: vio_cmo: use dev_groups and not dev_attrs for bus_type
        powerpc: vio: use dev_groups and not dev_attrs for bus_type
        USB: usbip: convert to use DRIVER_ATTR_RW
        s390: drivers: convert to use DRIVER_ATTR_RO/WO
        platform: thinkpad_acpi: convert to use DRIVER_ATTR_RO/RW
        pcmcia: ds: convert to use DRIVER_ATTR_RO
        wireless: ipw2x00: convert to use DRIVER_ATTR_RW
        net: ehea: convert to use DRIVER_ATTR_RO
        net: caif: convert to use DRIVER_ATTR_RO
        TTY: hvc: convert to use DRIVER_ATTR_RW
        PCI: pci-driver: convert to use DRIVER_ATTR_WO
        IB: nes: convert to use DRIVER_ATTR_RW
        HID: hid-core: convert to use DRIVER_ATTR_RO and drv_groups
        arm: ecard: fix dev_groups patch typo
        tty: serdev: use dev_groups and not dev_attrs for bus_type
        sparc: vio: use dev_groups and not dev_attrs for bus_type
        hid: intel-ish-hid: use dev_groups and not dev_attrs for bus_type
        ...
      97466841
    • Linus Torvalds's avatar
      Merge tag 'tty-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty · 9a715cd5
      Linus Torvalds authored
      Pull tty/serial updates from Greg KH:
       "Here is the large tty/serial patchset for 4.13-rc1.
      
        A lot of tty and serial driver updates are in here, along with some
        fixups for some __get/put_user usages that were reported. Nothing
        huge, just lots of development by a number of different developers,
        full details in the shortlog.
      
        All of these have been in linux-next for a while"
      
      * tag 'tty-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty: (71 commits)
        tty: serial: lpuart: add a more accurate baud rate calculation method
        tty: serial: lpuart: add earlycon support for imx7ulp
        tty: serial: lpuart: add imx7ulp support
        dt-bindings: serial: fsl-lpuart: add i.MX7ULP support
        tty: serial: lpuart: add little endian 32 bit register support
        tty: serial: lpuart: refactor lpuart32_{read|write} prototype
        tty: serial: lpuart: introduce lpuart_soc_data to represent SoC property
        serial: imx-serial - move DMA buffer configuration to DT
        serial: imx: Enable RTSD only when needed
        serial: imx: Remove unused members from imx_port struct
        serial: 8250: 8250_omap: Fix race b/w dma completion and RX timeout
        serial: 8250: Fix THRE flag usage for CAP_MINI
        tty/serial: meson_uart: update to stable bindings
        dt-bindings: serial: Add bindings for the Amlogic Meson UARTs
        serial: Delete dead code for CIR serial ports
        serial: sirf: make of_device_ids const
        serial/mpsc: switch to dma_alloc_attrs
        tty: serial: Add Actions Semi Owl UART earlycon
        dt-bindings: serial: Document Actions Semi Owl UARTs
        tty/serial: atmel: make the driver DT only
        ...
      9a715cd5
    • Linus Torvalds's avatar
      Merge tag 'staging-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · cbcd4f08
      Linus Torvalds authored
      Pull staging/IIO updates from Greg KH:
       "Here's the large set of staging and iio driver patches for 4.13-rc1.
      
        After over 500 patches, we removed about 200 more lines of code than
        we added, not great, but we added some new IIO drivers for unsupported
        hardware, so it's an overall win.
      
        Also here are lots of small fixes, and some tty core api additions
        (with the tty maintainer's ack) for the speakup drivers, those are
        finally getting some much needed cleanups and are looking much better
        now than before. Full details in the shortlog.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'staging-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (529 commits)
        staging: lustre: replace kmalloc with kmalloc_array
        Staging: ion: fix code style warning from NULL comparisons
        staging: fsl-mc: make dprc.h header private
        staging: fsl-mc: move mc-cmd.h contents in the public header
        staging: fsl-mc: move mc-sys.h contents in the public header
        staging: fsl-mc: fix a few implicit includes
        staging: fsl-mc: remove dpmng API files
        staging: fsl-mc: move rest of mc-bus.h to private header
        staging: fsl-mc: move couple of definitions to public header
        staging: fsl-mc: move irq domain creation prototype to public header
        staging: fsl-mc: turn several exported functions static
        staging: fsl-mc: delete prototype of unimplemented function
        staging: fsl-mc: delete duplicated function prototypes
        staging: fsl-mc: decouple the mc-bus public headers from dprc.h
        staging: fsl-mc: drop useless #includes
        staging: fsl-mc: be consistent when checking strcmp() return
        staging: fsl-mc: move comparison before strcmp() call
        staging: speakup: make function ser_to_dev static
        staging: ks7010: fix spelling mistake: "errror" -> "error"
        staging: rtl8192e: fix spelling mistake: "respose" -> "response"
        ...
      cbcd4f08
    • Linus Torvalds's avatar
      Merge tag 'usb-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 362f6729
      Linus Torvalds authored
      Pull USB/PHY updates from Greg KH:
       "Here is the big patchset of USB and PHY driver updates for 4.13-rc1.
      
        On the PHY side, they decided to move files around to "make things
        easier" in their tree. Hopefully that wasn't a mistake, but in
        linux-next testing, we haven't had any reported problems.
      
        There's the usual set of gadget and xhci and musb updates in here as
        well, along with a number of smaller updates for a raft of different
        USB drivers. Full details in the shortlog, nothing really major.
      
        All of these have been in linux-next for a while with no reported
        issues"
      
      * tag 'usb-4.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (173 commits)
        Add USB quirk for HVR-950q to avoid intermittent device resets
        USB hub_probe: rework ugly goto-into-compound-statement
        usb: host: ohci-pxa27x: Handle return value of clk_prepare_enable
        USB: serial: cp210x: add ID for CEL EM3588 USB ZigBee stick
        usbip: Fix uninitialized variable bug in vhci
        usb: core: read USB ports from DT in the usbport LED trigger driver
        dt-bindings: leds: document new trigger-sources property
        usb: typec: ucsi: Add ACPI driver
        usb: typec: Add support for UCSI interface
        usb: musb: compress return logic into one line
        USB: serial: propagate late probe errors
        USB: serial: refactor port endpoint setup
        usb: musb: tusb6010_omap: Convert to DMAengine API
        ARM: OMAP2+: DMA: Add slave map entries for 24xx external request lines
        usb: musb: tusb6010: Handle DMA TX completion in DMA callback as well
        usb: musb: tusb6010_omap: Allocate DMA channels upfront
        usb: musb: tusb6010_omap: Create new struct for DMA data/parameters
        usb: musb: tusb6010_omap: Use one musb_ep_select call in tusb_omap_dma_program
        usb: musb: tusb6010: Add MUSB_G_NO_SKB_RESERVE to quirks
        usb: musb: Add quirk to avoid skb reserve in gadget mode
        ...
      362f6729
    • Linus Torvalds's avatar
      Merge branch 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4422d80e
      Linus Torvalds authored
      Pull RAS updates from Thomas Gleixner:
       "The RAS updates for the 4.13 merge window:
      
         - Cleanup of the MCE injection facility (Borsilav Petkov)
      
         - Rework of the AMD/SMCA handling (Yazen Ghannam)
      
         - Enhancements for ACPI/APEI to handle new notitication types (Shiju
           Jose)
      
         - atomic_t to refcount_t conversion (Elena Reshetova)
      
         - A few fixes and enhancements all over the place"
      
      * 'ras-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        RAS/CEC: Check the correct variable in the debugfs error handling
        x86/mce: Always save severity in machine_check_poll()
        x86/MCE, xen/mcelog: Make /dev/mcelog registration messages more precise
        x86/mce: Update bootlog description to reflect behavior on AMD
        x86/mce: Don't disable MCA banks when offlining a CPU on AMD
        x86/mce/mce-inject: Preset the MCE injection struct
        x86/mce: Clean up include files
        x86/mce: Get rid of register_mce_write_callback()
        x86/mce: Merge mce_amd_inj into mce-inject
        x86/mce/AMD: Use saved threshold block info in interrupt handler
        x86/mce/AMD: Use msr_stat when clearing MCA_STATUS
        x86/mce/AMD: Carve out SMCA bank configuration
        x86/mce/AMD: Redo error logging from APIC LVT interrupt handlers
        x86/mce: Convert threshold_bank.cpus from atomic_t to refcount_t
        RAS: Make local function parse_ras_param() static
        ACPI/APEI: Handle GSIV and GPIO notification types
      4422d80e
    • Linus Torvalds's avatar
      Merge branch 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9a9594ef
      Linus Torvalds authored
      Pull SMP hotplug updates from Thomas Gleixner:
       "This update is primarily a cleanup of the CPU hotplug locking code.
      
        The hotplug locking mechanism is an open coded RWSEM, which allows
        recursive locking. The main problem with that is the recursive nature
        as it evades the full lockdep coverage and hides potential deadlocks.
      
        The rework replaces the open coded RWSEM with a percpu RWSEM and
        establishes full lockdep coverage that way.
      
        The bulk of the changes fix up recursive locking issues and address
        the now fully reported potential deadlocks all over the place. Some of
        these deadlocks have been observed in the RT tree, but on mainline the
        probability was low enough to hide them away."
      
      * 'smp-hotplug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (37 commits)
        cpu/hotplug: Constify attribute_group structures
        powerpc: Only obtain cpu_hotplug_lock if called by rtasd
        ARM/hw_breakpoint: Fix possible recursive locking for arch_hw_breakpoint_init
        cpu/hotplug: Remove unused check_for_tasks() function
        perf/core: Don't release cred_guard_mutex if not taken
        cpuhotplug: Link lock stacks for hotplug callbacks
        acpi/processor: Prevent cpu hotplug deadlock
        sched: Provide is_percpu_thread() helper
        cpu/hotplug: Convert hotplug locking to percpu rwsem
        s390: Prevent hotplug rwsem recursion
        arm: Prevent hotplug rwsem recursion
        arm64: Prevent cpu hotplug rwsem recursion
        kprobes: Cure hotplug lock ordering issues
        jump_label: Reorder hotplug lock and jump_label_lock
        perf/tracing/cpuhotplug: Fix locking order
        ACPI/processor: Use cpu_hotplug_disable() instead of get_online_cpus()
        PCI: Replace the racy recursion prevention
        PCI: Use cpu_hotplug_disable() instead of get_online_cpus()
        perf/x86/intel: Drop get_online_cpus() in intel_snb_check_microcode()
        x86/perf: Drop EXPORT of perf_check_microcode
        ...
      9a9594ef
    • Linus Torvalds's avatar
      Merge branch 'x86-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3ad918e6
      Linus Torvalds authored
      Pull x86 timers updates from Thomas Gleixner:
       "This update contains:
      
         - The solution for the TSC deadline timer borkage, which is caused by
           a hardware problem in the TSC_ADJUST/TSC_DEADLINE_TIMER logic.
      
           The problem is documented now and fixed with a microcode update, so
           we can remove the workaround and just check for the microcode version.
      
           If the microcode is not up to date, then the TSC deadline timer is
           disabled. If the borkage is fixed by the proper microcode version,
           then the deadline timer can be used. In both cases the restrictions
           to the range of the TSC_ADJUST value, which were added as
           workarounds, are removed.
      
        - A few simple fixes and updates to the timer related x86 code"
      
      * 'x86-timers-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/tsc: Call check_system_tsc_reliable() before unsynchronized_tsc()
        x86/hpet: Do not use smp_processor_id() in preemptible code
        x86/time: Make setup_default_timer_irq() static
        x86/tsc: Remove the TSC_ADJUST clamp
        x86/apic: Add TSC_DEADLINE quirk due to errata
        x86/apic: Change the lapic name in deadline mode
      3ad918e6
    • Linus Torvalds's avatar
      Merge branch 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8c073517
      Linus Torvalds authored
      Pull x86 PCI updates from Thomas Gleixner:
       "This update provides the seperation of x86 PCI accessors from the
        global PCI lock in the generic PCI config space accessors.
      
        The reasons for this are:
      
         - x86 has it's own PCI config lock for various reasons, so the
           accessors have to lock two locks nested.
      
         - The ECAM (mmconfig) access to the extended configuration space does
           not require locking. The existing generic locking causes a massive
           lock contention when accessing the extended config space of the
           Uncore facility for performance monitoring.
      
        The commit which switched the access to the primary config space over
        to ECAM mode has been removed from the branch, so the primary config
        space is still accessed with type1 accessors properly serialized by
        the x86 internal locking.
      
        Bjorn agreed on merging this through the x86 tree"
      
      * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/PCI: Select CONFIG_PCI_LOCKLESS_CONFIG
        PCI: Provide Kconfig option for lockless config space accessors
        x86/PCI/ce4100: Properly lock accessor functions
        x86/PCI: Abort if legacy init fails
        x86/PCI: Remove duplicate defines
      8c073517
  4. 03 Jul, 2017 10 commits
    • Linus Torvalds's avatar
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 03ffbcdd
      Linus Torvalds authored
      Pull irq updates from Thomas Gleixner:
       "The irq department delivers:
      
         - Expand the generic infrastructure handling the irq migration on CPU
           hotplug and convert X86 over to it. (Thomas Gleixner)
      
           Aside of consolidating code this is a preparatory change for:
      
         - Finalizing the affinity management for multi-queue devices. The
           main change here is to shut down interrupts which are affine to a
           outgoing CPU and reenabling them when the CPU comes online again.
           That avoids moving interrupts pointlessly around and breaking and
           reestablishing affinities for no value. (Christoph Hellwig)
      
           Note: This contains also the BLOCK-MQ and NVME changes which depend
           on the rework of the irq core infrastructure. Jens acked them and
           agreed that they should go with the irq changes.
      
         - Consolidation of irq domain code (Marc Zyngier)
      
         - State tracking consolidation in the core code (Jeffy Chen)
      
         - Add debug infrastructure for hierarchical irq domains (Thomas
           Gleixner)
      
         - Infrastructure enhancement for managing generic interrupt chips via
           devmem (Bartosz Golaszewski)
      
         - Constification work all over the place (Tobias Klauser)
      
         - Two new interrupt controller drivers for MVEBU (Thomas Petazzoni)
      
         - The usual set of fixes, updates and enhancements all over the
           place"
      
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (112 commits)
        irqchip/or1k-pic: Fix interrupt acknowledgement
        irqchip/irq-mvebu-gicp: Allocate enough memory for spi_bitmap
        irqchip/gic-v3: Fix out-of-bound access in gic_set_affinity
        nvme: Allocate queues for all possible CPUs
        blk-mq: Create hctx for each present CPU
        blk-mq: Include all present CPUs in the default queue mapping
        genirq: Avoid unnecessary low level irq function calls
        genirq: Set irq masked state when initializing irq_desc
        genirq/timings: Add infrastructure for estimating the next interrupt arrival time
        genirq/timings: Add infrastructure to track the interrupt timings
        genirq/debugfs: Remove pointless NULL pointer check
        irqchip/gic-v3-its: Don't assume GICv3 hardware supports 16bit INTID
        irqchip/gic-v3-its: Add ACPI NUMA node mapping
        irqchip/gic-v3-its-platform-msi: Make of_device_ids const
        irqchip/gic-v3-its: Make of_device_ids const
        irqchip/irq-mvebu-icu: Add new driver for Marvell ICU
        irqchip/irq-mvebu-gicp: Add new driver for Marvell GICP
        dt-bindings/interrupt-controller: Add DT binding for the Marvell ICU
        genirq/irqdomain: Remove auto-recursive hierarchy support
        irqchip/MSI: Use irq_domain_update_bus_token instead of an open coded access
        ...
      03ffbcdd
    • Linus Torvalds's avatar
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1b044f1c
      Linus Torvalds authored
      Pull timer updates from Thomas Gleixner:
       "A rather large update for timers/timekeeping:
      
         - compat syscall consolidation (Al Viro)
      
         - Posix timer consolidation (Christoph Helwig / Thomas Gleixner)
      
         - Cleanup of the device tree based initialization for clockevents and
           clocksources (Daniel Lezcano)
      
         - Consolidation of the FTTMR010 clocksource/event driver (Linus
           Walleij)
      
         - The usual set of small fixes and updates all over the place"
      
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (93 commits)
        timers: Make the cpu base lock raw
        clocksource/drivers/mips-gic-timer: Fix an error code in 'gic_clocksource_of_init()'
        clocksource/drivers/fsl_ftm_timer: Unmap region obtained by of_iomap
        clocksource/drivers/tcb_clksrc: Make IO endian agnostic
        clocksource/drivers/sun4i: Switch to the timer-of common init
        clocksource/drivers/timer-of: Fix invalid iomap check
        Revert "ktime: Simplify ktime_compare implementation"
        clocksource/drivers: Fix uninitialized variable use in timer_of_init
        kselftests: timers: Add test for frequency step
        kselftests: timers: Fix inconsistency-check to not ignore first timestamp
        time: Add warning about imminent deprecation of CONFIG_GENERIC_TIME_VSYSCALL_OLD
        time: Clean up CLOCK_MONOTONIC_RAW time handling
        posix-cpu-timers: Make timespec to nsec conversion safe
        itimer: Make timeval to nsec conversion range limited
        timers: Fix parameter description of try_to_del_timer_sync()
        ktime: Simplify ktime_compare implementation
        clocksource/drivers/fttmr010: Factor out clock read code
        clocksource/drivers/fttmr010: Implement delay timer
        clocksource/drivers: Add timer-of common init routine
        clocksource/drivers/tcb_clksrc: Save timer context on suspend/resume
        ...
      1b044f1c
    • Linus Torvalds's avatar
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · e0f3e8f1
      Linus Torvalds authored
      Pull s390 updates from Martin Schwidefsky:
       "The bulk of the s390 patches for 4.13. Some new things but mostly bug
        fixes and cleanups. Noteworthy changes:
      
         - The SCM block driver is converted to blk-mq
      
         - Switch s390 to 5 level page tables. The virtual address space for a
           user space process can now have up to 16EB-4KB.
      
         - Introduce a ELF phdr flag for qemu to avoid the global
           vm.alloc_pgste which forces all processes to large page tables
      
         - A couple of PCI improvements to improve error recovery
      
         - Included is the merge of the base support for proper machine checks
           for KVM"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (52 commits)
        s390/dasd: Fix faulty ENODEV for RO sysfs attribute
        s390/pci: recognize name clashes with uids
        s390/pci: provide more debug information
        s390/pci: fix handling of PEC 306
        s390/pci: improve pci hotplug
        s390/pci: introduce clp_get_state
        s390/pci: improve error handling during fmb (de)registration
        s390/pci: improve unreg_ioat error handling
        s390/pci: improve error handling during interrupt deregistration
        s390/pci: don't cleanup in arch_setup_msi_irqs
        KVM: s390: Backup the guest's machine check info
        s390/nmi: s390: New low level handling for machine check happening in guest
        s390/fpu: export save_fpu_regs for all configs
        s390/kvm: avoid global config of vm.alloc_pgste=1
        s390: rename struct psw_bits members
        s390: rename psw_bits enums
        s390/mm: use correct address space when enabling DAT
        s390/cio: introduce io_subchannel_type
        s390/ipl: revert Load Normal semantics for LPAR CCW-type re-IPL
        s390/dumpstack: remove raw stack dump
        ...
      e0f3e8f1
    • Linus Torvalds's avatar
      Merge branch 'parisc-4.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux · e5859eb8
      Linus Torvalds authored
      Pull parisc updates from Helge Deller:
       "Main changes are:
      
         - Added support to the parisc dma functions to return DMA_ERROR_CODE
           if DMA isn't possible. This fixes a long standing kernel crash if
           parport_pc is enabled (by Thomas Bogendoerfer, marked for stable
           series).
      
         - Use the compat_sys_keyctl() in compat mode (by Eric Biggers, marked
           for stable series).
      
         - Initial support for the Page Deallocation Table (PDT) which is
           maintained by firmware and holds the list of memory addresses which
           had physical errors. By checking that list we can prevent Linux to
           use those broken memory areas.
      
         - Ensure IRQs are off in switch_mm().
      
         - Report SIGSEGV instead of SIGBUS when running out of stack.
      
         - Mark the cr16 clocksource stable on single-socket and single-core
           machines"
      
      * 'parisc-4.13-1' of git://git.kernel.org/pub/scm/linux/kernel/git/deller/parisc-linux:
        parisc: DMA API: return error instead of BUG_ON for dma ops on non dma devs
        parisc: Report SIGSEGV instead of SIGBUS when running out of stack
        parisc: use compat_sys_keyctl()
        parisc: Don't hardcode PSW values in hpmc code
        parisc: Don't hardcode PSW values in gsc_*() functions
        parisc: Avoid zeroing gr[0] in fixup_exception()
        parisc/mm: Ensure IRQs are off in switch_mm()
        parisc: Add Page Deallocation Table (PDT) support
        parisc: Enhance detection of synchronous cr16 clocksources
        parisc: Drop per_cpu uaccess related exception_data struct
        parisc: Inline trivial exception code in lusercopy.S
      e5859eb8
    • Linus Torvalds's avatar
      Merge tag 'microblaze-4.13-rc1' of git://git.monstr.eu/linux-2.6-microblaze · 058e88d3
      Linus Torvalds authored
      Pull microblaze updates from Michal Simek:
      
       - timer fix
      
       - use simplified macro in dma.c
      
       - wire-up new syscall
      
       - remove asp-generic wrappers
      
       - fix MMU table handling
      
       - defconfig updates
      
       - low-level entry.S changes
      
      * tag 'microblaze-4.13-rc1' of git://git.monstr.eu/linux-2.6-microblaze:
        microblaze: Fix MSR flags when returning from exception
        microblaze: Separate GP registers from MSR handling
        microblaze: Enabling CONFIG_BRIDGE in mmu_defconfig
        microblaze: Enabling CONFIGS related to MTD
        microblaze: Update defconfigs
        microblaze: mm: Flush TLB to ensure correct mapping when higmem ON
        microblaze: remove asm-generic wrapper headers
        microblaze: wire up statx syscall
        microblaze: Set ->min_delta_ticks and ->max_delta_ticks for timer
        microblaze: use sg_phys()
      058e88d3
    • Linus Torvalds's avatar
      Merge tag 'm68k-for-v4.13-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · 241e5e6f
      Linus Torvalds authored
      Pull m68k updates from Geert Uytterhoeven:
      
        - NuBus improvements and cleanups
      
        - defconfig updates
      
        - Fix debugger syscall restart interactions, leading to the global
          removal of ptrace_signal_deliver()
      
      * tag 'm68k-for-v4.13-tag1' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k: Remove ptrace_signal_deliver
        m68k/defconfig: Update defconfigs for v4.12-rc1
        nubus: Fix pointer validation
        nubus: Remove slot zero probe
      241e5e6f
    • Linus Torvalds's avatar
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7a69f9c6
      Linus Torvalds authored
      Pull x86 mm updates from Ingo Molnar:
       "The main changes in this cycle were:
      
         - Continued work to add support for 5-level paging provided by future
           Intel CPUs. In particular we switch the x86 GUP code to the generic
           implementation. (Kirill A. Shutemov)
      
         - Continued work to add PCID CPU support to native kernels as well.
           In this round most of the focus is on reworking/refreshing the TLB
           flush infrastructure for the upcoming PCID changes. (Andy
           Lutomirski)"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (34 commits)
        x86/mm: Delete a big outdated comment about TLB flushing
        x86/mm: Don't reenter flush_tlb_func_common()
        x86/KASLR: Fix detection 32/64 bit bootloaders for 5-level paging
        x86/ftrace: Exclude functions in head64.c from function-tracing
        x86/mmap, ASLR: Do not treat unlimited-stack tasks as legacy mmap
        x86/mm: Remove reset_lazy_tlbstate()
        x86/ldt: Simplify the LDT switching logic
        x86/boot/64: Put __startup_64() into .head.text
        x86/mm: Add support for 5-level paging for KASLR
        x86/mm: Make kernel_physical_mapping_init() support 5-level paging
        x86/mm: Add sync_global_pgds() for configuration with 5-level paging
        x86/boot/64: Add support of additional page table level during early boot
        x86/boot/64: Rename init_level4_pgt and early_level4_pgt
        x86/boot/64: Rewrite startup_64() in C
        x86/boot/compressed: Enable 5-level paging during decompression stage
        x86/boot/efi: Define __KERNEL32_CS GDT on 64-bit configurations
        x86/boot/efi: Fix __KERNEL_CS definition of GDT entry on 64-bit configurations
        x86/boot/efi: Cleanup initialization of GDT entries
        x86/asm: Fix comment in return_from_SYSCALL_64()
        x86/mm/gup: Switch GUP to the generic get_user_page_fast() implementation
        ...
      7a69f9c6
    • Linus Torvalds's avatar
      Merge branch 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 9bc088ab
      Linus Torvalds authored
      Pull x86 microcode updates from Ingo Molnar:
       "The main changes are a fix early microcode application for
        resume-from-RAM, plus a 32-bit initrd placement fix - by Borislav
        Petkov"
      
      * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/microcode: Make a couple of symbols static
        x86/microcode/intel: Save pointer to ucode patch for early AP loading
        x86/microcode: Look for the initrd at the correct address on 32-bit
      9bc088ab
    • Linus Torvalds's avatar
      Merge branch 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e1449007
      Linus Torvalds authored
      Pull x86 hyperv updates from Ingo Molnar:
       "Avoid boot time TSC calibration on Hyper-V hosts, to improve
        calibration robustness. (Vitaly Kuznetsov)"
      
      * 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/hyperv: Read TSC frequency from a synthetic MSR
        x86/hyperv: Check frequency MSRs presence according to the specification
      e1449007
    • Linus Torvalds's avatar
      Merge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e6529f6f
      Linus Torvalds authored
      Pull x86 debug update from Ingo Molnar:
       "A single fix for an off-by one bug in test_nmi_ipi() that probably
        doesn't matter in practice"
      
      * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/nmi: Fix timeout test in test_nmi_ipi()
      e6529f6f