1. 16 Jun, 2015 2 commits
    • Robert Richter's avatar
      ahci: Add support for Cavium's ThunderX host controller · b7ae128d
      Robert Richter authored
      This patch adds support for Cavium's ThunderX host controller. The
      controller resides on the SoC and is a AHCI compatible SATA controller
      with one port, compliant with Serial ATA 3.1 and AHCI Revision 1.31.
      There can exists multiple SATA controllers on the SoC.
      
      The controller depends on MSI-X support since the PCI ECAM controller
      on the SoC does not implement MSI nor lagacy intx interrupt support.
      Thus, during device initialization, if MSI fails MSI-X will be used to
      enable the device's interrupts.
      
      The controller uses non-standard BAR0 for its register range. The
      already existing device lookup (vendor and device id) that is already
      implemented for other host controllers is used to change the PCI BAR.
      Signed-off-by: default avatarRobert Richter <rrichter@cavium.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      b7ae128d
    • Robert Richter's avatar
      ahci: Add generic MSI-X support for single interrupts to SATA PCI driver · ee2aad42
      Robert Richter authored
      This patch adds generic MSI-X support for single interrupts to the
      SATA PCI driver. MSI-X support is needed for host controller that only
      have MSI-X support implemented, but no MSI or intx. This patch only
      adds support for single interrupts, multiple per-port MSI-X interrupts
      are not yet implemented.
      
      The new implementation still initializes MSIs first. Only if that
      fails, the code tries to enable MSI-X. If that fails too, setup is
      continued with intx interrupts.
      
      To not break other chips by this generic code change, there are the
      following precautions:
      
       * Interrupt ranges are not enabled at all.
      
       * Only single interrupt mode is enabled for msix cap devices. Thus,
         only one interrupt will be setup.
      
       * During the discussion with Tejun we agreed to change the init
         sequence from msix-msi-intx to msi-msix-intx. Thus, if a device
         offers msi and init does not fail, the msix init code will not be
         executed. This is equivalent to current code.
      
      With this, the code only setups single mode msix as a last resort if
      msi fails. No interrupt range is enabled at all. Only one interrupt
      will be enabled.
      
      tj: comment edits.
      
      Changes of the patch series:
      
      v5:
       * updated patch subject that the patch only implements single IRQ
       * moved Cavium specific code to a separate patch
       * detect Cavium ThunderX device with PCI_CLASS_STORAGE_SATA_AHCI
         instead of vendor/dev id
       * added more comments to the code
       * enable single msix support for all kind of devices (removing strict
         check)
       * rebased onto update libata/for-4.2 with patch 1, 2 applied
      
      v4:
       * removed implementation of ahci_init_intx()
       * improved patch descriptions
       * rebased onto libata/for-4.2
      
      v3:
       * store irq number in struct ahci_host_priv
       * change initialization order from msix-msi-intx to msi-msix-intx
       * improve comments in ahci_init_msix()
       * improve error message in ahci_init_msix()
       * do not enable MSI-X if MSI is actively disabled for the device
      
      v2:
       * determine irq vector from pci_dev->msi_list
      
      Based on a patch from Sunil Goutham <sgoutham@cavium.com>.
      Signed-off-by: default avatarRobert Richter <rrichter@cavium.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      ee2aad42
  2. 10 Jun, 2015 3 commits
  3. 09 Jun, 2015 1 commit
  4. 03 Jun, 2015 2 commits
    • Robert Richter's avatar
      ahci: Store irq number in struct ahci_host_priv · 21bfd1aa
      Robert Richter authored
      Currently, ahci supports only msi and intx. To also support msix the
      handling of the irq number need to be changed. The irq number for msix
      devices is taken from msi_list instead of pci_dev. Thus, the irq
      number of a device needs to be stored in struct ahci_host_priv now.
      This allows the host controller to be activated in a generic way.
      
      This change is only intended for ahci drivers. For that reason the irq
      number is stored in struct ahci_host_priv used only by ahci drivers.
      Thus, the ABI changes only for ahci_host_activate(), but existing ata
      drivers (about 50) are unaffected and keep unchanged. All users of
      ahci_host_activate() have been updated.
      
      While touching drivers/ata/libahci.c, doing a small code cleanup in
      ahci_port_start().
      Signed-off-by: default avatarRobert Richter <rrichter@cavium.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      21bfd1aa
    • Robert Richter's avatar
      ahci: Move interrupt enablement code to a separate function · a1c82311
      Robert Richter authored
      This patch refactors ahci_init_interrupts() and moves msi code to a
      separate function. Need the split since we add msix initialization in
      a later patch. The initialization for msix will be done after msi but
      before intx.
      Signed-off-by: default avatarRobert Richter <rrichter@cavium.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      a1c82311
  5. 29 May, 2015 1 commit
  6. 26 May, 2015 1 commit
  7. 25 May, 2015 2 commits
  8. 21 May, 2015 2 commits
  9. 18 May, 2015 1 commit
  10. 11 May, 2015 1 commit
    • Suman Tripathi's avatar
      ata: ahci_xgene: Add AHCI Support for 2nd HW version of APM X-Gene SoC AHCI SATA Host controller. · c9802a4b
      Suman Tripathi authored
      This patch enables full AHCI feature support for APM X-Gene SoC SATA
      host controller. The following errata's are removed:
      
      1. 2a0bdff6 ("ahci-xgene: fix the dma state machine lockup for the
                       IDENTIFY DEVICE PIO mode command")
      2. 09c32aaa ("ahci_xgene: Fix the dma state machine lockup for the
                       ATA_CMD_SMART PIO mode command")
      3. 1540035d ("ahci_xgene: Implement the xgene_ahci_poll_reg_val to
                       support PMP")
      4. a3a84bc7 ("ahci_xgene: Implement the workaround to support PMP
                       enumeration and discovery")
      5. 1102407b ("ahci_xgene: Fix the DMA state machine lockup for the
                       ATA_CMD_PACKET PIO mode command")
      6. 72f79f9e ("ahci_xgene: Removing NCQ support from the APM X-Gene
      		SoC AHCI SATA Host Controller driver")
      
      In addition, enable PMP support for APM X-Gene SoC and enable FBS
      support for second generation APM X-Gene SoC.
      Signed-off-by: default avatarSuman Tripathi <stripathi@apm.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      c9802a4b
  11. 10 May, 2015 2 commits
  12. 06 May, 2015 1 commit
  13. 05 May, 2015 4 commits
  14. 03 May, 2015 1 commit
  15. 20 Apr, 2015 1 commit
    • Peter Griffin's avatar
      ata: ahci_st: fixup layering violations / drvdata errors · e0e2674b
      Peter Griffin authored
      Brian noticed while working on another SATA driver that uses libahci_platform,
      an error in this driver; it tries to the the driver data for its
      device, while libata also thinks it can set the driver data. See:
      
        ahci_platform_init_host()
        -> ata_host_alloc_pinfo()
           -> ata_host_alloc()
              -> dev_set_drvdata()
      
      So instead of sticking the IP-specific platform data into drvdata, let's
      use the plat_data variable that is reserved for this use.
      
      Addtionally plat_data isn't set until ahci_platform_init_host() has been
      called further down in probe(). So re-work the st_ahci_probe_resets and
      st_ahci_deassert_resets functions to take ahci_host_priv *hpriv as a
      parameter.
      Signed-off-by: default avatarPeter Griffin <peter.griffin@linaro.org>
      Suggested-by: default avatarBrian Norris <computersforpeace@gmail.com>
      Cc: Srinivas Kandagatla <srinivas.kandagatla@gmail.com>
      Cc: Maxime Coquelin <maxime.coquelin@st.com>
      Cc: Patrice Chotard <patrice.chotard@st.com>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      e0e2674b
  16. 14 Apr, 2015 5 commits
    • Daniel Axtens's avatar
      Remove celleb-only SCC PATA drivers · 5df07b74
      Daniel Axtens authored
      The SCC PATA interface is only used by celleb.
      celleb has been dropped [1], so drop the drivers.
      
      [1] http://patchwork.ozlabs.org/patch/451730/
      
      CC: "David S. Miller" <davem@davemloft.net>
      CC: linux-ide@vger.kernel.org
      CC: Valentin Rothberg <valentinrothberg@gmail.com>
      CC: mpe@ellerman.id.au
      CC: linuxppc-dev@lists.ozlab.org
      Acked-by: default avatarBartlomiej Zolnierkiewicz <b.zolnierkie@samsung.com>
      Signed-off-by: default avatarDaniel Axtens <dja@axtens.net>
      Signed-off-by: default avatarTejun Heo <tj@kernel.org>
      5df07b74
    • Krzysztof Kozlowski's avatar
      ACPI / battery: Fix doubly added battery on system suspend · 31f7dc79
      Krzysztof Kozlowski authored
      Commit 297d716f ("power_supply: Change ownership from driver to
      core") inverted the logic in battery_notify().  As an effect already
      present battery was re-added on each system suspend or hibernation.
      
          WARNING: CPU: 0 PID: 303 at ../fs/sysfs/dir.c:31 sysfs_warn_dup+0x68/0x80()
          sysfs: cannot create duplicate filename '/devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/PNP0C0A:00/power_supply/BAT0'
          CPU: 0 PID: 303 Comm: rtcwake Not tainted 4.0.0-ARCH-02621-g07e6253af953 #48
          Call Trace:
            sysfs_create_dir_ns+0x8d/0xa0
            kobject_add_internal+0xb6/0x370
            kobject_add+0x6f/0xd0
            device_add+0x120/0x6c0
            __power_supply_register+0x145/0x290
            power_supply_register_no_ws+0x10/0x20
            sysfs_add_battery+0x84/0xc5 [battery]
            battery_notify+0x45/0x6b [battery]
            notifier_call_chain+0x4f/0x80
            __blocking_notifier_call_chain+0x4b/0x70
            blocking_notifier_call_chain+0x16/0x20
            pm_notifier_call_chain+0x1a/0x40
            pm_suspend+0x3ed/0x4e0
      Signed-off-by: default avatarKrzysztof Kozlowski <k.kozlowski.k@gmail.com>
      Reported-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      Acked-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      Reviewed-By: default avatarSebastian Reichel <sre@kernel.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      31f7dc79
    • Linus Torvalds's avatar
      Merge tag 'staging-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging · b79013b2
      Linus Torvalds authored
      Pull staging driver updates from Greg KH:
       "Here's the big staging driver patchset for 4.1-rc1.
      
        There's a lot of patches here, the Outreachy application period
        happened during this development cycle, so that means that there was a
        lot of cleanup patches accepted.  Other than the normal coding style
        and sparse fixes here, there are some driver updates and work toward
        making some of the drivers into "mergable" shape (like the Unisys
        drivers.)
      
        All of these have been in linux-next for a while"
      
      * tag 'staging-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/staging: (1214 commits)
        staging: lustre: orthography & coding style
        staging: lustre: lnet: lnet: fix error return code
        staging: lustre: fix sparse warning
        Revert "Staging: sm750fb: Fix C99 Comments"
        Staging: rtl8192u: use correct array for debug output
        staging: rtl8192e: Remove dead code
        staging: rtl8192e: Comment cleanup (style/format)
        staging: rtl8192e: Fix indentation in rtllib_rx_auth_resp()
        staging: rtl8192e: Decrease nesting of rtllib_rx_auth_resp()
        staging: rtl8192e: Divide rtllib_rx_auth()
        staging: rtl8192e: Fix PRINTK_WITHOUT_KERN_LEVEL warnings
        staging: rtl8192e: Fix DO_WHILE_MACRO_WITH_TRAILING_SEMICOLON warning
        staging: rtl8192e: Fix BRACES warning
        staging: rtl8192e: Fix LINE_CONTINUATIONS warning
        staging: rtl8192e: Fix UNNECESSARY_PARENTHESES warnings
        staging: rtl8192e: remove unused EXPORT_SYMBOL_RSL macro
        staging: rtl8192e: Fix RETURN_VOID warnings
        staging: rtl8192e: Fix UNNECESSARY_ELSE warning
        staging: rtl8723au: Remove unneeded comments
        staging: rtl8723au: Use __func__ in trace logs
        ...
      b79013b2
    • Linus Torvalds's avatar
      Merge tag 'driver-core-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core · c4be50ee
      Linus Torvalds authored
      Pull driver core updates from Greg KH:
       "Here's the driver-core / kobject / lz4 tree update for 4.1-rc1.
      
        Everything here has been in linux-next for a while with no reported
        issues.  It's mostly just coding style cleanups, with other minor
        changes in here as well, nothing big"
      
      * tag 'driver-core-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (32 commits)
        debugfs: allow bad parent pointers to be passed in
        stable_kernel_rules: Add clause about specification of kernel versions to patch.
        kobject: WARN as tip when call kobject_get() to a kobject not initialized
        lib/lz4: Pull out constant tables
        drivers: platform: parse IRQ flags from resources
        driver core: Make probe deferral more quiet
        drivers/core/of: Add symlink to device-tree from devices with an OF node
        device: Add dev_of_node() accessor
        drivers: base: fw: fix ret value when loading fw
        firmware: Avoid manual device_create_file() calls
        drivers/base: cacheinfo: validate device node for all the caches
        drivers/base: use tabs where possible in code indentation
        driver core: add missing blank line after declaration
        drivers: base: node: Delete space after pointer declaration
        drivers: base: memory: Use tabs instead of spaces
        firmware_class: Fix whitespace and indentation
        drivers: base: dma-mapping: Erase blank space after pointer
        drivers: base: class: Add a blank line after declarations
        attribute_container: fix missing blank lines after declarations
        drivers: base: memory: Fix switch indent
        ...
      c4be50ee
    • Linus Torvalds's avatar
      Merge tag 'usb-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb · 42e3a58b
      Linus Torvalds authored
      Pull USB driver updates from Greg KH:
       "Here's the big USB (and PHY) driver patchset for 4.1-rc1.
      
        Everything here has been in linux-next, and the full details are below
        in the shortlog.  Nothing major, just the normal round of new
        drivers,api updates, and other changes, mostly in the USB gadget area,
        as usual"
      
      * tag 'usb-4.1-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (252 commits)
        drivers/usb/core: devio.c: Removed an uneeded space before tab
        usb: dwc2: host: sleep USB_RESUME_TIMEOUT during resume
        usb: chipidea: debug: add low power mode check before print registers
        usb: chipidea: udc: bypass pullup DP when gadget connect in OTG fsm mode
        usb: core: hub: use new USB_RESUME_TIMEOUT
        usb: isp1760: hcd: use new USB_RESUME_TIMEOUT
        usb: dwc2: hcd: use new USB_RESUME_TIMEOUT
        usb: host: sl811: use new USB_RESUME_TIMEOUT
        usb: host: r8a66597: use new USB_RESUME_TIMEOUT
        usb: host: oxu210hp: use new USB_RESUME_TIMEOUT
        usb: host: fusbh200: use new USB_RESUME_TIMEOUT
        usb: host: fotg210: use new USB_RESUME_TIMEOUT
        usb: host: isp116x: use new USB_RESUME_TIMEOUT
        usb: musb: use new USB_RESUME_TIMEOUT
        usb: host: uhci: use new USB_RESUME_TIMEOUT
        usb: host: ehci: use new USB_RESUME_TIMEOUT
        usb: host: xhci: use new USB_RESUME_TIMEOUT
        usb: define a generic USB_RESUME_TIMEOUT macro
        usb: musb: dsps: fix build on i386 when COMPILE_TEST is set
        ehci-hub: use USB_DT_HUB
        ...
      42e3a58b
  17. 13 Apr, 2015 10 commits
    • Linus Torvalds's avatar
      Merge branch 'for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup · 4fd48b45
      Linus Torvalds authored
      Pull cgroup updates from Tejun Heo:
       "Nothing too interesting.  Rik made cpuset cooperate better with
        isolcpus and there are several other cleanup patches"
      
      * 'for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
        cpuset, isolcpus: document relationship between cpusets & isolcpus
        cpusets, isolcpus: exclude isolcpus from load balancing in cpusets
        sched, isolcpu: make cpu_isolated_map visible outside scheduler
        cpuset: initialize cpuset a bit early
        cgroup: Use kvfree in pidlist_free()
        cgroup: call cgroup_subsys->bind on cgroup subsys initialization
      4fd48b45
    • Linus Torvalds's avatar
      Merge branch 'for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata · a1480a16
      Linus Torvalds authored
      Pull libata updates from Tejun Heo:
      
       - Hannes's patchset implements support for better error reporting
         introduced by the new ATA command spec.
      
       - the deperecated pci_ dma API usages have been replaced by dma_ ones.
      
       - a bunch of hardware specific updates and some cleanups.
      
      * 'for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/libata:
        ata: remove deprecated use of pci api
        ahci: st: st_configure_oob must be called after IP is clocked.
        ahci: st: Update the ahci_st DT documentation
        ahci: st: Update the DT example for how to obtain the PHY.
        sata_dwc_460ex: indent an if statement
        libata: Add tracepoints
        libata-eh: Set 'information' field for autosense
        libata: Implement support for sense data reporting
        libata: Implement NCQ autosense
        libata: use status bit definitions in ata_dump_status()
        ide,ata: Rename ATA_IDX to ATA_SENSE
        libata: whitespace fixes in ata_to_sense_error()
        libata: whitespace cleanup in ata_get_cmd_descript()
        libata: use READ_LOG_DMA_EXT
        libata: remove ATA_FLAG_LOWTAG
        sata_dwc_460ex: re-use hsdev->dev instead of dwc_dev
        sata_dwc_460ex: move to generic DMA driver
        sata_dwc_460ex: join messages back
        sata: xgene: add ACPI support for APM X-Gene SATA ports
        ata: sata_mv: add proper definitions for LP_PHY_CTL register values
      a1480a16
    • Linus Torvalds's avatar
      Merge branch 'for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq · 45141eea
      Linus Torvalds authored
      Pull workqueue updates from Tejun Heo:
       "Workqueue now prints debug information at the end of sysrq-t which
        should be helpful when tracking down suspected workqueue stalls.  It
        only prints out the ones with something currently going on so it
        shouldn't add much output in most cases"
      
      * 'for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq:
        workqueue: Reorder sysfs code
        percpu: Fix trivial typos in comments
        workqueue: dump workqueues on sysrq-t
        workqueue: keep track of the flushing task and pool manager
        workqueue: make the workqueues list RCU walkable
      45141eea
    • Linus Torvalds's avatar
      Merge branch 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 8954672d
      Linus Torvalds authored
      Pull irq core updates from Thomas Gleixner:
       "Managerial summary:
      
        Core code:
         - final removal of IRQF_DISABLED
         - new state save/restore functions for virtualization support
         - wakeup support for stacked irqdomains
         - new function to solve the netpoll synchronization problem
      
       irqchips:
         - new driver for STi based devices
         - new driver for Vybrid MSCM
         - massive cleanup of the GIC driver by moving the GIC-addons to
           stacked irqdomains
         - the usual pile of fixes and updates to the various chip drivers"
      
      * 'irq-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (44 commits)
        irqchip: GICv3: Add support for irq_[get, set]_irqchip_state()
        irqchip: GIC: Add support for irq_[get, set]_irqchip_state()
        genirq: Allow the irqchip state of an IRQ to be save/restored
        genirq: MSI: Fix freeing of unallocated MSI
        irqchip: renesas-irqc: Add wake-up support
        irqchip: armada-370-xp: Allow using wakeup source
        irqchip: mips-gic: Add new functions to start/stop the GIC counter
        irqchip: tegra: Add Tegra210 support
        irqchip: digicolor: Move digicolor_set_gc to init section
        irqchip: renesas-irqc: Add functional clock to bindings
        irqchip: renesas-irqc: Add minimal runtime PM support
        irqchip: renesas-irqc: Add more register documentation
        DT: exynos: update PMU binding
        ARM: exynos4/5: convert pmu wakeup to stacked domains
        irqchip: gic: Don't complain in gic_get_cpumask() if UP system
        ARM: zynq: switch from gic_arch_extn to gic_set_irqchip_flags
        ARM: ux500: switch from gic_arch_extn to gic_set_irqchip_flags
        ARM: shmobile: remove use of gic_arch_extn.irq_set_wake
        irqchip: gic: Add an entry point to set up irqchip flags
        ARM: omap: convert wakeupgen to stacked domains
        ...
      8954672d
    • Linus Torvalds's avatar
      Merge tag 'pci-v4.1-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci · 3be1b98e
      Linus Torvalds authored
      Pull PCI changes from Bjorn Helgaas:
       "Enumeration
          - Read capability list as dwords, not bytes (Sean O. Stalley)
      
        Resource management
          - Don't check for PNP overlaps with unassigned PCI BARs (Bjorn Helgaas)
          - Mark invalid BARs as unassigned (Bjorn Helgaas)
          - Show driver, BAR#, and resource on pci_ioremap_bar() failure (Bjorn Helgaas)
          - Fail pci_ioremap_bar() on unassigned resources (Bjorn Helgaas)
          - Assign resources before drivers claim devices (Yijing Wang)
          - Claim bus resources before pci_bus_add_devices() (Yijing Wang)
      
        Power management
          - Optimize device state transition delays (Aaron Lu)
          - Don't clear ASPM bits when the FADT declares it's unsupported (Matthew Garrett)
      
        Virtualization
          - Add ACS quirks for Intel 1G NICs (Alex Williamson)
      
        IOMMU
          - Add ptr to OF node arg to of_iommu_configure() (Murali Karicheri)
          - Move of_dma_configure() to device.c to help re-use (Murali Karicheri)
          - Fix size when dma-range is not used (Murali Karicheri)
          - Add helper functions pci_get[put]_host_bridge_device() (Murali Karicheri)
          - Add of_pci_dma_configure() to update DMA configuration (Murali Karicheri)
          - Update DMA configuration from DT (Murali Karicheri)
          - dma-mapping: limit IOMMU mapping size (Murali Karicheri)
          - Calculate device DMA masks based on DT dma-range size (Murali Karicheri)
      
        ARM Versatile host bridge driver
          - Check for devm_ioremap_resource() failures (Jisheng Zhang)
      
        Broadcom iProc host bridge driver
          - Add Broadcom iProc PCIe driver (Ray Jui)
      
        Marvell MVEBU host bridge driver
          - Add suspend/resume support (Thomas Petazzoni)
      
        Renesas R-Car host bridge driver
          - Fix position of MSI enable bit (Nobuhiro Iwamatsu)
          - Write zeroes to reserved PCIEPARL bits (Nobuhiro Iwamatsu)
          - Change PCIEPARL and PCIEPARH to PCIEPALR and PCIEPAUR (Nobuhiro Iwamatsu)
          - Verify that mem_res is 64K-aligned (Nobuhiro Iwamatsu)
      
        Samsung Exynos host bridge driver
          - Fix INTx enablement statement termination error (Jaehoon Chung)
      
        Miscellaneous
          - Make a shareable UUID for PCI firmware ACPI _DSM (Aaron Lu)
          - Clarify policy for vendor IDs in pci.txt (Michael S. Tsirkin)"
      
      * tag 'pci-v4.1-changes' of git://git.kernel.org/pub/scm/linux/kernel/git/helgaas/pci: (36 commits)
        PCI: Read capability list as dwords, not bytes
        PCI: layerscape: Simplify platform_get_resource_byname() failure checking
        PCI: keystone: Don't dereference possible NULL pointer
        PCI: versatile: Check for devm_ioremap_resource() failures
        PCI: Don't clear ASPM bits when the FADT declares it's unsupported
        PCI: Clarify policy for vendor IDs in pci.txt
        PCI/ACPI: Optimize device state transition delays
        PCI: Export pci_find_host_bridge() for use inside PCI core
        PCI: Make a shareable UUID for PCI firmware ACPI _DSM
        PCI: Fix typo in Thunderbolt kernel message
        PCI: exynos: Fix INTx enablement statement termination error
        PCI: iproc: Add Broadcom iProc PCIe support
        PCI: iproc: Add DT docs for Broadcom iProc PCIe driver
        PCI: Export symbols required for loadable host driver modules
        PCI: Add ACS quirks for Intel 1G NICs
        PCI: mvebu: Add suspend/resume support
        PCI: Cleanup control flow
        sparc/PCI: Claim bus resources before pci_bus_add_devices()
        PCI: Assign resources before drivers claim devices (pci_scan_root_bus())
        PCI: Fail pci_ioremap_bar() on unassigned resources
        ...
      3be1b98e
    • Linus Torvalds's avatar
      Merge tag 'hsi-for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi · 392b46f3
      Linus Torvalds authored
      Pull HSI changes from Sebastian Reichel:
      
       - nokia-modem: support speech data
       - misc fixes
      
      * tag 'hsi-for-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/sre/linux-hsi:
        HSI: cmt_speech: fix error return code
        HSI: nokia-modem: Add cmt-speech support
        HSI: cmt_speech: Add cmt-speech driver
        HSI: nokia-modem: fix error return code
      392b46f3
    • Linus Torvalds's avatar
      Merge tag 'for-v4.1' of git://git.infradead.org/battery-2.6 · a21c1ea6
      Linus Torvalds authored
      Pull power supply and reset changes from Sebastian Reichel:
      
       - new API for safe access of power supply function attrs
      
       - devres support for power supply (un)registration
      
       - new drivers / chips:
           - generic syscon based poweroff driver
           - iio & charger driver for da9150
           - fuel gauge driver for axp288
           - bq27x00: add support for bq27510
           - bq2415x: add support for bq24157s
      
       - twl4030-madc-battery: convert to iio consumer
      
       - misc fixes
      
      * tag 'for-v4.1' of git://git.infradead.org/battery-2.6: (66 commits)
        power: twl4030_madc_battery: Add missing MODULE_ALIAS
        power: twl4030-madc-battery: Convert to iio consumer.
        dt: power: Add docs for generic SYSCON poweroff driver.
        power: reset: Add generic SYSCON register mapped poweroff.
        power: max17042_battery: add missed blank
        power: max17042_battery: Use reg type instead of chip type
        power/reset: at91: big endian fixes for atsama5d3x
        power_supply: charger-manager: Fix dereferencing of ERR_PTR
        HID: input: Fix NULL pointer dereference when power_supply_register fails
        power: constify of_device_id array
        power/reset/rmobile-reset.c: Fix !HAS_IOMEM build
        power_supply: 88pm860x_charger: Fix possible NULL pointer dereference and use of initialized variable
        arm: mach-pxa: Decrement the power supply's device reference counter
        mfd: ab8500: Decrement the power supply's device reference counter
        power_supply: bq2415x_charger: Decrement the power supply's device reference counter
        power_supply: 88pm860x_charger: Decrement the power supply's device reference counter
        x86/olpc/xo15/sci: Use newly added power_supply_put API
        x86/olpc/xo1/sci: Use newly added power_supply_put API
        power_supply: charger-manager: Decrement the power supply's device reference counter
        power_supply: Increment power supply use counter when obtaining references
        ...
      a21c1ea6
    • Linus Torvalds's avatar
      Merge tag 'regulator-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · d700b056
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "Another release, another set of regulator updates.  Not much of it is
        showing up in the code yet but there's been a lot of discussion going
        on about how to enhance the regulator API to work better with modern
        SoCs which have a microcontroller sitting between Linux and the
        hardware.
      
        I'm hopeful that'll start to come through into mainline for v4.2 but
        it's not quite there for v4.1 - what we do have (along with the usual
        small updates is) is:
      
         - work from Bjorn Andersson on refactoring the configuration of
           regulator loading interfaces to be useful for use with
           microcontrollers, the existing interfaces were never actually
           useful for anything as-is since nobody was willing to put enough
           data into public code.
      
         - a summary tree display in debugfs from Heiko Stübner.
      
         - support for act6000 regulators"
      
      * tag 'regulator-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (34 commits)
        regulator: max8660: Handle empty regulator data
        regulator: output current-limit for all regulators in summary
        regulator: add a summary tree in debugfs
        regulator: qcom: Tidy up probe()
        regulator: qcom: Rework to single platform device
        regulator: qcom: Refactor of-parsing code
        regulator: qcom: Don't enable DRMS in driver
        regulator: max8660: fix assignment of pdata to data that becomes dead
        regulator: Defer lookup of supply to regulator_get
        mfd: max77693: Remove unused structures
        regulator: max77693: Let core parse DT and drop board files support
        regulator: Ensure unique regulator debugfs directory names
        regulator: stw481x: Remove unused fields from struct stw481x
        regulator: palmas: Add has_regen3 check for TPS659038
        regulator: constify of_device_id array
        regulator: fixes for regulator_set_optimum_mode name change
        regulator: Drop temporary regulator_set_optimum_mode wrapper
        usb: phy: phy-msm-usb: Rename regulator_set_optimum_mode
        usb: phy: ab8500-usb: Rename regulator_set_optimum_mode
        ufs: Rename of regulator_set_optimum_mode
        ...
      d700b056
    • Linus Torvalds's avatar
      Merge tag 'spi-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 0055dc5b
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "Only one framework update this time around, a change from Lars-Peter
        to move full to pm_ops and remove the legacy bus PM ops.  Otherwise
        it's all driver updates:
      
         - make the spidev driver complain loudly if registered as spidev with
           DT rather than with a compatible string, hopefully helping people
           avoid making that mistake.
      
         - error handling and robustness fixes for the Designware and Intel
           MID drivers from Andy Shevchenko.
      
         - substantial performance improvements for the Raspberry Pi driver
           from Martin Sperl.
      
         - several new features for spidev_test from Adrian Remonda and Ian
           Abbott"
      
      * tag 'spi-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (75 commits)
        spi: bcm2835: enabling polling mode for transfers shorter than 30us
        spi: bcm2835: transform native-cs to gpio-cs on first spi_setup
        spi: img-spfi: Control CS lines with GPIO
        spi: img-spfi: Reset controller after each message
        spi: img-spfi: Implement a handle_err() callback
        spi: img-spfi: Setup TRANSACTION register before CONTROL register
        spi: Make master->handle_err() callback optional to avoid crashes
        spi: img-spfi: Limit bit clock to 1/4th of input clock
        spi: img-spfi: Implement a prepare_message() callback
        spi: fsl-dspi: Add ~50ns delay between cs and sck
        spi: fsl-dspi: Add cs-sck delays
        spi: fsl-dspi: Fix clock rate scale values
        spi: signedness bug in qspi_trigger_transfer_out_int()
        spi: imx: read back the RX/TX watermark levels earlier
        spi: spi-bfin5xx: Initialize cr_width in bfin_spi_pump_transfers()
        spi: bitbang: only toggle bitchanges
        spi: pxa2xx: missing break in pxa2xx_ssp_get_clk_div()
        spi: fsl-dspi: Fix clock rate scale values
        spi: Using Trigger number to transmit/receive data
        spi: bcm2835: fill FIFO before enabling interrupts to reduce interrupts/message
        ...
      0055dc5b
    • Linus Torvalds's avatar
      Merge tag 'regmap-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · 1b57c7c2
      Linus Torvalds authored
      Pull regmap update from Mark Brown:
       "Just one patch for regmap this time around, a change from Steven
        Rostedt to prettify the way we're making the regmap internal header
        available to the trace events (it turns out that the trace subsystem
        doesn't actually need to be in trace/events)"
      
      * tag 'regmap-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: Move tracing header into drivers/base/regmap
      1b57c7c2