1. 02 4月, 2014 19 次提交
    • L
      Merge tag 'sound-3.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound · c7092914
      Linus Torvalds 提交于
      Pull sound updates from Takashi Iwai:
       "There have been lots of changes in ALSA core, HD-audio and ASoC, also
        most of PCI drivers touched by conversions of printks.  All these
        resulted in a high volume and wide ranged patch sets in this release.
        Many changes are fairly trivial, but also lots of nice cleanups and
        refactors.  There are a few new drivers, most notably, the Intel
        Haswell and Baytrail ASoC driver.
      
        Core changes:
         - A bit modernization; embed the device struct into snd_card struct,
           so that it may be referred from the beginning.  A new
           snd_card_new() function is introduced for that, and all drivers
           have been converted.
      
         - Simplification in the device management code in ALSA core; now
           managed by a simple priority list instead
      
         - Converted many kernel messages to use the standard dev_err() & co;
           this would be the pretty visible difference, especially for
           HD-audio.
      
        HD-audio:
         - Conexant codecs use the auto-parser as default now; the old static
           code still remains in case of regressions.  Some old quirks have
           been rewritten with the fixups for auto-parser.
      
         - C-Media codecs also use the auto-parser as default now, too.
      
         - A device struct is assigned to each HD-audio codec, and the
           formerly hwdep attributes are accessible over the codec sysfs, too.
           hwdep attributes still remain for compatibility.
      
         - Split the PCI-specific stuff for HD-audio controller into a
           separate module, ane make a helper module for the generic
           controller driver.  This is a preliminary change for supporting
           Tegra HDMI controller in near future, which slipped from 3.15
           merge.
      
         - Device-specific fixes: mute LED support for Lenovo Ideapad, mic LED
           fix for HP laptops, more ASUS subwoofer quirks, yet more Dell
           laptop headset quirks
      
         - Make the HD-audio codec response a bit more robust
      
         - A few improvements on Realtek ALC282 / 283 about the pop noises
      
         - A couple of Intel HDMI fixes
      
        ASoC:
         - Lots of cleanups for enumerations; refactored lots of error prone
           original codes to use more modern APIs
      
         - Elimination of the ASoC level wrappers for I2C and SPI moving us
           closer to converting to regmap completely and avoiding some
           randconfig hassle
      
         - Provide both manually and transparently locked DAPM APIs rather
           than a mix of the two fixing some concurrency issues
      
         - Start converting CODEC drivers to use separate bus interface
           drivers rather than having them all in one file helping avoid
           dependency issues
      
         - DPCM support for Intel Haswell and Bay Trail platforms, lots of
           fixes
      
         - Lots of work on improvements for simple-card, DaVinci and the
           Renesas rcar drivers.
      
         - New drivers for Analog Devices ADAU1977, TI PCM512x and parts of
           the CSR SiRF SoC, TLV320AIC31XXX, Armada 370 DB, Cirrus cs42xx8
      
         - Fixes for the simple-card DAI format DT mess
      
         - DT support for a couple more devices.
      
         - Use of the tdm_slot mapping in a few drivers
      
        Others:
         - Support of reset_resume callback for improved S4 in USB-audio
           driver; the device with boot quirks have been little tested, which
           we need to watch out in this development cycle
      
         - Add PM support for ICE1712 driver (finally!); it's still pretty
           partial support, only for M-Audio devices"
      
      * tag 'sound-3.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound: (610 commits)
        ALSA: ice1712: Add suspend support for M-Audio ICE1712-based cards
        ALSA: ice1712: add suspend support for ICE1712 chip
        ALSA: hda - Enable beep for ASUS 1015E
        ALSA: asihpi: fix some indenting in snd_card_asihpi_pcm_new()
        ALSA: hda - add headset mic detect quirks for three Dell laptops
        ASoC: tegra: move AC97 clock handling to the machine driver
        ASoC: simple-card: Handle many DAI links
        ASoC: simple-card: Add DT documentation for multi-DAI links
        ASoC: simple-card: dynamically allocate the DAI link and properties
        ASoC: imx-ssi: Add .xlate_tdm_slot_mask() support.
        ASoC: fsl-esai: Add .xlate_tdm_slot_mask() support.
        ASoC: fsl-utils: Add fsl_asoc_xlate_tdm_slot_mask() support.
        ASoC: core: remove the 'of_' prefix of of_xlate_tdm_slot_mask.
        ASoC: rcar: subnode tidyup for renesas,rsnd.txt
        ASoC: Remove name_prefix unset during DAI link init hack
        ALSA: hda - Inform the unexpectedly ignored pins by auto-parser
        ASoC: rcar: bugfix: it cares about the non-src case
        ARM: bockw: fixup SND_SOC_DAIFMT_CBx_CFx flags
        ASoC: pcm: Drop incorrect double/extra frees
        ASoC: mfld_machine: Fix compile error
        ...
      c7092914
    • L
      Merge tag 'pci-v3.15-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 4b1779c2
      Linus Torvalds 提交于
      Pull PCI changes from Bjorn Helgaas:
       "Enumeration
         - Increment max correctly in pci_scan_bridge() (Andreas Noever)
         - Clarify the "scan anyway" comment in pci_scan_bridge() (Andreas Noever)
         - Assign CardBus bus number only during the second pass (Andreas Noever)
         - Use request_resource_conflict() instead of insert_ for bus numbers (Andreas Noever)
         - Make sure bus number resources stay within their parents bounds (Andreas Noever)
         - Remove pci_fixup_parent_subordinate_busnr() (Andreas Noever)
         - Check for child busses which use more bus numbers than allocated (Andreas Noever)
         - Don't scan random busses in pci_scan_bridge() (Andreas Noever)
         - x86: Drop pcibios_scan_root() check for bus already scanned (Bjorn Helgaas)
         - x86: Use pcibios_scan_root() instead of pci_scan_bus_with_sysdata() (Bjorn Helgaas)
         - x86: Use pcibios_scan_root() instead of pci_scan_bus_on_node() (Bjorn Helgaas)
         - x86: Merge pci_scan_bus_on_node() into pcibios_scan_root() (Bjorn Helgaas)
         - x86: Drop return value of pcibios_scan_root() (Bjorn Helgaas)
      
        NUMA
         - x86: Add x86_pci_root_bus_node() to look up NUMA node from PCI bus (Bjorn Helgaas)
         - x86: Use x86_pci_root_bus_node() instead of get_mp_bus_to_node() (Bjorn Helgaas)
         - x86: Remove mp_bus_to_node[], set_mp_bus_to_node(), get_mp_bus_to_node() (Bjorn Helgaas)
         - x86: Use NUMA_NO_NODE, not -1, for unknown node (Bjorn Helgaas)
         - x86: Remove acpi_get_pxm() usage (Bjorn Helgaas)
         - ia64: Use NUMA_NO_NODE, not MAX_NUMNODES, for unknown node (Bjorn Helgaas)
         - ia64: Remove acpi_get_pxm() usage (Bjorn Helgaas)
         - ACPI: Fix acpi_get_node() prototype (Bjorn Helgaas)
      
        Resource management
         - i2o: Fix and refactor PCI space allocation (Bjorn Helgaas)
         - Add resource_contains() (Bjorn Helgaas)
         - Add %pR support for IORESOURCE_UNSET (Bjorn Helgaas)
         - Mark resources as IORESOURCE_UNSET if we can't assign them (Bjorn Helgaas)
         - Don't clear IORESOURCE_UNSET when updating BAR (Bjorn Helgaas)
         - Check IORESOURCE_UNSET before updating BAR (Bjorn Helgaas)
         - Don't try to claim IORESOURCE_UNSET resources (Bjorn Helgaas)
         - Mark 64-bit resource as IORESOURCE_UNSET if we only support 32-bit (Bjorn Helgaas)
         - Don't enable decoding if BAR hasn't been assigned an address (Bjorn Helgaas)
         - Add "weak" generic pcibios_enable_device() implementation (Bjorn Helgaas)
         - alpha, microblaze, sh, sparc, tile: Use default pcibios_enable_device() (Bjorn Helgaas)
         - s390: Use generic pci_enable_resources() (Bjorn Helgaas)
         - Don't check resource_size() in pci_bus_alloc_resource() (Bjorn Helgaas)
         - Set type in __request_region() (Bjorn Helgaas)
         - Check all IORESOURCE_TYPE_BITS in pci_bus_alloc_from_region() (Bjorn Helgaas)
         - Change pci_bus_alloc_resource() type_mask to unsigned long (Bjorn Helgaas)
         - Log IDE resource quirk in dmesg (Bjorn Helgaas)
         - Revert "[PATCH] Insert GART region into resource map" (Bjorn Helgaas)
      
        PCI device hotplug
         - Make check_link_active() non-static (Rajat Jain)
         - Use link change notifications for hot-plug and removal (Rajat Jain)
         - Enable link state change notifications (Rajat Jain)
         - Don't disable the link permanently during removal (Rajat Jain)
         - Don't check adapter or latch status while disabling (Rajat Jain)
         - Disable link notification across slot reset (Rajat Jain)
         - Ensure very fast hotplug events are also processed (Rajat Jain)
         - Add hotplug_lock to serialize hotplug events (Rajat Jain)
         - Remove a non-existent card, regardless of "surprise" capability (Rajat Jain)
         - Don't turn slot off when hot-added device already exists (Yijing Wang)
      
        MSI
         - Keep pci_enable_msi() documentation (Alexander Gordeev)
         - ahci: Fix broken single MSI fallback (Alexander Gordeev)
         - ahci, vfio: Use pci_enable_msi_range() (Alexander Gordeev)
         - Check kmalloc() return value, fix leak of name (Greg Kroah-Hartman)
         - Fix leak of msi_attrs (Greg Kroah-Hartman)
         - Fix pci_msix_vec_count() htmldocs failure (Masanari Iida)
      
        Virtualization
         - Device-specific ACS support (Alex Williamson)
      
        Freescale i.MX6
         - Wait for retraining (Marek Vasut)
      
        Marvell MVEBU
         - Use Device ID and revision from underlying endpoint (Andrew Lunn)
         - Fix incorrect size for PCI aperture resources (Jason Gunthorpe)
         - Call request_resource() on the apertures (Jason Gunthorpe)
         - Fix potential issue in range parsing (Jean-Jacques Hiblot)
      
        Renesas R-Car
         - Check platform_get_irq() return code (Ben Dooks)
         - Add error interrupt handling (Ben Dooks)
         - Fix bridge logic configuration accesses (Ben Dooks)
         - Register each instance independently (Magnus Damm)
         - Break out window size handling (Magnus Damm)
         - Make the Kconfig dependencies more generic (Magnus Damm)
      
        Synopsys DesignWare
         - Fix RC BAR to be single 64-bit non-prefetchable memory (Mohit Kumar)
      
        Miscellaneous
         - Remove unused SR-IOV VF Migration support (Bjorn Helgaas)
         - Enable INTx if BIOS left them disabled (Bjorn Helgaas)
         - Fix hex vs decimal typo in cpqhpc_probe() (Dan Carpenter)
         - Clean up par-arch object file list (Liviu Dudau)
         - Set IORESOURCE_ROM_SHADOW only for the default VGA device (Sander Eikelenboom)
         - ACPI, ARM, drm, powerpc, pcmcia, PCI: Use list_for_each_entry() for bus traversal (Yijing Wang)
         - Fix pci_bus_b() build failure (Paul Gortmaker)"
      
      * tag 'pci-v3.15-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (108 commits)
        Revert "[PATCH] Insert GART region into resource map"
        PCI: Log IDE resource quirk in dmesg
        PCI: Change pci_bus_alloc_resource() type_mask to unsigned long
        PCI: Check all IORESOURCE_TYPE_BITS in pci_bus_alloc_from_region()
        resources: Set type in __request_region()
        PCI: Don't check resource_size() in pci_bus_alloc_resource()
        s390/PCI: Use generic pci_enable_resources()
        tile PCI RC: Use default pcibios_enable_device()
        sparc/PCI: Use default pcibios_enable_device() (Leon only)
        sh/PCI: Use default pcibios_enable_device()
        microblaze/PCI: Use default pcibios_enable_device()
        alpha/PCI: Use default pcibios_enable_device()
        PCI: Add "weak" generic pcibios_enable_device() implementation
        PCI: Don't enable decoding if BAR hasn't been assigned an address
        PCI: Enable INTx in pci_reenable_device() only when MSI/MSI-X not enabled
        PCI: Mark 64-bit resource as IORESOURCE_UNSET if we only support 32-bit
        PCI: Don't try to claim IORESOURCE_UNSET resources
        PCI: Check IORESOURCE_UNSET before updating BAR
        PCI: Don't clear IORESOURCE_UNSET when updating BAR
        PCI: Mark resources as IORESOURCE_UNSET if we can't assign them
        ...
      
      Conflicts:
      	arch/x86/include/asm/topology.h
      	drivers/ata/ahci.c
      4b1779c2
    • L
      Merge tag 'edac_for_3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp · 62ff577f
      Linus Torvalds 提交于
      Pull EDAC updates from Borislav Petkov:
       "A bunch of EDAC updates all over the place:
      
         - Support for new AMD models, along with more graceful fallback for
           unsupported hw.
      
         - Bunch of fixes from SUSE accumulated from bug reports
      
         - Misc other fixes and cleanups"
      
      * tag 'edac_for_3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
        amd64_edac: Add support for newer F16h models
        i7core_edac: Drop unused variable
        i82875p_edac: Drop redundant call to pci_get_device()
        amd8111_edac: Fix leaks in probe error paths
        e752x_edac: Drop pvt->bridge_ck
        MCE, AMD: Fix decoding module loading on unsupported hw
        i5100_edac: Remove an unneeded condition in i5100_init_csrows()
        sb_edac: Degrade log level for device registration
        amd64_edac: Fix logic to determine channel for F15 M30h processors
        edac/85xx: Remove deprecated IRQF_DISABLED
        i3200_edac: Add a missing pci_disable_device() on the exit path
        i5400_edac: Disable device when unloading module
        e752x_edac: Simplify call to pci_get_device()
      62ff577f
    • L
      Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging · 26f31fb9
      Linus Torvalds 提交于
      Pull hwmon updates from Guenter Roeck:
       - New drivers for ADC128D818, LTC2945, LTC4260, and LTC4222
       - Added support for LTM4676 to ltc2978 driver
       - Converted several drivers to use devm_hwmon_device_register_with_groups
       - Various cleanup in several drivers
      
      * tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (36 commits)
        hwmon: (pmbus/ltc2978) Add support for LTM4676
        hwmon: (pmbus/ltc2978) Add new chip ID for LTC2974
        hwmon: Do not accept invalid name attributes
        hwmon: (max6639) Use SIMPLE_DEV_PM_OPS macro
        hwmon: (lm95245) Make temp2_crit_hyst read-only
        hwmon: (lm95245) Convert to use devm_hwmon_device_register_with_groups
        hwmon: (lm95245) Drop useless debug message
        hwmon: (lm95245) Fix hysteresis temperatures
        hwmon: (max6639) Convert to use devm_hwmon_device_register_with_groups
        hwmon: (max6639) Introduce local dev variable, and reduce noisiness
        hwmon: (max6650) Introduce local 'dev' variable
        hwmon: (max6650) Drop error message after memory allocation failures
        hwmon: (max6650) Convert to use devm_hwmon_device_register_with_groups
        hwmon: (max6650) Rearrange code to no longer require forward declarations
        hwmon: (ltc4215) Convert to devm_hwmon_device_register_with_groups
        hwmon: (coretemp) Convert to use devm_hwmon_device_register_with_groups
        hwmon: (coretemp) Allocate platform data with devm_kzalloc
        hwmon: (coretemp) Use sysfs_create_group to create sysfs attributes
        hwmon: (ltc4245) Remove devicetree conditionals
        hwmon: (ltc4245) Drop debug messages
        ...
      26f31fb9
    • L
      Merge git://www.linux-watchdog.org/linux-watchdog · 0c8cfbad
      Linus Torvalds 提交于
      Pull watchdog updates from Wim Van Sebroeck:
       "This patchset contains:
         - Various small clean-ups and fixes
         - boot logic hanegs for mpc8xxx_wdt
         - it87_wdt: Work around non-working CIR interrupts
         - iTCO_wdt: Fix the parent device
         - Kconfig dependencies
         - simplification of code with devm_ioremap_resource() or
           platform_driver_probe()
         - conversion of xilinx watchdog driver to Generic watchdog Framework
         - addition of extra functionality and devices for the xilinx watchdog
           driver
         - Addition of Tegra watchdog"
      
      * git://www.linux-watchdog.org/linux-watchdog: (38 commits)
        watchdog: Fix Elan SC520 dependencies
        watchdog: ib700wdt: Use platform_driver_probe
        watchdog: geodewdt: Use platform_driver_probe
        watchdog: advantechwdt: Use platform_driver_probe
        watchdog: acquirewdt: Use platform_driver_probe
        watchdog: iTCO_wdt: Fix the parent device
        watchdog: it87_wdt: Work around non-working CIR interrupts
        watchdog: bcm281xx: Fix Kconfig dependency
        watchdog: s3c2410_wdt: Check return value of clk_prepare_enable
        watchdog: s3c2410_wdt: Remove unneeded initialization
        watchdog: sunxi: Change compatibles
        watchdog: orion: prepare new Dove DT Kconfig variable
        watchdog: fix checkpatch warnings and error
        watchdog: Add tegra watchdog
        watchdog: xilinx: Remove no_timeout variable
        watchdog: xilinx: Enable this driver for Zynq
        watchdog: xilinx: Add missing binding
        watchdog: xilinx: Use correct comment indentation
        watchdog: xilinx: Use of_property_read_u32
        watchdog: xilinx: Fix all printk messages
        ...
      0c8cfbad
    • L
      Merge tag 'spi-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · c12ac9f9
      Linus Torvalds 提交于
      Pull spi Updates from Mark Brown:
       "A busy release for both cleanups and new drivers this time along with
        further factoring out of replicated code into the core:
      
         - Provide support in the core for DMA mapping transfers - essentially
           all drivers weren't implementing this properly, now there's no
           excuse.
         - Dual and quad mode support for spidev.
         - Fix handling of cs_change in the generic implementation.
         - Remove the S3C_DMA code from the s3c64xx driver now that all the
           platforms using it have been converted to dmaengine.
         - Lots of improvements to the Renesas SPI controllers.
         - Drivers for Allwinner A10 and A31, Qualcomm QUP and Xylinx xtfpga.
         - Removal of the bitrotted ti-ssp driver"
      
      * tag 'spi-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (199 commits)
        spi: Fix handling of cs_change in core implementation
        spi: bitbang: Make spi_bitbang_stop() return void
        spi: mpc52xx: Convert to use bits_per_word_mask
        spi: omap-100k: Fix memory leak
        spi: dw: Don't call kfree for memory allocated by devm_kzalloc
        spi: fsl-dspi: Fix memory leak
        spi: omap-uwire: add missing iounmap
        spi: clps711x: Convert to use master->max_speed_hz
        spi: clps711x: Enable driver compilation with COMPILE_TEST
        spi: omap-uwire: Remove full duplex check
        spi: Do not require a completion
        spi: topcliff-pch: Transform noisy message to dev_vdbg
        spi: coldfire-qspi: Simplify the code to set register bits for transfer speed
        spi: bcm63xx: Remove unused define for PFX
        spi: efm32: use $vendor,$device scheme for compatible string
        spi: clps711x: Remove <mach/hardware.h> dependency
        spi: topcliff-pch: Properly unregister platform devices on probe() error paths
        spi: fsl-espi: Remove unused bits_per_word variable in fsl_espi_bufs
        spi: altera: Remove the code to get unused platform_data
        spi: fsl-lib: Fix memory leak of pinfo
        ...
      c12ac9f9
    • L
      Merge tag 'regulator-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 3786075b
      Linus Torvalds 提交于
      Pull regulator updates from Mark Brown:
       "This release has lots and lots of small cleanups and fixes in the
        regulator subsystem, mainly cleaning up some bad patterns that got
        duplicated in DT code, but otherwise very little of note outside of
        the scope of the relevant drivers:
      
         - Support for configuration of the initial state for gpio regulators
           with multi-voltage support.
         - Support for calling regulator_set_voltage() on fixed regulators.
         - New drivers for Broadcom BCM590xx, Freescale pfuze200, Samsung
           S2MPA01 & S2MPS11/4, some PWM controlled regulators found on some
           ST boards and TI TPS65218"
      
      * tag 'regulator-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (154 commits)
        regulator: aat2870: Use regulator_map_voltage_ascend
        regulator: st-pwm: Convert to get_voltage_sel
        regulator: Add new driver for ST's PWM controlled voltage regulators
        regulator: bcm590xx: Remove **rdev from struct bcm590xx_reg
        regulator: bcm590xx: Make the modalias matches the driver name
        regulator: s5m8767: Convert to use regulator_[enable|disable|is_enabled]_regmap
        regulator: db8500-prcmu: Set 1.8V as a fixed voltage for vsmps2
        regulator: s2mps11: Add missing of_node_put
        regulator: s2mps11: Use of_get_child_by_name
        Documentation: mfd: s2mps11: Document support for S2MPS14
        regulator: s2mps11: Add set_suspend_disable for S2MPS14
        regulator: s2mps11: Add support for S2MPS14 regulators
        regulator: max8660: Fix brace alignment
        regulator: dbx500: use seq_puts() instead of seq_printf()
        regulator: dbx500-prcmu: Silence checkpatch warnings
        regulator: anatop: Remove checking control_reg in [set|get]_voltage_sel
        regulator: max8952: Silence checkpatch warning
        regulator: max8925: Silence checkpatch warning
        regulator: max8660: Silence checkpatch warnings
        regulator: arizona-ldo1: Correct default regulator init_data
        ...
      3786075b
    • L
      Merge tag 'regmap-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · c6b38ec0
      Linus Torvalds 提交于
      Pull regmap updates from Mark Brown:
       "Quite a busy release for regmap this time around, the standout changes
        are:
      
         - A real implementation of regmap_multi_write() and a bypassed
           version of it for use by drivers doing patch-like things with more
           open coding for surrounding startup sequences.
         - Support fast_io on bulk operations.
         - Support split device binding and map initialisation for use by
           devices required in early init (mainly system controllers).
         - Fixes for some operations on maps with strides set.
         - Export the value parsing operations to help generic code built on
           top of the API.
         - Support for MMIO regmaps with non-32 bit register sizes.
      
        plus a few smaller fixes"
      
      * tag 'regmap-v3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap: (22 commits)
        regmap: mmio: Add regmap_mmio_regbits_check.
        regmap: mmio: Add support for 1/2/8 bytes wide register address.
        regmap: mmio: add regmap_mmio_{regsize, count}_check.
        regmap: cache: Don't attempt to sync non-writeable registers
        regmap: cache: Step by stride in default sync
        regmap: Fix possible sleep-in-atomic in regmap_bulk_write()
        regmap: Ensure regmap_register_patch() is compatible with fast_io
        regmap: irq: Set data pointer only on regmap_add_irq_chip success
        regmap: Implementation for regmap_multi_reg_write
        regmap: add regmap_parse_val api
        mfd: arizona: Use new regmap features for manual register patch
        regmap: Base regmap_register_patch on _regmap_multi_reg_write
        regmap: Add bypassed version of regmap_multi_reg_write
        regmap: Mark reg_defaults in regmap_multi_reg_write as const
        regmap: fix coccinelle warnings
        regmap: Check stride of register patch as we register it
        regmap: Clean up _regmap_update_bits()
        regmap: Separate regmap dev initialization
        regmap: Check readable regs in _regmap_read
        regmap: irq: Remove domain on exit
        ...
      c6b38ec0
    • L
      Merge tag 'pinctrl-v3.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · d64b3932
      Linus Torvalds 提交于
      Pull pin control bulk changes from Linus Walleij:
       "Pin control bulk changes for the v3.15 series, no new core
        functionality this time, just incremental driver updates:
      
         - A large refactoring of the MVEBU (Marvell) driver.
      
         - A large refactoring of the Tegra (nVidia) driver.
      
         - GPIO interrupt including soft edges support in the STi driver.
      
         - Misc updates to PFC (Renesas), AT91, ADI2 (Blackfin),
           pinctrl-single, sirf (CSR), msm (Qualcomm), Exynos (Samsung), sunxi
           (AllWinner), i.MX (Freescale), Baytrail"
      
      * tag 'pinctrl-v3.15-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (72 commits)
        pinctrl: tegra: add some missing Tegra114 entries
        pinctrl: tegra: fix some mistakes in Tegra124
        pinctrl: msm: fix up out-of-order merge conflict
        pinctrl: st: Fix error check for of_irq_to_resource usage
        pinctrl: tegra: consistency cleanup
        pinctrl: tegra: dynamically calculate function list of groups
        pinctrl: tegra: init Tegra20/30 at module_init time
        pinctrl: st: Use ARRAY_SIZE instead of raw value for number of delays
        pinctrl: st: add pinctrl support for the STiH407 SoC
        pinctrl: st: Enhance the controller to manage unavailable registers
        pinctrl: msm: Simplify msm_config_reg() and callers
        pinctrl: msm: Remove impossible WARN_ON()s
        pinctrl: msm: Replace lookup tables with math
        pinctrl: msm: Drop OF_IRQ dependency
        pinctrl: msm: Drop unused includes
        pinctrl: msm: Check for ngpios > MAX_NR_GPIO
        pinctrl: msm: Silence recursive lockdep warning
        pinctrl: mvebu: silence WARN to dev_warn
        pinctrl: msm: drop wake_irqs bitmap
        pinctrl-baytrail: add function mux checking in gpio pin request
        ...
      d64b3932
    • L
      Merge tag 'pm+acpi-3.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 4dedde7c
      Linus Torvalds 提交于
      Pull ACPI and power management updates from Rafael Wysocki:
       "The majority of this material spent some time in linux-next, some of
        it even several weeks.  There are a few relatively fresh commits in
        it, but they are mostly fixes and simple cleanups.
      
        ACPI took the lead this time, both in terms of the number of commits
        and the number of modified lines of code, cpufreq follows and there
        are a few changes in the PM core and in cpuidle too.
      
        A new feature that already got some LWN.net's attention is the device
        PM QoS extension allowing latency tolerance requirements to be
        propagated from leaf devices to their ancestors with hardware
        interfaces for specifying latency tolerance.  That should help systems
        with hardware-driven power management to avoid going too far with it
        in cases when there are latency tolerance constraints.
      
        There also are some significant changes in the ACPI core related to
        the way in which hotplug notifications are handled.  They affect PCI
        hotplug (ACPIPHP) and the ACPI dock station code too.  The bottom line
        is that all those notification now go through the root notify handler
        and are propagated to the interested subsystems by means of callbacks
        instead of having to install a notify handler for each device object
        that we can potentially get hotplug notifications for.
      
        In addition to that ACPICA will now advertise "Windows 2013"
        compatibility for _OSI, because some systems out there don't work
        correctly if that is not done (some of them don't even boot).
      
        On the system suspend side of things, all of the device suspend and
        resume callbacks, except for ->prepare() and ->complete(), are now
        going to be executed asynchronously as that turns out to speed up
        system suspend and resume on some platforms quite significantly and we
        have a few more optimizations in that area.
      
        Apart from that, there are some new device IDs and fixes and cleanups
        all over.  In particular, the system suspend and resume handling by
        cpufreq should be improved and the cpuidle menu governor should be a
        bit more robust now.
      
        Specifics:
      
         - Device PM QoS support for latency tolerance constraints on systems
           with hardware interfaces allowing such constraints to be specified.
           That is necessary to prevent hardware-driven power management from
           becoming overly aggressive on some systems and to prevent power
           management features leading to excessive latencies from being used
           in some cases.
      
         - Consolidation of the handling of ACPI hotplug notifications for
           device objects.  This causes all device hotplug notifications to go
           through the root notify handler (that was executed for all of them
           anyway before) that propagates them to individual subsystems, if
           necessary, by executing callbacks provided by those subsystems
           (those callbacks are associated with struct acpi_device objects
           during device enumeration).  As a result, the code in question
           becomes both smaller in size and more straightforward and all of
           those changes should not affect users.
      
         - ACPICA update, including fixes related to the handling of _PRT in
           cases when it is broken and the addition of "Windows 2013" to the
           list of supported "features" for _OSI (which is necessary to
           support systems that work incorrectly or don't even boot without
           it).  Changes from Bob Moore and Lv Zheng.
      
         - Consolidation of ACPI _OST handling from Jiang Liu.
      
         - ACPI battery and AC fixes allowing unusual system configurations to
           be handled by that code from Alexander Mezin.
      
         - New device IDs for the ACPI LPSS driver from Chiau Ee Chew.
      
         - ACPI fan and thermal optimizations related to system suspend and
           resume from Aaron Lu.
      
         - Cleanups related to ACPI video from Jean Delvare.
      
         - Assorted ACPI fixes and cleanups from Al Stone, Hanjun Guo, Lan
           Tianyu, Paul Bolle, Tomasz Nowicki.
      
         - Intel RAPL (Running Average Power Limits) driver cleanups from
           Jacob Pan.
      
         - intel_pstate fixes and cleanups from Dirk Brandewie.
      
         - cpufreq fixes related to system suspend/resume handling from Viresh
           Kumar.
      
         - cpufreq core fixes and cleanups from Viresh Kumar, Stratos
           Karafotis, Saravana Kannan, Rashika Kheria, Joe Perches.
      
         - cpufreq drivers updates from Viresh Kumar, Zhuoyu Zhang, Rob
           Herring.
      
         - cpuidle fixes related to the menu governor from Tuukka Tikkanen.
      
         - cpuidle fix related to coupled CPUs handling from Paul Burton.
      
         - Asynchronous execution of all device suspend and resume callbacks,
           except for ->prepare and ->complete, during system suspend and
           resume from Chuansheng Liu.
      
         - Delayed resuming of runtime-suspended devices during system suspend
           for the PCI bus type and ACPI PM domain.
      
         - New set of PM helper routines to allow device runtime PM callbacks
           to be used during system suspend and resume more easily from Ulf
           Hansson.
      
         - Assorted fixes and cleanups in the PM core from Geert Uytterhoeven,
           Prabhakar Lad, Philipp Zabel, Rashika Kheria, Sebastian Capella.
      
         - devfreq fix from Saravana Kannan"
      
      * tag 'pm+acpi-3.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (162 commits)
        PM / devfreq: Rewrite devfreq_update_status() to fix multiple bugs
        PM / sleep: Correct whitespace errors in <linux/pm.h>
        intel_pstate: Set core to min P state during core offline
        cpufreq: Add stop CPU callback to cpufreq_driver interface
        cpufreq: Remove unnecessary braces
        cpufreq: Fix checkpatch errors and warnings
        cpufreq: powerpc: add cpufreq transition latency for FSL e500mc SoCs
        MAINTAINERS: Reorder maintainer addresses for PM and ACPI
        PM / Runtime: Update runtime_idle() documentation for return value meaning
        video / output: Drop display output class support
        fujitsu-laptop: Drop unneeded include
        acer-wmi: Stop selecting VIDEO_OUTPUT_CONTROL
        ACPI / gpu / drm: Stop selecting VIDEO_OUTPUT_CONTROL
        ACPI / video: fix ACPI_VIDEO dependencies
        cpufreq: remove unused notifier: CPUFREQ_{SUSPENDCHANGE|RESUMECHANGE}
        cpufreq: Do not allow ->setpolicy drivers to provide ->target
        cpufreq: arm_big_little: set 'physical_cluster' for each CPU
        cpufreq: arm_big_little: make vexpress driver depend on bL core driver
        ACPI / button: Add ACPI Button event via netlink routine
        ACPI: Remove duplicate definitions of PREFIX
        ...
      4dedde7c
    • L
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 683b6c6f
      Linus Torvalds 提交于
      Pull irq code updates from Thomas Gleixner:
       "The irq department proudly presents:
      
         - Another tree wide sweep of irq infrastructure abuse.  Clear winner
           of the trainwreck engineering contest was:
               #include "../../../kernel/irq/settings.h"
      
         - Tree wide update of irq_set_affinity() callbacks which miss a cpu
           online check when picking a single cpu out of the affinity mask.
      
         - Tree wide consolidation of interrupt statistics.
      
         - Updates to the threaded interrupt infrastructure to allow explicit
           wakeup of the interrupt thread and a variant of synchronize_irq()
           which synchronizes only the hard interrupt handler.  Both are
           needed to replace the homebrewn thread handling in the mmc/sdhci
           code.
      
         - New irq chip callbacks to allow proper support for GPIO based irqs.
           The GPIO based interrupts need to request/release GPIO resources
           from request/free_irq.
      
         - A few new ARM interrupt chips.  No revolutionary new hardware, just
           differently wreckaged variations of the scheme.
      
         - Small improvments, cleanups and updates all over the place"
      
      I was hoping that that trainwreck engineering contest was a April Fools'
      joke.  But no.
      
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (68 commits)
        irqchip: sun7i/sun6i: Disable NMI before registering the handler
        ARM: sun7i/sun6i: dts: Fix IRQ number for sun6i NMI controller
        ARM: sun7i/sun6i: irqchip: Update the documentation
        ARM: sun7i/sun6i: dts: Add NMI irqchip support
        ARM: sun7i/sun6i: irqchip: Add irqchip driver for NMI controller
        genirq: Export symbol no_action()
        arm: omap: Fix typo in ams-delta-fiq.c
        m68k: atari: Fix the last kernel_stat.h fallout
        irqchip: sun4i: Simplify sun4i_irq_ack
        irqchip: sun4i: Use handle_fasteoi_irq for all interrupts
        genirq: procfs: Make smp_affinity values go+r
        softirq: Add linux/irq.h to make it compile again
        m68k: amiga: Add linux/irq.h to make it compile again
        irqchip: sun4i: Don't ack IRQs > 0, fix acking of IRQ 0
        irqchip: sun4i: Fix a comment about mask register initialization
        irqchip: sun4i: Fix irq 0 not working
        genirq: Add a new IRQCHIP_EOI_THREADED flag
        genirq: Document IRQCHIP_ONESHOT_SAFE flag
        ARM: sunxi: dt: Convert to the new irq controller compatibles
        irqchip: sunxi: Change compatibles
        ...
      683b6c6f
    • L
      Merge branch 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1ead6581
      Linus Torvalds 提交于
      Pull timer changes from Thomas Gleixner:
       "This assorted collection provides:
      
         - A new timer based timer broadcast feature for systems which do not
           provide a global accessible timer device.  That allows those
           systems to put CPUs into deep idle states where the per cpu timer
           device stops.
      
         - A few NOHZ_FULL related improvements to the timer wheel
      
         - The usual updates to timer devices found in ARM SoCs
      
         - Small improvements and updates all over the place"
      
      * 'timers-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (44 commits)
        tick: Remove code duplication in tick_handle_periodic()
        tick: Fix spelling mistake in tick_handle_periodic()
        x86: hpet: Use proper destructor for delayed work
        workqueue: Provide destroy_delayed_work_on_stack()
        clocksource: CMT, MTU2, TMU and STI should depend on GENERIC_CLOCKEVENTS
        timer: Remove code redundancy while calling get_nohz_timer_target()
        hrtimer: Rearrange comments in the order struct members are declared
        timer: Use variable head instead of &work_list in __run_timers()
        clocksource: exynos_mct: silence a static checker warning
        arm: zynq: Add support for cpufreq
        arm: zynq: Don't use arm_global_timer with cpufreq
        clocksource/cadence_ttc: Overhaul clocksource frequency adjustment
        clocksource/cadence_ttc: Call clockevents_update_freq() with IRQs enabled
        clocksource: Add Kconfig entries for CMT, MTU2, TMU and STI
        sh: Remove Kconfig entries for TMU, CMT and MTU2
        ARM: shmobile: Remove CMT, TMU and STI Kconfig entries
        clocksource: armada-370-xp: Use atomic access for shared registers
        clocksource: orion: Use atomic access for shared registers
        clocksource: timer-keystone: Delete unnecessary variable
        clocksource: timer-keystone: introduce clocksource driver for Keystone
        ...
      1ead6581
    • L
      Merge branch 'x86-iommu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b6d739e9
      Linus Torvalds 提交于
      Pull x86 iommu quirk fix from Thomas Gleixner:
       "A quirk for the iommu quirk to include silicon which was assumed not
        to be out in the wild.
      
        This time with the correct logic applied"
      
      * 'x86-iommu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Adjust irq remapping quirk for older revisions of 5500/5520 chipsets
      b6d739e9
    • L
      Merge branch 'x86-threadinfo-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 99f7b025
      Linus Torvalds 提交于
      Pull x86 threadinfo changes from Ingo Molnar:
       "The main change here is the consolidation/unification of 32 and 64 bit
        thread_info handling methods, from Steve Rostedt"
      
      * 'x86-threadinfo-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, threadinfo: Redo "x86: Use inline assembler to get sp"
        x86: Clean up dumpstack_64.c code
        x86: Keep thread_info on thread stack in x86_32
        x86: Prepare removal of previous_esp from i386 thread_info structure
        x86: Nuke GET_THREAD_INFO_WITH_ESP() macro for i386
        x86: Nuke the supervisor_stack field in i386 thread_info
      99f7b025
    • L
      Merge branch 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · a21e4087
      Linus Torvalds 提交于
      Pull timer updates from Ingo Molnar:
       "The main purpose is to fix a full dynticks bug related to
        virtualization, where steal time accounting appears to be zero in
        /proc/stat even after a few seconds of competing guests running busy
        loops in a same host CPU.  It's not a regression though as it was
        there since the beginning.
      
        The other commits are preparatory work to fix the bug and various
        cleanups"
      
      * 'timers-nohz-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        arch: Remove stub cputime.h headers
        sched: Remove needless round trip nsecs <-> tick conversion of steal time
        cputime: Fix jiffies based cputime assumption on steal accounting
        cputime: Bring cputime -> nsecs conversion
        cputime: Default implementation of nsecs -> cputime conversion
        cputime: Fix nsecs_to_cputime() return type cast
      a21e4087
    • L
      Merge branch 'x86-cpufeature-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · b9b16a79
      Linus Torvalds 提交于
      Pull x86 cpufeature update from Ingo Molnar:
       "Two refinements to clflushopt support"
      
      * 'x86-cpufeature-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, cpufeature: If we disable CLFLUSH, we should disable CLFLUSHOPT
        x86, cpufeature: Rename X86_FEATURE_CLFLSH to X86_FEATURE_CLFLUSH
      b9b16a79
    • L
      Merge branch 'x86-reboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 4b2ce8f1
      Linus Torvalds 提交于
      Pull x86 reboot changes from Ingo Molnar:
       "Refine the reboot logic around the CF9 and EFI reboot methods, to make
        it more robust.  The expectation is for no working system to break,
        and for a couple of reboot-force systems to start rebooting
        automatically again"
      
      * 'x86-reboot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, reboot: Only use CF9_COND automatically, not CF9
        x86, reboot: Add EFI and CF9 reboot methods into the default list
      4b2ce8f1
    • L
      Merge branch 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 1694f0bb
      Linus Torvalds 提交于
      Pull x86 mm change from Ingo Molnar:
       "A micro-optimization for acpi_numa_slit_init()"
      
      * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mm: Avoid duplicated pxm_to_node() calls
      1694f0bb
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/linux-avr32 · f27a15d2
      Linus Torvalds 提交于
      Pull AVR32 updates from Hans-Christian Egtvedt.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/linux-avr32:
        avr32: replace simple_strtoul() with kstrtoul()
        arch/avr32/mm/cache.c: export symbol flush_icache_range() for module using
        avr32: remove cpu_data macro to fix compiles
      f27a15d2
  2. 01 4月, 2014 21 次提交
    • R
      avr32: replace simple_strtoul() with kstrtoul() · 4c3b7df4
      Ramkumar Ramachandra 提交于
      simple_strtoul() is marked for obsoletion; use the newer and more
      pleasant kstrtoul() in its place.
      
      Cc: Alexey Dobriyan <adobriyan@gmail.com>
      Cc: Haavard Skinnemoen <hskinnemoen@gmail.com>
      Cc: Hans-Christian Egtvedt <egtvedt@samfundet.no>
      Signed-off-by: NRamkumar Ramachandra <artagnon@gmail.com>
      Signed-off-by: NHans-Christian Egtvedt <egtvedt@samfundet.no>
      4c3b7df4
    • L
      Merge branch 'for-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · 01d5f3b5
      Linus Torvalds 提交于
      Pull libata updates from Tejun Heo:
       "A lot of activities on libata side this time.
      
         - A lot of changes around ahci.  Various embedded platforms are
           implementing ahci controllers.  Some were built atop ahci_platform,
           others were doing their own things.  Hans made some structural
           changes to libahci and librarized ahci_platform so that ahci
           platform drivers can share more common code.  A couple platform
           drivers are added on top of that and several are added to replace
           older drivers which were doing their own things (older ones are
           scheduled to be removed).
      
         - Dan finishes the patchset to make libata PM operations
           asynchronous.  Combined with one patch being routed through scsi,
           this should speed resume measurably.
      
         - Various fixes and cleanups from Bartlomiej and others"
      
      * 'for-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata: (61 commits)
        ata: fix Marvell SATA driver dependencies
        ata: fix ARASAN CompactFlash PATA driver dependencies
        ata: remove superfluous casts
        ata: sata_highbank: remove superfluous cast
        ata: fix Calxeda Highbank SATA driver dependencies
        ata: fix R-Car SATA driver dependencies
        ARM: davinci: da850: update SATA AHCI support
        ata: add new-style AHCI platform driver for DaVinci DA850 AHCI controller
        ata: move library code from ahci_platform.c to libahci_platform.c
        ata: ahci_platform: fix ahci_platform_data->suspend method handling
        libata: remove unused ata_sas_port_async_resume() stub
        libata.h: add stub for ata_sas_port_resume
        libata: async resume
        libata, libsas: kill pm_result and related cleanup
        ata: Fix compiler warning with APM X-Gene host controller driver
        arm64: Add APM X-Gene SoC AHCI SATA host controller DTS entries
        ata: Add APM X-Gene SoC AHCI SATA host controller driver
        Documentation: Add documentation for the APM X-Gene SoC SATA host controller DTS binding
        arm64: Add APM X-Gene SoC 15Gbps Multi-purpose PHY DTS entries
        ata: ahci_sunxi: fix code formatting
        ...
      01d5f3b5
    • L
      Merge branch 'for-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 9d919e8d
      Linus Torvalds 提交于
      Pull workqueue changes from Tejun Heo:
       "PREPARE_[DELAYED_]WORK() were used to change the work function of work
        items without fully reinitializing it; however, this makes workqueue
        consider the work item as a different one from before and allows the
        work item to start executing before the previous instance is finished
        which can lead to extremely subtle issues which are painful to debug.
      
        The interface has never been popular.  This pull request contains
        patches to remove existing usages and kill the interface.  As one of
        the changes was routed during the last devel cycle and another
        depended on a pending change in nvme, for-3.15 contains a couple merge
        commits.
      
        In addition, interfaces which were deprecated quite a while ago -
        __cancel_delayed_work() and WQ_NON_REENTRANT - are removed too"
      
      * 'for-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: remove deprecated WQ_NON_REENTRANT
        workqueue: Spelling s/instensive/intensive/
        workqueue: remove PREPARE_[DELAYED_]WORK()
        staging/fwserial: don't use PREPARE_WORK
        afs: don't use PREPARE_WORK
        nvme: don't use PREPARE_WORK
        usb: don't use PREPARE_DELAYED_WORK
        floppy: don't use PREPARE_[DELAYED_]WORK
        ps3-vuart: don't use PREPARE_WORK
        wireless/rt2x00: don't use PREPARE_WORK in rt2800usb.c
        workqueue: Remove deprecated __cancel_delayed_work()
      9d919e8d
    • L
      Merge branch 'for-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu · cf6fafcf
      Linus Torvalds 提交于
      Pull percpu changes from Tejun Heo:
       "The percpu allocation is now popular enough for the extremely naive
        range allocator to cause scalability issues.
      
        The existing allocator linearly scanned the allocation map on both
        alloc and free without making use of hint or anything.  Al
        reimplemented the range allocator so that it can use binary search
        instead of linear scan during free and alloc path uses simple hinting
        to avoid scanning in common cases.  Combined, the new allocator
        resolves the scalability issue percpu allocator was showing during
        container benchmark workload"
      
      * 'for-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/percpu:
        percpu: renew the max_contig if we merge the head and previous block
        percpu: allocation size should be even
        percpu: speed alloc_pcpu_area() up
        percpu: store offsets instead of lengths in ->map[]
        perpcu: fold pcpu_split_block() into the only caller
      cf6fafcf
    • L
      Merge tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux · 1ce235fa
      Linus Torvalds 提交于
      Pull ARM64 updates from Catalin Marinas:
       - KGDB support for arm64
       - PCI I/O space extended to 16M (in preparation of PCIe support
         patches)
       - Dropping ZONE_DMA32 in favour of ZONE_DMA (we only need one for the
         time being), together with swiotlb late initialisation to correctly
         setup the bounce buffer
       - DMA API cache maintenance support (not all ARMv8 platforms have
         hardware cache coherency)
       - Crypto extensions advertising via ELF_HWCAP2 for compat user space
       - Perf support for dwarf unwinding in compat mode
       - asm/tlb.h converted to the generic mmu_gather code
       - asm-generic rwsem implementation
       - Code clean-up
      
      * tag 'arm64-upstream' of git://git.kernel.org/pub/scm/linux/kernel/git/arm64/linux: (42 commits)
        arm64: Remove pgprot_dmacoherent()
        arm64: Support DMA_ATTR_WRITE_COMBINE
        arm64: Implement custom mmap functions for dma mapping
        arm64: Fix __range_ok macro
        arm64: Fix duplicated Kconfig entries
        arm64: mm: Route pmd thp functions through pte equivalents
        arm64: rwsem: use asm-generic rwsem implementation
        asm-generic: rwsem: de-PPCify rwsem.h
        arm64: enable generic CPU feature modalias matching for this architecture
        arm64: smp: make local symbol static
        arm64: debug: make local symbols static
        ARM64: perf: support dwarf unwinding in compat mode
        ARM64: perf: add support for frame pointer unwinding in compat mode
        ARM64: perf: add support for perf registers API
        arm64: Add boot time configuration of Intermediate Physical Address size
        arm64: Do not synchronise I and D caches for special ptes
        arm64: Make DMA coherent and strongly ordered mappings not executable
        arm64: barriers: add dmb barrier
        arm64: topology: Implement basic CPU topology support
        arm64: advertise ARMv8 extensions to 32-bit compat ELF binaries
        ...
      1ce235fa
    • L
      Merge tag 'please-pull-misc-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux · e38be1b1
      Linus Torvalds 提交于
      Pull ia64 updates from Tony Luck:
       "Miscellaneous ia64 fixes for 3.15 merge window"
      
      * tag 'please-pull-misc-3.15' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
        [IA64] Keep format strings from leaking into printk
        Fix warning in make defconfig
        [IA64] sba_iommu: fix section mismatch To: linux-kernel@vger.kernel.org
      e38be1b1
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k · f2427917
      Linus Torvalds 提交于
      Pull m68k updates from Geert Uytterhoeven.
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
        m68k: Update defconfigs for v3.14-rc1
        [SCSI] atari_scsi: Fix sleep_on race
        m68k: head.S - Remove bogus L prefix in comment
        m68k: Remove dead code
        m68k: Remove CONSOLE_PENGUIN macro, adopt CONFIG_LOGO
      f2427917
    • L
      Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 1f8c538e
      Linus Torvalds 提交于
      Pull s390 updates from Martin Schwidefsky:
       "There are two memory management related changes, the CMMA support for
        KVM to avoid swap-in of freed pages and the split page table lock for
        the PMD level.  These two come with common code changes in mm/.
      
        A fix for the long standing theoretical TLB flush problem, this one
        comes with a common code change in kernel/sched/.
      
        Another set of changes is Heikos uaccess work, included is the initial
        set of patches with more to come.
      
        And fixes and cleanups as usual"
      
      * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (36 commits)
        s390/con3270: optionally disable auto update
        s390/mm: remove unecessary parameter from pgste_ipte_notify
        s390/mm: remove unnecessary parameter from gmap_do_ipte_notify
        s390/mm: fixing comment so that parameter name match
        s390/smp: limit number of cpus in possible cpu mask
        hypfs: Add clarification for "weight_min" attribute
        s390: update defconfigs
        s390/ptrace: add support for PTRACE_SINGLEBLOCK
        s390/perf: make print_debug_cf() static
        s390/topology: Remove call to update_cpu_masks()
        s390/compat: remove compat exec domain
        s390: select CONFIG_TTY for use of tty in unconditional keyboard driver
        s390/appldata_os: fix cpu array size calculation
        s390/checksum: remove memset() within csum_partial_copy_from_user()
        s390/uaccess: remove copy_from_user_real()
        s390/sclp_early: Return correct HSA block count also for zero
        s390: add some drivers/subsystems to the MAINTAINERS file
        s390: improve debug feature usage
        s390/airq: add support for irq ranges
        s390/mm: enable split page table lock for PMD level
        ...
      1f8c538e
    • L
      Merge branch 'compat' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux · 190f9186
      Linus Torvalds 提交于
      Pull s390 compat wrapper rework from Heiko Carstens:
       "S390 compat system call wrapper simplification work.
      
        The intention of this work is to get rid of all hand written assembly
        compat system call wrappers on s390, which perform proper sign or zero
        extension, or pointer conversion of compat system call parameters.
        Instead all of this should be done with C code eg by using Al's
        COMPAT_SYSCALL_DEFINEx() macro.
      
        Therefore all common code and s390 specific compat system calls have
        been converted to the COMPAT_SYSCALL_DEFINEx() macro.
      
        In order to generate correct code all compat system calls may only
        have eg compat_ulong_t parameters, but no unsigned long parameters.
        Those patches which change parameter types from unsigned long to
        compat_ulong_t parameters are separate in this series, but shouldn't
        cause any harm.
      
        The only compat system calls which intentionally have 64 bit
        parameters (preadv64 and pwritev64) in support of the x86/32 ABI
        haven't been changed, but are now only available if an architecture
        defines __ARCH_WANT_COMPAT_SYS_PREADV64/PWRITEV64.
      
        System calls which do not have a compat variant but still need proper
        zero extension on s390, like eg "long sys_brk(unsigned long brk)" will
        get a proper wrapper function with the new s390 specific
        COMPAT_SYSCALL_WRAPx() macro:
      
           COMPAT_SYSCALL_WRAP1(brk, unsigned long, brk);
      
        which generates the following code (simplified):
      
           asmlinkage long sys_brk(unsigned long brk);
           asmlinkage long compat_sys_brk(long brk)
           {
               return sys_brk((u32)brk);
           }
      
        Given that the C file which contains all the COMPAT_SYSCALL_WRAP lines
        includes both linux/syscall.h and linux/compat.h, it will generate
        build errors, if the declaration of sys_brk() doesn't match, or if
        there exists a non-matching compat_sys_brk() declaration.
      
        In addition this will intentionally result in a link error if
        somewhere else a compat_sys_brk() function exists, which probably
        should have been used instead.  Two more BUILD_BUG_ONs make sure the
        size and type of each compat syscall parameter can be handled
        correctly with the s390 specific macros.
      
        I converted the compat system calls step by step to verify the
        generated code is correct and matches the previous code.  In fact it
        did not always match, however that was always a bug in the hand
        written asm code.
      
        In result we get less code, less bugs, and much more sanity checking"
      
      * 'compat' of git://git.kernel.org/pub/scm/linux/kernel/git/s390/linux: (44 commits)
        s390/compat: add copyright statement
        compat: include linux/unistd.h within linux/compat.h
        s390/compat: get rid of compat wrapper assembly code
        s390/compat: build error for large compat syscall args
        mm/compat: convert to COMPAT_SYSCALL_DEFINE with changing parameter types
        kexec/compat: convert to COMPAT_SYSCALL_DEFINE with changing parameter types
        net/compat: convert to COMPAT_SYSCALL_DEFINE with changing parameter types
        ipc/compat: convert to COMPAT_SYSCALL_DEFINE with changing parameter types
        fs/compat: convert to COMPAT_SYSCALL_DEFINE with changing parameter types
        ipc/compat: convert to COMPAT_SYSCALL_DEFINE
        fs/compat: convert to COMPAT_SYSCALL_DEFINE
        security/compat: convert to COMPAT_SYSCALL_DEFINE
        mm/compat: convert to COMPAT_SYSCALL_DEFINE
        net/compat: convert to COMPAT_SYSCALL_DEFINE
        kernel/compat: convert to COMPAT_SYSCALL_DEFINE
        fs/compat: optional preadv64/pwrite64 compat system calls
        ipc/compat_sys_msgrcv: change msgtyp type from long to compat_long_t
        s390/compat: partial parameter conversion within syscall wrappers
        s390/compat: automatic zero, sign and pointer conversion of syscalls
        s390/compat: add sync_file_range and fallocate compat syscalls
        ...
      190f9186
    • L
      Merge branch 'x86-asmlinkage-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 176ab02d
      Linus Torvalds 提交于
      Pull x86 LTO changes from Peter Anvin:
       "More infrastructure work in preparation for link-time optimization
        (LTO).  Most of these changes is to make sure symbols accessed from
        assembly code are properly marked as visible so the linker doesn't
        remove them.
      
        My understanding is that the changes to support LTO are still not
        upstream in binutils, but are on the way there.  This patchset should
        conclude the x86-specific changes, and remaining patches to actually
        enable LTO will be fed through the Kbuild tree (other than keeping up
        with changes to the x86 code base, of course), although not
        necessarily in this merge window"
      
      * 'x86-asmlinkage-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (25 commits)
        Kbuild, lto: Handle basic LTO in modpost
        Kbuild, lto: Disable LTO for asm-offsets.c
        Kbuild, lto: Add a gcc-ld script to let run gcc as ld
        Kbuild, lto: add ld-version and ld-ifversion macros
        Kbuild, lto: Drop .number postfixes in modpost
        Kbuild, lto, workaround: Don't warn for initcall_reference in modpost
        lto: Disable LTO for sys_ni
        lto: Handle LTO common symbols in module loader
        lto, workaround: Add workaround for initcall reordering
        lto: Make asmlinkage __visible
        x86, lto: Disable LTO for the x86 VDSO
        initconst, x86: Fix initconst mistake in ts5500 code
        initconst: Fix initconst mistake in dcdbas
        asmlinkage: Make trace_hardirqs_on/off_caller visible
        asmlinkage, x86: Fix 32bit memcpy for LTO
        asmlinkage Make __stack_chk_failed and memcmp visible
        asmlinkage: Mark rwsem functions that can be called from assembler asmlinkage
        asmlinkage: Make main_extable_sort_needed visible
        asmlinkage, mutex: Mark __visible
        asmlinkage: Make trace_hardirq visible
        ...
      176ab02d
    • N
      x86: Adjust irq remapping quirk for older revisions of 5500/5520 chipsets · 6f8a1b33
      Neil Horman 提交于
      Commit 03bbcb2e (iommu/vt-d: add quirk for broken interrupt
      remapping on 55XX chipsets) properly disables irq remapping on the
      5500/5520 chipsets that don't correctly perform that feature.
      
      However, when I wrote it, I followed the errata sheet linked in that
      commit too closely, and explicitly tied the activation of the quirk to
      revision 0x13 of the chip, under the assumption that earlier revisions
      were not in the field.  Recently a system was reported to be suffering
      from this remap bug and the quirk hadn't triggered, because the
      revision id register read at a lower value that 0x13, so the quirk
      test failed improperly.  Given this, it seems only prudent to adjust
      this quirk so that any revision less than 0x13 has the quirk asserted.
      
      [ tglx: Removed the 0x12 comparison of pci id 3405 as this is covered
          	by the <= 0x13 check already ]
      Signed-off-by: NNeil Horman <nhorman@tuxdriver.com>
      Cc: Ingo Molnar <mingo@redhat.com>
      Cc: "H. Peter Anvin" <hpa@zytor.com>
      Cc: x86@kernel.org
      Cc: stable@vger.kernel.org
      Link: http://lkml.kernel.org/r/1394649873-14913-1-git-send-email-nhorman@tuxdriver.comSigned-off-by: NThomas Gleixner <tglx@linutronix.de>
      6f8a1b33
    • L
      Merge branch 'x86-kaslr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · e06df6a7
      Linus Torvalds 提交于
      Pull x86 kaslr update from Ingo Molnar:
       "This adds kernel module load address randomization"
      
      * 'x86-kaslr-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, kaslr: fix module lock ordering problem
        x86, kaslr: randomize module base load address
      e06df6a7
    • L
      Merge branch 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · c0fc3cba
      Linus Torvalds 提交于
      Pull x86 hyperv change from Ingo Molnar:
       "Skip the timer_irq_works() check on hyperv systems"
      
      * 'x86-hyperv-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, hyperv: Bypass the timer_irq_works() check
      c0fc3cba
    • L
      Merge branch 'x86-hash-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · d9fcca40
      Linus Torvalds 提交于
      Pull x86 hashing changes from Ingo Molnar:
       "Small fixes and cleanups to the librarized arch_fast_hash() methods,
        used by the net/openvswitch code"
      
      * 'x86-hash-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, hash: Simplify switch, add __init annotation
        x86, hash: Swap arguments passed to crc32_u32()
        x86, hash: Fix build failure with older binutils
      d9fcca40
    • L
      Merge branch 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 7cc3afdf
      Linus Torvalds 提交于
      Pull x86 EFI changes from Ingo Molnar:
       "The main changes:
      
        - Add debug code to the dump EFI pagetable - Borislav Petkov
      
        - Make 1:1 runtime mapping robust when booting on machines with lots
          of memory - Borislav Petkov
      
        - Move the EFI facilities bits out of 'x86_efi_facility' and into
          efi.flags which is the standard architecture independent place to
          keep EFI state, by Matt Fleming.
      
        - Add 'EFI mixed mode' support: this allows 64-bit kernels to be
          booted from 32-bit firmware.  This needs a bootloader that supports
          the 'EFI handover protocol'.  By Matt Fleming"
      
      * 'x86-efi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (31 commits)
        x86, efi: Abstract x86 efi_early calls
        x86/efi: Restore 'attr' argument to query_variable_info()
        x86/efi: Rip out phys_efi_get_time()
        x86/efi: Preserve segment registers in mixed mode
        x86/boot: Fix non-EFI build
        x86, tools: Fix up compiler warnings
        x86/efi: Re-disable interrupts after calling firmware services
        x86/boot: Don't overwrite cr4 when enabling PAE
        x86/efi: Wire up CONFIG_EFI_MIXED
        x86/efi: Add mixed runtime services support
        x86/efi: Firmware agnostic handover entry points
        x86/efi: Split the boot stub into 32/64 code paths
        x86/efi: Add early thunk code to go from 64-bit to 32-bit
        x86/efi: Build our own EFI services pointer table
        efi: Add separate 32-bit/64-bit definitions
        x86/efi: Delete dead code when checking for non-native
        x86/mm/pageattr: Always dump the right page table in an oops
        x86, tools: Consolidate #ifdef code
        x86/boot: Cleanup header.S by removing some #ifdefs
        efi: Use NULL instead of 0 for pointer
        ...
      7cc3afdf
    • L
      Merge branch 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · ad8946fb
      Linus Torvalds 提交于
      Pull x86 debug cleanup from Ingo Molnar:
       "A single trivial cleanup"
      
      * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        i386: Remove unneeded test of 'task' in dump_trace() (again)
      ad8946fb
    • L
      Merge branch 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 918d80a1
      Linus Torvalds 提交于
      Pull x86 cpu handling changes from Ingo Molnar:
       "Bigger changes:
      
         - Intel CPU hardware-enablement: new vector instructions support
           (AVX-512), by Fenghua Yu.
      
         - Support the clflushopt instruction and use it in appropriate
           places.  clflushopt is similar to clflush but with more relaxed
           ordering, by Ross Zwisler.
      
         - MSR accessor cleanups, by Borislav Petkov.
      
         - 'forcepae' boot flag for those who have way too much time to spend
           on way too old Pentium-M systems and want to live way too
           dangerously, by Chris Bainbridge"
      
      * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, cpu: Add forcepae parameter for booting PAE kernels on PAE-disabled Pentium M
        Rename TAINT_UNSAFE_SMP to TAINT_CPU_OUT_OF_SPEC
        x86, intel: Make MSR_IA32_MISC_ENABLE bit constants systematic
        x86, Intel: Convert to the new bit access MSR accessors
        x86, AMD: Convert to the new bit access MSR accessors
        x86: Add another set of MSR accessor functions
        x86: Use clflushopt in drm_clflush_virt_range
        x86: Use clflushopt in drm_clflush_page
        x86: Use clflushopt in clflush_cache_range
        x86: Add support for the clflushopt instruction
        x86, AVX-512: Enable AVX-512 States Context Switch
        x86, AVX-512: AVX-512 Feature Detection
      918d80a1
    • L
      Merge branch 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 26a5c0df
      Linus Torvalds 提交于
      Pull x86 cleanups from Ingo Molnar:
       "Various smaller cleanups"
      
      * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, pageattr: Correct WBINVD spelling in comment
        x86, crash: Unify ifdef
        x86, boot: Correct max ramdisk size name
      26a5c0df
    • L
      Merge branch 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 54cad627
      Linus Torvalds 提交于
      Pull x86 build change from Ingo Molnar:
       "Explicitly disable x87 FPU instructions, to catch mistaken floating
        point use at build time, instead of crashing or misbehaving during run
        time"
      
      * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86: Disable generation of traditional x87 instructions
      54cad627
    • L
      Merge branch 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 6ed77051
      Linus Torvalds 提交于
      Pull x86 apic changes from Ingo Molnar:
       "An xAPIC CPU hotplug race fix, plus cleanups and minor fixes"
      
      * 'x86-apic-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/apic: Plug racy xAPIC access of CPU hotplug code
        x86/apic: Always define nox2apic and define it as initdata
        x86/apic: Remove unused function prototypes
        x86/apic: Switch wait_for_init_deassert() to a bool flag
        x86/apic: Only use default_wait_for_init_deassert()
      6ed77051
    • L
      Merge branch 'x86-acpi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3a88fe3b
      Linus Torvalds 提交于
      Pull x86 acpi numa fix from Ingo Molnar:
       "A single NUMA CPU hotplug fix"
      
      * 'x86-acpi-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86, acpi: Fix bug in associating hot-added CPUs with corresponding NUMA node
      3a88fe3b