15 Apr, 2015

6 commits

  • Pull tracing updates from Steven Rostedt:
    "Some clean ups and small fixes, but the biggest change is the addition
    of the TRACE_DEFINE_ENUM() macro that can be used by tracepoints.

    Tracepoints have helper functions for the TP_printk() called
    __print_symbolic() and __print_flags() that lets a numeric number be
    displayed as a a human comprehensible text. What is placed in the
    TP_printk() is also shown in the tracepoint format file such that user
    space tools like perf and trace-cmd can parse the binary data and
    express the values too. Unfortunately, the way the TRACE_EVENT()
    macro works, anything placed in the TP_printk() will be shown pretty
    much exactly as is. The problem arises when enums are used. That's
    because unlike macros, enums will not be changed into their values by
    the C pre-processor. Thus, the enum string is exported to the format
    file, and this makes it useless for user space tools.

    The TRACE_DEFINE_ENUM() solves this by converting the enum strings in
    the TP_printk() format into their number, and that is what is shown to
    user space. For example, the tracepoint tlb_flush currently has this
    in its format file:

    __print_symbolic(REC->reason,
    { TLB_FLUSH_ON_TASK_SWITCH, "flush on task switch" },
    { TLB_REMOTE_SHOOTDOWN, "remote shootdown" },
    { TLB_LOCAL_SHOOTDOWN, "local shootdown" },
    { TLB_LOCAL_MM_SHOOTDOWN, "local mm shootdown" })

    After adding:

    TRACE_DEFINE_ENUM(TLB_FLUSH_ON_TASK_SWITCH);
    TRACE_DEFINE_ENUM(TLB_REMOTE_SHOOTDOWN);
    TRACE_DEFINE_ENUM(TLB_LOCAL_SHOOTDOWN);
    TRACE_DEFINE_ENUM(TLB_LOCAL_MM_SHOOTDOWN);

    Its format file will contain this:

    __print_symbolic(REC->reason,
    { 0, "flush on task switch" },
    { 1, "remote shootdown" },
    { 2, "local shootdown" },
    { 3, "local mm shootdown" })"

    * tag 'trace-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace: (27 commits)
    tracing: Add enum_map file to show enums that have been mapped
    writeback: Export enums used by tracepoint to user space
    v4l: Export enums used by tracepoints to user space
    SUNRPC: Export enums in tracepoints to user space
    mm: tracing: Export enums in tracepoints to user space
    irq/tracing: Export enums in tracepoints to user space
    f2fs: Export the enums in the tracepoints to userspace
    net/9p/tracing: Export enums in tracepoints to userspace
    x86/tlb/trace: Export enums in used by tlb_flush tracepoint
    tracing/samples: Update the trace-event-sample.h with TRACE_DEFINE_ENUM()
    tracing: Allow for modules to convert their enums to values
    tracing: Add TRACE_DEFINE_ENUM() macro to map enums to their values
    tracing: Update trace-event-sample with TRACE_SYSTEM_VAR documentation
    tracing: Give system name a pointer
    brcmsmac: Move each system tracepoints to their own header
    iwlwifi: Move each system tracepoints to their own header
    mac80211: Move message tracepoints to their own header
    tracing: Add TRACE_SYSTEM_VAR to xhci-hcd
    tracing: Add TRACE_SYSTEM_VAR to kvm-s390
    tracing: Add TRACE_SYSTEM_VAR to intel-sst
    ...

    Linus Torvalds
     
  • Pull tracefs from Steven Rostedt:
    "This adds the new tracefs file system.

    This has been in linux-next for more than one release, as I had it
    ready for the 4.0 merge window, but a last minute thing that needed to
    go into Linux first had to be done. That was that perf hard coded the
    file system number when reading /sys/kernel/debugfs/tracing directory
    making sure that the path had the debugfs mount # before it would
    parse the tracing file. This broke other use cases of perf, and the
    check is removed.

    Now when mounting /sys/kernel/debug, tracefs is automatically mounted
    in /sys/kernel/debug/tracing such that old tools will still see that
    path as expected. But now system admins can mount tracefs directly
    and not need to mount debugfs, which can expose security issues. A
    new directory is created when tracefs is configured such that system
    admins can now mount it separately (/sys/kernel/tracing)"

    * tag 'trace-4.1-tracefs' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace:
    tracing: Have mkdir and rmdir be part of tracefs
    tracefs: Add directory /sys/kernel/tracing
    tracing: Automatically mount tracefs on debugfs/tracing
    tracing: Convert the tracing facility over to use tracefs
    tracefs: Add new tracefs file system
    tracing: Create cmdline tracer options on tracing fs init
    tracing: Only create tracer options files if directory exists
    debugfs: Provide a file creation function that also takes an initial size

    Linus Torvalds
     
  • Pull livepatching updates from Jiri Kosina:
    "These are mostly smaller things that got accumulated during the
    development cycle. The unified solution is still being worked on and
    is not mature enough for 4.1 yet.

    - s390 livepatching support, from Jiri Slaby (has Ack from s390
    maintainers)

    - error handling simplification, from Josh Poimboeuf

    - two minor code cleanups from Josh Poimboeuf and Miroslav Benes"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/livepatching:
    livepatch: add support on s390
    livepatch: remove unnecessary call to klp_find_object_module()
    livepatch: simplify disable error path
    livepatch: remove extern specifier from header files

    Linus Torvalds
     
  • Pull trivial tree from Jiri Kosina:
    "Usual trivial tree updates. Nothing outstanding -- mostly printk()
    and comment fixes and unused identifier removals"

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial:
    goldfish: goldfish_tty_probe() is not using 'i' any more
    powerpc: Fix comment in smu.h
    qla2xxx: Fix printks in ql_log message
    lib: correct link to the original source for div64_u64
    si2168, tda10071, m88ds3103: Fix firmware wording
    usb: storage: Fix printk in isd200_log_config()
    qla2xxx: Fix printk in qla25xx_setup_mode
    init/main: fix reset_device comment
    ipwireless: missing assignment
    goldfish: remove unreachable line of code
    coredump: Fix do_coredump() comment
    stacktrace.h: remove duplicate declaration task_struct
    smpboot.h: Remove unused function prototype
    treewide: Fix typo in printk messages
    treewide: Fix typo in printk messages
    mod_devicetable: fix comment for match_flags

    Linus Torvalds
     
  • Pull HID updates from Jiri Kosina:

    - quite a few firmware fixes for RMI driver by Andrew Duggan

    - huion and uclogic drivers have been substantially overlaping in
    functionality laterly. This redundancy is fixed by hid-huion driver
    being merged into hid-uclogic; work done by Benjamin Tissoires and
    Nikolai Kondrashov

    - i2c-hid now supports ACPI GPIO interrupts; patch from Mika Westerberg

    - Some of the quirks, that got separated into individual drivers, have
    historically had EXPERT dependency. As HID subsystem matured (as
    well as the individual drivers), this made less and less sense. This
    dependency is now being removed by patch from Jean Delvare

    - Logitech lg4ff driver received a couple of improvements for mode
    switching, by Michal Malý

    - multitouch driver now supports clickpads, patches by Benjamin
    Tissoires and Seth Forshee

    - hid-sensor framework received a substantial update; namely support
    for Custom and Generic pages is being added; work done by Srinivas
    Pandruvada

    - wacom driver received substantial update; it now supports
    i2c-conntected devices (Mika Westerberg), Bamboo PADs are now
    properly supported (Benjamin Tissoires), much improved battery
    reporting (Jason Gerecke) and pen proximity cleanups (Ping Cheng)

    - small assorted fixes and device ID additions

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/hid: (68 commits)
    HID: sensor: Update document for custom sensor
    HID: sensor: Custom and Generic sensor support
    HID: debug: fix error handling in hid_debug_events_read()
    Input - mt: Fix input_mt_get_slot_by_key
    HID: logitech-hidpp: fix error return code
    HID: wacom: Add support for Cintiq 13HD Touch
    HID: logitech-hidpp: add a module parameter to keep firmware gestures
    HID: usbhid: yet another mouse with ALWAYS_POLL
    HID: usbhid: more mice with ALWAYS_POLL
    HID: wacom: set stylus_in_proximity before checking touch_down
    HID: wacom: use wacom_wac_finger_count_touches to set touch_down
    HID: wacom: remove hardcoded WACOM_QUIRK_MULTI_INPUT
    HID: pidff: effect can't be NULL
    HID: add quirk for PIXART OEM mouse used by HP
    HID: add HP OEM mouse to quirk ALWAYS_POLL
    HID: wacom: ask for a in-prox report when it was missed
    HID: hid-sensor-hub: Fix sparse warning
    HID: hid-sensor-hub: fix attribute read for logical usage id
    HID: plantronics: fix Kconfig default
    HID: pidff: support more than one concurrent effect
    ...

    Linus Torvalds
     
  • Commit 297d716f6260 ("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: Krzysztof Kozlowski
    Reported-by: Linus Torvalds
    Acked-by: Rafael J. Wysocki
    Reviewed-By: Sebastian Reichel
    Signed-off-by: Linus Torvalds

    Krzysztof Kozlowski
     

14 Apr, 2015

34 commits

  • 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
    ...

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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

    Linus Torvalds
     
  • 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

    Linus Torvalds
     
  • 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

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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
    ...

    Linus Torvalds
     
  • 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

    Linus Torvalds
     
  • Jiri Kosina
     
  • Jiri Kosina
     
  • Pull MMC updates from Ulf Hansson:
    "MMC core:
    - Add support for marking HPI as broken through devicetree
    - Enable runtime PM management of host devices
    - Remove the ->enable|disable() callbacks
    - Restructure code and cleanups
    - Refreshed some of the MMC sections in MAINTAINERS

    MMC host:
    - dw_mmc: HS400 mode support
    - dw_mmc: Add the cmd11 timer to detect a timeout
    - dw_mmc: Endian agnostic IO accessors
    - dw_mmc: Bugfixes
    - sh_mmcif: Add exclusion between cmd and interrupt
    - omap_hsmmc: Hibernation support
    - omap_hsmmc: Rework and simplify cover/card detect
    - omap_hsmmc: Stop using ->enable|disable() callbacks
    - atmel-mci: Endian agnostic IO
    - sunxi: Enable MMC_CAP_SDIO_IRQ
    - sdhci-st: Add support for the stih407 family silicon
    - sdhci-st: UHS card support in SDR104 mode
    - sdhci-st: HS200 mode support
    - sdhci-esdhc-imx: Use common mmc DT parser
    - sdhci-of-arasan: Use common mmc DT parser
    - sdhci-iproc: Add new driver for Broadcom IPROC SDHCI controller
    - sdhci-tegra: Convert to GPIO descriptors
    - sdhci-tegra: Optmize write_w path for tegra114 and later
    - sdhci-sirf: Update tuning procedure
    - sdhci: Fix card presence logic
    - sdhci: Cleanups and consolidation"

    * tag 'mmc-v4.1' of git://git.linaro.org/people/ulf.hansson/mmc: (79 commits)
    mmc: sdhci-st: Update ST SDHCI binding documentation.
    mmc: sdhci-st: Update the quirks for this controller.
    mmc: sdhci-st: Add sdhci_st_set_uhs_signaling function.
    mmc: sdhci-st: Add st_mmcss_cconfig function to configure mmcss glue registers.
    mmc: sdhci-st: Add delay management functions for top registers (eMMC).
    mmc: sdhci-st: Add support for de-asserting reset signal and top regs resource
    mmc: sdhci-st: Add macros for register offsets and bitfields for mmcss glue regs
    mmc: sdhci-esdhc-imx: Call mmc_of_parse()
    mmc: dw_mmc: Add locking around cmd11 timer
    mmc: dw_mmc: Add a return in an unexpected cmd11 timeout
    mmc: dw_mmc: Increase cmd11 timeout to 500ms
    mmc: dw_mmc: fix fifo ordering in big endian
    mmc: dw_mmc: change idmac descriptor files to __le32
    mmc: dw_mmc: make IO accessors endian agnostic
    mmc: core: Convert the error field in struct mmc_command|data into an int
    mmc: sdhci-of-arasan: Call OF parsing for MMC
    mmc: sdhci-pci: fix 64 BIT DMA quirks for rtsx
    mmc: Add support for marking hpi as broken through devicetree
    mmc: sdhci-tegra: convert to use GPIO descriptors
    mmc: omap_hsmmc: use generic slot-gpio isr to manage card detect pin
    ...

    Linus Torvalds
     
  • Pull EDAC updates from Borislav Petkov:

    - convert a bunch of drivers to static attribute groups (Takashi Iwai)

    - misc cleanups

    * tag 'edac_for_4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/bp/bp:
    EDAC: Constify of_device_id array
    EDAC, i82443bxgx: Don't export static symbol
    EDAC, amd64_edac: Get rid of per-node driver instances
    EDAC: Properly unwind on failure path in edac_init()
    EDAC: highbank: Use static attribute groups for sysfs entries
    EDAC: octeon: Use static attribute groups for sysfs entries
    EDAC: mpc85xx: Use static attribute groups for sysfs entries
    EDAC: i7core: Use static attribute groups for sysfs entries
    EDAC: i7core: Return proper error codes for kzalloc() errors
    EDAC: amd64: Use static attribute groups
    EDAC: Allow to pass driver-specific attribute groups
    EDAC: Use static attribute groups for managing sysfs entries
    EDAC: Delete unnecessary checks before pci_dev_put()

    Linus Torvalds
     
  • Conflicts:
    drivers/iio/common/hid-sensors/hid-sensor-trigger.c
    include/linux/hid-sensor-hub.h

    Jiri Kosina
     
  • …c-merge', 'for-4.1/i2c-hid', 'for-4.1/kconfig-drop-expert-dependency', 'for-4.1/logitech', 'for-4.1/multitouch', 'for-4.1/rmi', 'for-4.1/sony', 'for-4.1/upstream' and 'for-4.1/wacom' into for-linus

    Jiri Kosina
     
  • …t/groeck/linux-staging

    Pull hwmon updates from Guenter Roeck:
    "Support for new chips:

    - add support for IT8620E, IT8781F, IT8786E, and IT8790E to it87
    driver

    - add driver for NCT7904

    Functional improvements:

    - support for new devicetree structure in ibmpowernv driver

    - register pwm-fan and gpio-fan drivers as thermal cooling devices

    - various minor cleanup and improvements to it87, nct6775, jc42,
    ibmpex, and coretemp drivers"

    * tag 'hwmon-for-linus-v4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging: (43 commits)
    hwmon: (pwm-fan) Update the duty cycle inorder to control the pwm-fan
    hwmon: (it87) Use feature macros on sio_data
    hwmon: (ibmpowernv) Fix build error seen for some configurations
    hwmon: (gpio-fan) Move the thermal registration after registration is complete
    hwmon: (ibmpowernv) pretty print labels
    hwmon: (ibmpowernv) add a label attribute
    hwmon: (ibmpowernv) add support for the new device tree
    hwmon: (ibmpowernv) add a helper routine create_hwmon_attr
    hwmon: (it87) Add support for 6th fan of IT8620E
    hwmon: (it87) Add support for IT8620E
    hwmon: (it87) Add support for IT8790E
    hwmon: (it87) Introduce feature flag to reflect internal in7 sensor
    hwmon: (it87) Introduce configuration field for chip suffix
    hwmon: (it87) Fix PWM frequency display for chips with newer PWM control
    hwmon: (it87) Fix pwm sysfs attribute removal
    hwmon: (ibmpowernv) do not use the OPAL index for hwmon attribute names
    hwmon: (ibmpowernv) change create_hwmon_attr_name() prototype
    hwmon: (ibmpowernv) add a convert_opal_attr_name() routine
    hwmon: (ibmpowernv) add a get_sensor_type() routine
    hwmon: (ibmpowernv) replace AMBIENT_TEMP by TEMP
    ...

    Linus Torvalds
     
  • Pull avr32 fix from Hans-Christian Egtvedt.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/egtvedt/linux-avr32:
    avr32: fix integer overflow in ELF_ET_DYN_BASE

    Linus Torvalds
     
  • Pull m68k updates from Geert Uytterhoeven.

    * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k:
    m68k/mac: Fix out-of-bounds array index in OSS IRQ source initialization
    m68k/pci: Remove a superflous KERN_ERR
    m68k/defconfig: Update defconfigs for v4.0-rc1
    m68k/q40: Make NE2000 builtin instead of modular
    m68k: Remove FSF address

    Linus Torvalds
     
  • Pull x86 vdso changes from Ingo Molnar:
    "Misc vDSO updates"

    * 'x86-vdso-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/vdso: Remove x32 intermediates during 'make clean'
    x86/vdso: Teach 'make clean' to remove generated vdso-image-*.c files
    x86/vdso32/syscall.S: Do not load __USER32_DS to %ss
    x86/vdso: Fix the x86 vdso2c tool includes

    Linus Torvalds
     
  • Pull x86 fix from Ingo Molnar:
    "Leftover from 4.0

    Fix a local stack variable corruption with certain kdump usage
    patterns (Dave Young)"

    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/mm/numa: Fix kernel stack corruption in numa_init()->numa_clear_kernel_node_hotplug()

    Linus Torvalds
     
  • Pull x86 RAS changes from Ingo Molnar:
    "The main changes in this cycle were:

    - Simplify the CMCI storm logic on Intel CPUs after yet another
    report about a race in the code (Borislav Petkov)

    - Enable the MCE threshold irq on AMD CPUs by default (Aravind
    Gopalakrishnan)

    - Add AMD-specific MCE-severity grading function. Further error
    recovery actions will be based on its output (Aravind Gopalakrishnan)

    - Documentation updates (Borislav Petkov)

    - ... assorted fixes and cleanups"

    * 'x86-ras-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/mce/severity: Fix warning about indented braces
    x86/mce: Define mce_severity function pointer
    x86/mce: Add an AMD severities-grading function
    x86/mce: Reindent __mcheck_cpu_apply_quirks() properly
    x86/mce: Use safe MSR accesses for AMD quirk
    x86/MCE/AMD: Enable thresholding interrupts by default if supported
    x86/MCE: Make mce_panic() fatal machine check msg in the same pattern
    x86/MCE/intel: Cleanup CMCI storm logic
    Documentation/acpi/einj: Correct and streamline text
    x86/MCE/AMD: Drop bogus const modifier from AMD's bank4_names()

    Linus Torvalds
     
  • Pull x86 platform change from Ingo Molnar:
    "An Intel Quark SoC fix"

    * 'x86-platform-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/intel/quark: Run IMR self-test on IMR capble hw only

    Linus Torvalds
     
  • Pull x86 mm changes from Ingo Molnar:
    "The main changes in this cycle were:

    - reduce the x86/32 PAE per task PGD allocation overhead from 4K to
    0.032k (Fenghua Yu)

    - early_ioremap/memunmap() usage cleanups (Juergen Gross)

    - gbpages support cleanups (Luis R Rodriguez)

    - improve AMD Bulldozer (family 0x15) ASLR I$ aliasing workaround to
    increase randomization by 3 bits (per bootup) (Hector
    Marco-Gisbert)

    - misc fixlets"

    * 'x86-mm-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/mm: Improve AMD Bulldozer ASLR workaround
    x86/mm/pat: Initialize __cachemode2pte_tbl[] and __pte2cachemode_tbl[] in a bit more readable fashion
    init.h: Clean up the __setup()/early_param() macros
    x86/mm: Simplify probe_page_size_mask()
    x86/mm: Further simplify 1 GB kernel linear mappings handling
    x86/mm: Use early_param_on_off() for direct_gbpages
    init.h: Add early_param_on_off()
    x86/mm: Simplify enabling direct_gbpages
    x86/mm: Use IS_ENABLED() for direct_gbpages
    x86/mm: Unexport set_memory_ro() and set_memory_rw()
    x86/mm, efi: Use early_ioremap() in arch/x86/platform/efi/efi-bgrt.c
    x86/mm: Use early_memunmap() instead of early_iounmap()
    x86/mm/pat: Ensure different messages in STRICT_DEVMEM and PAT cases
    x86/mm: Reduce PAE-mode per task pgd allocation overhead from 4K to 32 bytes

    Linus Torvalds
     
  • Pull x86 microcode changes from Ingo Molnar:
    "Microcode driver updates: mostly cleanups but also some fixes
    (Borislav Petkov)"

    * 'x86-microcode-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/microcode/amd: Drop the pci_ids.h dependency
    x86/microcode/intel: Fix printing of microcode blobs in show_saved_mc()
    x86/microcode/intel: Check scan_microcode()'s retval
    x86/microcode/intel: Sanitize microcode_pointer()
    x86/microcode/intel: Move mc arg last in get_matching_{microcode|sig}
    x86/microcode/intel: Simplify generic_load_microcode_early()
    x86/microcode: Consolidate family,model, ... code
    x86/microcode/intel: Rename update_match_revision()
    x86/microcode/intel: Sanitize _save_mc()
    x86/microcode/intel: Make _save_mc() return the updated saved count
    x86/microcode/intel: Simplify load_ucode_intel_bsp()
    x86/microcode/intel: Get rid of last arg to load_ucode_intel_bsp()
    x86/microcode/intel: Do the mc_saved_src NULL check first
    x86/microcode/intel: Check if microcode was found before applying
    x86/microcode/intel: Fix out of bounds memory access to the extended header

    Linus Torvalds
     
  • Pull x86 fpu changes from Ingo Molnar:
    "Various x86 FPU handling cleanups, refactorings and fixes (Borislav
    Petkov, Oleg Nesterov, Rik van Riel)"

    * 'x86-fpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (21 commits)
    x86/fpu: Kill eager_fpu_init_bp()
    x86/fpu: Don't allocate fpu->state for swapper/0
    x86/fpu: Rename drop_init_fpu() to fpu_reset_state()
    x86/fpu: Fold __drop_fpu() into its sole user
    x86/fpu: Don't abuse drop_init_fpu() in flush_thread()
    x86/fpu: Use restore_init_xstate() instead of math_state_restore() on kthread exec
    x86/fpu: Introduce restore_init_xstate()
    x86/fpu: Document user_fpu_begin()
    x86/fpu: Factor out memset(xstate, 0) in fpu_finit() paths
    x86/fpu: Change xstateregs_get()/set() to use ->xsave.i387 rather than ->fxsave
    x86/fpu: Don't abuse FPU in kernel threads if use_eager_fpu()
    x86/fpu: Always allow FPU in interrupt if use_eager_fpu()
    x86/fpu: __kernel_fpu_begin() should clear fpu_owner_task even if use_eager_fpu()
    x86/fpu: Also check fpu_lazy_restore() when use_eager_fpu()
    x86/fpu: Use task_disable_lazy_fpu_restore() helper
    x86/fpu: Use an explicit if/else in switch_fpu_prepare()
    x86/fpu: Introduce task_disable_lazy_fpu_restore() helper
    x86/fpu: Move lazy restore functions up a few lines
    x86/fpu: Change math_error() to use unlazy_fpu(), kill (now) unused save_init_fpu()
    x86/fpu: Don't do __thread_fpu_end() if use_eager_fpu()
    ...

    Linus Torvalds
     
  • Pull x86 debug changes from Ingo Molnar:
    "Stack printing fixlets"

    * 'x86-debug-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/kernel: Use kstack_end() in dumpstack_64.c
    x86/kernel: Fix output of show_stack_log_lvl()

    Linus Torvalds
     
  • Pull x86 cacheinfo sysfs changes from Ingo Molnar:
    "This tree converts the x86 cacheinfo sysfs code to use the generic
    code in drivers/base/cacheinfo.c.

    It's not intended to change the sysfs ABI:

    'This patch neither alters any existing sysfs entries nor their
    formating, however since the generic cacheinfo has switched to
    use the device attributes instead of the traditional raw
    kobjects, a directory named 'power' along with its standard
    attributes are added similar to any other device'"

    * 'x86-cpu-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/cpu/cacheinfo: Fix cache_get_priv_group() for Intel processors
    x86/cacheinfo: Move cacheinfo sysfs code to generic infrastructure

    Linus Torvalds
     
  • Pull x86 cleanups from Ingo Molnar:
    "Various cleanups"

    * 'x86-cleanups-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/iommu: Fix header comments regarding standard and _FINISH macros
    x86/earlyprintk: Put CONFIG_PCI-only functions under the #ifdef
    x86: Fix up obsolete __cpu_set() function usage

    Linus Torvalds
     
  • Pull x86 build changes from Ingo Molnar:
    "Small cleanups and fixes"

    * 'x86-build-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/kexec: Cleanup KEXEC_VERIFY_SIG Kconfig help text
    x86/build/defconfig: Enable USB_EHCI_TT_NEWSCHED=y
    x86/build: Fix mkcapflags.sh bash-ism
    x86/Kconfig: Simplify X86_UP_APIC handling
    x86/Kconfig: Simplify X86_IO_APIC dependencies
    x86/Kconfig: Avoid issuing pointless turned off entries to .config

    Linus Torvalds
     
  • Pull x86 boot changes from Ingo Molnar:
    "A number of cleanups"

    * 'x86-boot-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/boot: Standardize strcmp()
    x86/boot/64: Remove pointless early_printk() message
    x86/boot/video: Move the 'video_segment' variable to video.c

    Linus Torvalds