1. 21 Aug, 2018 1 commit
    • Rafael J. Wysocki's avatar
      Merge branch 'acpi-pmic' · d1f3ab5b
      Rafael J. Wysocki authored
      Merge a CrystalCove PMIC driver update.
      
      * acpi-pmic:
        ACPI / PMIC: CrystalCove: Extend PMOP support to support all possible fields
      d1f3ab5b
  2. 14 Aug, 2018 39 commits
    • Hans de Goede's avatar
      ACPI / PMIC: CrystalCove: Extend PMOP support to support all possible fields · b5c16c79
      Hans de Goede authored
      Prior to this commit the CRC PMOP handler only supported the X285 and V18X
      PMOP fields. Leading to errors like these on device using the VBUS field:
      
      [  765.766489] ACPI Error: AE_BAD_PARAMETER, Returned by Handler for [UserDefinedRegion] (20180531/evregion-266)
      [  765.766526] ACPI Error: Method parse/execution failed \_SB.I2C1.BATC._BST, AE_BAD_PARAMETER (20180531/psparse-516)
      [  765.766586] ACPI Error: AE_BAD_PARAMETER, Evaluating _BST (20180531/battery-577)
      
      This commit adds support for all known fields to the CRC PMOP OpRegion
      handler, the name and register info in this commit comes from:
      
      https://github.com/01org/ProductionKernelQuilts/blob/master/uefi/cht-m1stable/patches/0002-ACPI-Adding-support-for-WC-and-CRC-opregion.patchSigned-off-by: default avatarHans de Goede <hdegoede@redhat.com>
      Reviewed-by: default avatarAndy Shevchenko <andriy.shevchenko@linux.intel.com>
      Acked-by: default avatarMika Westerberg <mika.westerberg@linux.intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      b5c16c79
    • Rafael J. Wysocki's avatar
      ACPICA: Clear status of all events when entering sleep states · f317c7dc
      Rafael J. Wysocki authored
      Commit fa85015c (ACPICA: Clear status of all events when entering
      S5) made the sleep state entry code in ACPICA clear the status of all
      ACPI events when entering S5 to fix a functional regression reported
      against commit 18996f2d (ACPICA: Events: Stop unconditionally
      clearing ACPI IRQs during suspend/resume).  However, it is reported
      now that the regression also affects system states other than S5 on
      some systems and causes them to wake up from sleep prematurely.
      
      For this reason, make the code in question clear the status of all
      ACPI events when entering all sleep states (in addition to S5) to
      avoid the premature wakeups (this may cause some wakeup events to
      be missed in theory, but the likelihood of that is small and the
      change here simply restores the previous behavior of the code).
      
      Fixes: 18996f2d (ACPICA: Events: Stop unconditionally clearing ACPI IRQs during suspend/resume)
      Reported-by: default avatarPaul Menzel <pmenzel@molgen.mpg.de>
      Tested-by: default avatarPaul Menzel <pmenzel@molgen.mpg.de>
      Cc: 4.17+ <stable@vger.kernel.org> # 4.17+: fa85015c ACPICA: Clear status ...
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      f317c7dc
    • Bob Moore's avatar
      ACPICA: Update version to 20180810 · 4efa829d
      Bob Moore authored
      Version 20180810.
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      4efa829d
    • Bob Moore's avatar
      ACPICA: acpiexec: fix a small memory leak regression · 8b66fcfd
      Bob Moore authored
      Eliminates warnings only seen when acpiexec exits.
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      8b66fcfd
    • Erik Schmauss's avatar
      ACPICA: Reference Counts: increase max to 0x4000 for large servers · 8b23570a
      Erik Schmauss authored
      Increase the reference count limit to 0x4000 as the current one is
      not sufficient for some large server systems.
      Reviewed-by: default avatarDimitri Sivanich <dimitri.sivanich@hpe.com>
      Tested-by: default avatarRuss Anderson <russ.anderson@hpe.com>
      Reported-by: default avatarMike Travis <mike.travis@hpe.com>
      Signed-off-by: default avatarMike Travis <mike.travis@hpe.com>
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      [ rjw: Changelog ]
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      8b23570a
    • Erik Schmauss's avatar
      ACPICA: Reference count: add additional debugging details · ff5340f8
      Erik Schmauss authored
      Make reference counting diagnostics provide more information on
      what has happened.
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      [ rjw: Changelog ]
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      ff5340f8
    • Erik Schmauss's avatar
      ACPICA: acpi_exec: fixing -fi option · 77d4e096
      Erik Schmauss authored
      Field elements listed in the init file used to be initialized after
      the table load and before executing module-level code blocks. The
      recent changes in module-level code mean that the table load becomes
      a method execution. If fields are used within module-level code and
      we are executing with -fi option, then these values are populated
      after the table has finished loading. This commit changes the
      initialization of objects listed in the init file so that field unit
      values are populated during the table load.
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      77d4e096
    • Bob Moore's avatar
      ACPICA: Debugger: Cleanup interface to the AML disassembler · fb2ef998
      Bob Moore authored
      If the disassembler is configured out (such as when the debugger
      is part of a kernel), these debugger commands are disabled:
          List
          Disassemble
      Further, the Debug (single-step) command is simplified because
      each line of code cannot be disassembled.
      Reported-by: default avatarColin Ian King <colin.king@canonical.com>
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      fb2ef998
    • Erik Schmauss's avatar
      ACPICA: AML Parser: skip opcodes that open a scope upon parse failure · 4a7c94c7
      Erik Schmauss authored
      This change skips the entire length of opcodes that open a scope
      (Device, Scope, Processor, etc) if the creation of the op fails. The
      failure could be caused by various errors including AE_ALREADY_EXISTS
      and AE_NOT_FOUND.
      Reported-by: default avatarJeremy Linton <jeremy.linton@arm.com>
      Tested-by: default avatarJeremy Linton <jeremy.linton@arm.com>
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      Cc: 4.17+ <stable@vger.kernel.org> # 4.17+
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      4a7c94c7
    • Erik Schmauss's avatar
      ACPICA: Utilities: split hex detection into smaller functions · 089b2bec
      Erik Schmauss authored
      acpi_ut_implicit_strtoul64() called acpi_ut_detect_hex_prefix() and
      ignored the return value. Instead, use acpi_ut_remove_hex_prefix().
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      089b2bec
    • Bob Moore's avatar
      ACPICA: Update an error message for a duplicate table · 8a55c696
      Bob Moore authored
      In this case, the exception AE_ALREADY_EXISTS is more
      appropriate.
      Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      8a55c696
    • Erik Schmauss's avatar
      ACPICA: ACPICA: add status check for acpi_hw_read before assigning return value · f016b19a
      Erik Schmauss authored
      The value coming from acpi_hw_read() should not be used if it
      returns an error code, so check the status returned by it before
      using that value in two places in acpi_hw_register_read().
      Reported-by: default avatarMark Gross <mark.gross@intel.com>
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      [ rjw: Changelog ]
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      f016b19a
    • Erik Schmauss's avatar
      ACPICA: AML Parser: ignore all exceptions resulting from incorrect AML during table load · d46b6537
      Erik Schmauss authored
      Macros to classify different AML exception codes have been added in
      order to ignore the exceptions,
      Signed-off-by: default avatarErik Schmauss <erik.schmauss@intel.com>
      [ rjw: Fix damaged white space ]
      Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
      d46b6537
    • Linus Torvalds's avatar
      Merge tag 'acpi-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 2c20443e
      Linus Torvalds authored
      Pull ACPI updates from Rafael Wysocki:
       "These revert two ACPICA commits that are not needed any more, rework
        the property graphs support in ACPI to be more aligned with the
        analogous DT code, add some new quirks and remove one that isn't
        needed any more, add a special platform driver to enumerate multiple
        I2C devices hooked up to the same device object in the ACPI tables and
        update the battery and button drivers.
      
        Specifics:
      
         - Revert two ACPICA commits that are not needed any more (Erik
           Schmauss).
      
         - Rework property graph support in the ACPI device properties
           framework to make it behave more like the analogous DT code and
           update the documentation of it (Sakari Ailus).
      
         - Change the default ACPI device status after initialization to
           ACPI_STA_DEFAULT instead of 0 (Hans de Goede).
      
         - Add a special platform driver for enumerating multiple I2C devices
           hooked up to the same object in the ACPI tables (Hans de Goede).
      
         - Fix the ACPI battery driver to avoid reporting full capacity on
           systems without support for that and clean it up (Hans de Goede,
           Dmitry Rozhkov, Lucas Rangit Magasweran).
      
         - Add two system wakeup quirks to the ACPI EC driver (Aaron Ma, Mika
           Westerberg).
      
         - Add the touchscreen on Dell Venue Pro 7139 to the list of "always
           present" devices to make it work (Tristian Celestin).
      
         - Revert a special tables handling quirk for Dell XPS 9570 and
           Precision M5530 which is not needed any more (Kai Heng Feng).
      
         - Add support for a new OEM _OSI string to allow system vendors to
           work around issues with NVidia HDMI audio (Alex Hung).
      
         - Prevent the ACPI button driver from reporting excessive system
           wakeup events and clean it up (Ravi Chandra Sadineni, Randy
           Dunlap).
      
         - Clean up two minor code style issues in the ACPI core and GHES
           handling on ARM64 (Dongjiu Geng, John Garry, Tom Todd)"
      
      * tag 'acpi-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (34 commits)
        platform/x86: Add ACPI i2c-multi-instantiate pseudo driver
        ACPI / x86: utils: Remove status workaround from acpi_device_always_present()
        ACPI / scan: Create platform device for fwnodes with multiple i2c devices
        ACPI / scan: Initialize status to ACPI_STA_DEFAULT
        ACPI / EC: Add another entry for Thinkpad X1 Carbon 6th
        ACPI: bus: Fix a pointer coding style issue
        arm64 / ACPI: clean the additional checks before calling ghes_notify_sea()
        ACPI / scan: Add static attribute to indirect_io_hosts[]
        ACPI / battery: Do not export energy_full[_design] on devices without full_charge_capacity
        ACPI / EC: Use ec_no_wakeup on ThinkPad X1 Yoga 3rd
        ACPI / battery: get rid of negations in conditions
        ACPI / battery: use specialized print macros
        ACPI / battery: reorder headers alphabetically
        ACPI / battery: drop inclusion of init.h
        ACPI: battery: remove redundant old_present check on insertion
        ACPI: property: graph: Update graph documentation to use generic references
        ACPI: property: graph: Improve graph documentation for port/ep numbering
        ACPI: property: graph: Fix graph documentation
        ACPI: property: Update documentation for hierarchical data extension 1.1
        ACPI: property: Document key numbering for hierarchical data extension refs
        ...
      2c20443e
    • Linus Torvalds's avatar
      Merge tag 'pm-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · b018fc98
      Linus Torvalds authored
      Pull power management updates from Rafael Wysocki:
       "These add a new framework for CPU idle time injection, to be used by
        all of the idle injection code in the kernel in the future, fix some
        issues and add a number of relatively small extensions in multiple
        places.
      
        Specifics:
      
         - Add a new framework for CPU idle time injection (Daniel Lezcano).
      
         - Add AVS support to the armada-37xx cpufreq driver (Gregory
           CLEMENT).
      
         - Add support for current CPU frequency reporting to the ACPI CPPC
           cpufreq driver (George Cherian).
      
         - Rework the cooling device registration in the imx6q/thermal driver
           (Bastian Stender).
      
         - Make the pcc-cpufreq driver refuse to work with dynamic scaling
           governors on systems with many CPUs to avoid scalability issues
           with it (Rafael Wysocki).
      
         - Fix the intel_pstate driver to report different maximum CPU
           frequencies on systems where they really are different and to
           ignore the turbo active ratio if hardware-managend P-states (HWP)
           are in use; make it use the match_string() helper (Xie Yisheng,
           Srinivas Pandruvada).
      
         - Fix a minor deferred probe issue in the qcom-kryo cpufreq driver
           (Niklas Cassel).
      
         - Add a tracepoint for the tracking of frequency limits changes (from
           Andriod) to the cpufreq core (Ruchi Kandoi).
      
         - Fix a circular lock dependency between CPU hotplug and sysfs
           locking in the cpufreq core reported by lockdep (Waiman Long).
      
         - Avoid excessive error reports on driver registration failures in
           the ARM cpuidle driver (Sudeep Holla).
      
         - Add a new device links flag to the driver core to make links go
           away automatically on supplier driver removal (Vivek Gautam).
      
         - Eliminate potential race condition between system-wide power
           management transitions and system shutdown (Pingfan Liu).
      
         - Add a quirk to save NVS memory on system suspend for the ASUS 1025C
           laptop (Willy Tarreau).
      
         - Make more systems use suspend-to-idle (instead of ACPI S3) by
           default (Tristian Celestin).
      
         - Get rid of stack VLA usage in the low-level hibernation code on
           64-bit x86 (Kees Cook).
      
         - Fix error handling in the hibernation core and mark an expected
           fall-through switch in it (Chengguang Xu, Gustavo Silva).
      
         - Extend the generic power domains (genpd) framework to support
           attaching a device to a power domain by name (Ulf Hansson).
      
         - Fix device reference counting and user limits initialization in the
           devfreq core (Arvind Yadav, Matthias Kaehlcke).
      
         - Fix a few issues in the rk3399_dmc devfreq driver and improve its
           documentation (Enric Balletbo i Serra, Lin Huang, Nick Milner).
      
         - Drop a redundant error message from the exynos-ppmu devfreq driver
           (Markus Elfring)"
      
      * tag 'pm-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (35 commits)
        PM / reboot: Eliminate race between reboot and suspend
        PM / hibernate: Mark expected switch fall-through
        cpufreq: intel_pstate: Ignore turbo active ratio in HWP
        cpufreq: Fix a circular lock dependency problem
        cpu/hotplug: Add a cpus_read_trylock() function
        x86/power/hibernate_64: Remove VLA usage
        cpufreq: trace frequency limits change
        cpufreq: intel_pstate: Show different max frequency with turbo 3 and HWP
        cpufreq: pcc-cpufreq: Disable dynamic scaling on many-CPU systems
        cpufreq: qcom-kryo: Silently error out on EPROBE_DEFER
        cpufreq / CPPC: Add cpuinfo_cur_freq support for CPPC
        cpufreq: armada-37xx: Add AVS support
        dt-bindings: marvell: Add documentation for the Armada 3700 AVS binding
        PM / devfreq: rk3399_dmc: Fix duplicated opp table on reload.
        PM / devfreq: Init user limits from OPP limits, not viceversa
        PM / devfreq: rk3399_dmc: fix spelling mistakes.
        PM / devfreq: rk3399_dmc: do not print error when get supply and clk defer.
        dt-bindings: devfreq: rk3399_dmc: move interrupts to be optional.
        PM / devfreq: rk3399_dmc: remove wait for dcf irq event.
        dt-bindings: clock: add rk3399 DDR3 standard speed bins.
        ...
      b018fc98
    • Linus Torvalds's avatar
      Merge tag 'leds-for-4.19-rc1' of... · c07b3682
      Linus Torvalds authored
      Merge tag 'leds-for-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds
      
      Pull LED updates from Jacek Anaszewski:
       "LED triggers improvements make the biggest part of this pull request.
        The most striking ones, that allowed for nice cleanups in the triggers
        are:
      
         - centralized handling of creation and removal of trigger sysfs
           attributes via attribute group
      
         - addition of module_led_trigger() helper
      
        The other things that need to be mentioned:
      
        New features and improvements to existing LED class drivers:
      
         - lt3593: add DT support, switch to gpiod interface
      
         - lm3692x: support LED sync configuration, change OF calls to fwnode
           calls
      
         - apu: modify PC Engines apu/apu2 driver to support apu3
      
        Change in the drivers/net/can/led.c:
      
         - mark led trigger as broken since it's in the way for the further
           cleanups. It implements a subset of the netdev trigger and an Ack
           is needed from someone who can actually test and confirm that the
           netdev trigger works for can devices"
      
      * tag 'leds-for-4.19-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/j.anaszewski/linux-leds: (32 commits)
        leds: ns2: Change unsigned to unsigned int
        usb: simplify usbport trigger
        leds: gpio trigger: simplifications from core changes
        leds: backlight trigger: simplifications from core changes
        leds: activity trigger: simplifications from core changes
        leds: default-on trigger: make use of module_led_trigger()
        leds: heartbeat trigger: simplifications from core changes
        leds: oneshot trigger: simplifications from core changes
        leds: transient trigger: simplifications from core changes
        leds: timer trigger: simplifications from core changes
        leds: netdev trigger: simplifications from core changes
        leds: triggers: new function led_set_trigger_data()
        leds: triggers: define module_led_trigger helper
        leds: triggers: handle .trigger_data and .activated() in the core
        leds: triggers: add device attribute support
        leds: triggers: let struct led_trigger::activate() return an error code
        leds: triggers: make the MODULE_LICENSE string match the actual license
        leds: lm3692x: Support LED sync configuration
        dt: bindings: lm3692x: Update binding for LED sync control
        leds: lm3692x: Change DT calls to fwnode calls
        ...
      c07b3682
    • Linus Torvalds's avatar
      Merge tag 'devicetree-for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux · 4d88e3d2
      Linus Torvalds authored
      Pull Devicetree updates from Rob Herring:
      
       - Remove an obsolete hack for PPC32 longtrail systems
      
       - Make of_io_request_and_map() "name" arg optional
      
       - Add vendor prefixes for bitmain, Asus, and Y Soft
      
       - Remove 'interrupt-parent' from bindings as it is implicit
      
       - New properties for wm8994 audio codec
      
       - Add 'clocks' property support to SRAM binding
      
       - Add binding for ASPEED coprocessor interrupt controller
      
       - Various binding spelling and link fixes
      
      * tag 'devicetree-for-4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
        Documentation: remove dynamic-resolution-notes reference to non-existent file
        dt-bindings: Add Y Soft Corporation vendor prefix
        of/fdt: Remove PPC32 longtrail hack in memory scan
        dt-bindings: remove 'interrupt-parent' from bindings
        pinctrl: tegra: fix spelling in devicetree binding document
        usb: dwc3: rockchip: Fix PHY documentation links.
        dt-bindings: sound: wm8994: document wlf,csnaddr-pd property
        dt-bindings: sound: wm8994: document wlf,spkmode-pu property
        dt-bindings: sram: Add 'clocks' as an optional property
        dt-bindings: Add vendor prefix for AsusTek Computer Inc.
        dt-bindings: misc: ASPEED coprocessor interrupt controller
        dt-bindings: gpio: pca953x: Document interrupts, update example
        drivers/of: Make of_io_request_and_map() "name" argument optional
        dt-bindings: Add bitmain vendor prefix
        Documentation: devicetree: tilcdc: fix spelling mistake "suppors" -> "supports"
      4d88e3d2
    • Linus Torvalds's avatar
      Merge tag 'pinctrl-v4.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl · c6ed444f
      Linus Torvalds authored
      Pull pin control updates from Linus Walleij:
       "This is the bulk of pin control changes for v4.19:
      
        Core changes:
      
         - Augment pinctrl_generic_add_group() and pinmux_generic_add_function()
           to return the selector for the added group/function to the caller
           and augment (hopefully) all drivers to handle this
      
        New subdrivers:
      
         - Qualcomm PM8998 and PM8005 are supported in the SPMI pin control
           and GPIO driver
      
         - Intel Ice Lake PCH (platform controller hub) support
      
         - NXP (ex Freescale) i.MX8MQ support
      
         - Berlin AS370 support
      
        Improvements to drivers:
      
         - Support interrupts on the Ocelot pin controller
      
         - Add SPI pins to the Uniphier driver
      
         - Define a GPIO compatible per SoC in the Tegra driver
      
         - Push Tegra initialization down in the initlevels
      
         - Support external wakeup interrupts on the Exynos
      
         - Add generic clocks pins to the meson driver
      
         - Add USB and HSCIF pins for some Renesas PFC chips
      
         - Suspend/resume support in the armada-37xx
      
         - Interrupt support for the Actions Semiconductor S900 also known as
           "owl"
      
         - Correct the pin ordering in Cedarfork
      
         - Debugfs output for INTF in the mcp23s08 driver
      
         - Avoid divisions in context save/restore in pinctrl-single
      
        The rest is minor bug fixes or cleanups"
      
      * tag 'pinctrl-v4.19-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (69 commits)
        pinctrl: nomadik: silence uninitialized variable warning
        pinctrl: axp209: Fix NULL pointer dereference after allocation
        pinctrl: samsung: Remove duplicated "wakeup" in printk
        pinctrl: ocelot: add support for interrupt controller
        pinctrl: intel: Don't shadow error code of gpiochip_lock_as_irq()
        pinctrl: berlin: fix 'pctrl->functions' allocation in berlin_pinctrl_build_state
        gpio: tegra: Move driver registration to subsys_init level
        pinctrl: tegra: Move drivers registration to arch_init level
        pinctrl: baytrail: actually print the apparently misconfigured pin
        MAINTAINERS: Replace Heikki as maintainer of Intel pinctrl
        pinctrl: freescale: off by one in imx1_pinconf_group_dbg_show()
        pinctrl: uniphier: add spi pin-mux settings
        pinctrl: cannonlake: Fix community ordering for H variant
        pinctrl: tegra: define GPIO compatible node per SoC
        pinctrl: intel: Do pin translation when lock IRQ
        pinctrl: imx: off by one in imx_pinconf_group_dbg_show()
        pinctrl: mediatek: include chained_irq.h header
        pinctrl/amd: only handle irq if it is pending and unmasked
        pinctrl/amd: fix gpio irq level in debugfs
        pinctrl: stm32: add syscfg mask parameter
        ...
      c6ed444f
    • Linus Torvalds's avatar
      Merge tag 'regulator-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 3860cae6
      Linus Torvalds authored
      Pull regulator updates from Mark Brown:
       "The biggest set of changes in here is the addition of the Qualcomm
        RPMH driver. As well as the regualtor driver itself being quite large
        due to the usual involved Qualcomm regulator stuff there's also some
        code shared with the arm-soc tree, a bus driver required to
        communicate with the hardware that actually winds up being much larger
        than the regulator driver itself and a LLCC driver that was part of
        the same signed tag used with the arm-soc tree.
      
        Other than that it's a fairly standard and quiet release, highlights
        include:
      
         - Addition of device links from regulator consumers to their
           regulators, helping the core avoid dependency issues during
           suspend.
      
         - Support for the entertainingly innovative suspend implementation in
           the BD9571MWV.
      
         - Support for switch regulators on the PFUZE100, this required two
           goes due to backwards compatibility issues with old DTs that were
           discovered.
      
         - Support for Freescale PFUZE3001 and SocioNext UniPhier.
      
         - The aforementioned Qualcomm RPMH driver together with the driver
           changes required to support it"
      
      * tag 'regulator-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (52 commits)
        regulator: add QCOM RPMh regulator driver
        regulator: dt-bindings: add QCOM RPMh regulator bindings
        regulator: samsung: Add SPDX license identifiers
        regulator: maxim: Add SPDX license identifiers
        regulator: bd71837: adobt MFD changes to regulator driver
        regulator: tps65217: Fix NULL pointer dereference on probe
        regulator: Add support for CPCAP regulators on Motorola Xoom devices.
        regulator: Add sw2_sw4 voltage table to cpcap regulator.
        regulator: bd9571mwv: Make symbol 'dev_attr_backup_mode' static
        regulator: pfuze100: add support to en-/disable switch regulators
        regulator: pfuze100: add optional disable switch-regulators binding
        soc: qcom: rmtfs-mem: fix memleak in probe error paths
        soc: qcom: llc-slice: Add missing MODULE_LICENSE()
        drivers: qcom: rpmh: fix unwanted error check for get_tcs_of_type()
        drivers: qcom: rpmh-rsc: fix the loop index check in get_req_from_tcs
        firmware: qcom: scm: add a dummy qcom_scm_assign_mem()
        drivers: qcom: rpmh-rsc: Check cmd_db_ready() to help children
        drivers: qcom: rpmh-rsc: allow active requests from wake TCS
        drivers: qcom: rpmh: add support for batch RPMH request
        drivers: qcom: rpmh: allow requests to be sent asynchronously
        ...
      3860cae6
    • Linus Torvalds's avatar
      Merge tag 'spi-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi · 010b0e70
      Linus Torvalds authored
      Pull spi updates from Mark Brown:
       "Quite an active release for the SPI subsystem, lots of small updates
        and fixes scattered about with highlights including:
      
         - 3-wire support in the GPIO driver.
      
         - support for setting a custom memory name in the memory mapped flash
           drivers.
      
         - support for extended mode in the Freescale DSPI controller.
      
         - support for the non-standard integration with the Microsemi Ocelot
           platform in the DesignWare driver.
      
         - new driver for the SocioNext UniPhier"
      
      * tag 'spi-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (47 commits)
        spi: davinci: fix a NULL pointer dereference
        spi: spi-mem: Constify spi_mem->name
        mtd: m25p80: Call spi_mem_get_name() to let controller set a custom name
        spi: spi-mem: Extend the SPI mem interface to set a custom memory name
        spi: spi-mem: Fix a typo in the documentation of struct spi_mem
        spi: uniphier: remove unnecessary include headers
        spi: spi-gpio: add SPI_3WIRE support
        spi: add flags parameter to txrx_word function pointers
        spi: add SPI controller driver for UniPhier SoC
        spi: add DT bindings for UniPhier SPI controller
        spi: dw: document Microsemi integration
        spi: img-spfi: Set device select bits for SPFI port state
        spi: omap2-mcspi: remove several redundant variables
        spi: dw-mmio: add MSCC Ocelot support
        spi: dw: export dw_spi_set_cs
        spi: spi-fsl-espi: Log fifo counters on error
        spi: imx: Use the longuest possible burst size when in dynamic_burst
        spi: imx: remove unnecessary check in spi_imx_can_dma
        spi: imx: Use correct number of bytes per words
        spi: imx: Use dynamic bursts only when bits_per_word is 8, 16 or 32
        ...
      010b0e70
    • Vlastimil Babka's avatar
      x86/init: fix build with CONFIG_SWAP=n · 792adb90
      Vlastimil Babka authored
      The introduction of generic_max_swapfile_size and arch-specific versions has
      broken linking on x86 with CONFIG_SWAP=n due to undefined reference to
      'generic_max_swapfile_size'. Fix it by compiling the x86-specific
      max_swapfile_size() only with CONFIG_SWAP=y.
      Reported-by: default avatarTomas Pruzina <pruzinat@gmail.com>
      Fixes: 377eeaa8 ("x86/speculation/l1tf: Limit swap file size to MAX_PA/2")
      Signed-off-by: default avatarVlastimil Babka <vbabka@suse.cz>
      Cc: stable@vger.kernel.org
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      792adb90
    • Linus Torvalds's avatar
      Merge tag 'regmap-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · 15bc88cd
      Linus Torvalds authored
      Pull regmap updates from Mark Brown:
       "Several small new features for regmap this time around:
      
         - Support for SCCB, an I2C variant used on some media cards. This has
           also pulled in an I2C commit from Peter Rosin as a dependency.
      
         - Addition of an API for reading repeatedly from registers where the
           address doesn't automatically increment like some ADC outputs or
           GPIO status registers.
      
         - Support for bulk I/O on Slimbus"
      
      * tag 'regmap-v4.19' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: Add regmap_noinc_read API
        regmap: sccb: fix typo and sort headers alphabetically
        i2c: smbus: add unlocked __i2c_smbus_xfer variant
        regmap: add SCCB support
        regmap: slimbus: add support to multi read/write
      15bc88cd
    • Linus Torvalds's avatar
      Merge tag 'configfs-for-4.19' of git://git.infradead.org/users/hch/configfs · be718b52
      Linus Torvalds authored
      Pull configfs updates from Christoph Hellwig:
      
       - simplify the cide by using kvasprintf (Bart Van Assche)
      
       - fix a gcc 8 string truncation warning by making the code simpler
         (Guenter Roeck)
      
       - fix a bug in rmdir() handling (Mike Christie)
      
      * tag 'configfs-for-4.19' of git://git.infradead.org/users/hch/configfs:
        configfs: fix registered group removal
        configfs: replace strncpy with memcpy
        configfs: use kvasprintf() instead of open-coding it
      be718b52
    • Linus Torvalds's avatar
      Merge tag 'dma-mapping-4.19' of git://git.infradead.org/users/hch/dma-mapping · f66dc723
      Linus Torvalds authored
      Pull dma-mapping updates from Christoph Hellwig:
      
       - a series from Robin to fix bus imposed dma limits by adding a
         separate mask for them to struct device instead of trying to squeeze
         a second meaning out of the existing dma mask as we did before.
      
         This has ACKs from the various other subsystems touched
      
       - a small swiotlb cleanup from Kees (acked by Konrad)
      
       - conversion of nios2 and sh to the new generic dma-noncoherent code.
      
         Various other architecture conversions will come through the
         architectures maintainers trees.
      
      * tag 'dma-mapping-4.19' of git://git.infradead.org/users/hch/dma-mapping:
        sh: use generic dma_noncoherent_ops
        sh: split arch/sh/mm/consistent.c
        sh: use dma_direct_ops for the CONFIG_DMA_COHERENT case
        sh: introduce a sh_cacheop_vaddr helper
        sh: simplify get_arch_dma_ops
        OF: Don't set default coherent DMA mask
        ACPI/IORT: Don't set default coherent DMA mask
        iommu/dma: Respect bus DMA limit for IOVAs
        of/device: Set bus DMA mask as appropriate
        ACPI/IORT: Set bus DMA mask as appropriate
        dma-mapping: Generalise dma_32bit_limit flag
        ACPI/IORT: Support address size limit for root complexes
        of/platform: Initialise default DMA masks
        nios2: use generic dma_noncoherent_ops
        swiotlb: clean up reporting
        dma-mapping: relax warning for per-device areas
      f66dc723
    • Linus Torvalds's avatar
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md · b219a1d2
      Linus Torvalds authored
      Pull MD updates from Shaohua Li:
       "A few MD fixes for 4.19-rc1:
      
         - several md-cluster fixes from Guoqing
      
         - a data corruption fix from BingJing
      
         - other cleanups"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/shli/md:
        md/raid5: fix data corruption of replacements after originals dropped
        drivers/md/raid5: Do not disable irq on release_inactive_stripe_list() call
        drivers/md/raid5: Use irqsave variant of atomic_dec_and_lock()
        md/r5cache: remove redundant pointer bio
        md-cluster: don't send msg if array is closing
        md-cluster: show array's status more accurate
        md-cluster: clear another node's suspend_area after the copy is finished
      b219a1d2
    • Linus Torvalds's avatar
      Merge tag 'mtd/for-4.19' of git://git.infradead.org/linux-mtd · c2fc71c9
      Linus Torvalds authored
      Pull mtd updates from Boris Brezillon:
       "JFFS2 changes:
         - Support 64-bit timestamps
      
        MTD core changes:
         - Support sub-partitions
         - Clarify mtd_oob_ops documentation
         - Make Kconfig formatting consistent
         - Fix potential overflows in mtdchar_{write,read}()
         - Fallback to ->_{read,write}() when ->_{read,write}_oob() is missing
           and no OOB data were requested
         - Remove VLA usage in the bch lib
      
        MTD driver changes:
         - Use mtd_device_register() instead of mtd_device_parse_register()
           where applicable
         - Use proper printk format to print physical addresses in the
           solutionengine driver
         - Add missing mtd_set_of_node() call in the powernv driver
         - Remove unneeded variables in a few drivers
         - Plug the TRX part parser to the DT partition parsers logic
         - Check ioremap_cache() return code in the gpio-addr-flash driver
         - Stop using VMLINUX_SYMBOL_STR() in gen_probe.c
      
        SPI NOR core changes:
         - Apply reset hacks only when reset is explicitly marked as broken in
           the DT
      
         SPI NOR driver changes:
         - Minor cleanup/fixes in the m25p80 driver
         - Release flash_np in the nxp-spifi driver
         - Add suspend/resume hooks to the atmel-quadspi driver
         - Include gpio/consumer.h instead of gpio.h in the atmel-quadspi
           driver
         - Use %pK instead of %p in the stm32-quadspi driver
         - Improve timeout handling in the cadence-quadspi driver
         - Use mtd_device_register() instead of mtd_device_parse_register() in
           the intel-spi driver
      
        NAND core changes:
         - Add the SPI-NAND framework.
         - Create a helper to find the best ECC configuration.
         - Create NAND controller operations.
         - Allocate dynamically ONFI parameters structure.
         - Add defines for ONFI version bits.
         - Add manufacturer fixup for ONFI parameter page.
         - Add an option to specify NAND chip as a boot device.
         - Add Reed-Solomon error correction algorithm.
         - Better name for the controller structure.
         - Remove unused caller_is_module() definition.
         - Make subop helpers return unsigned values.
         - Expose _notsupp() helpers for raw page accessors.
         - Add default values for dynamic timings.
         - Kill the chip->scan_bbt() hook.
         - Rename nand_default_bbt() into nand_create_bbt().
         - Start to clean the nand_chip structure.
         - Remove stale prototype from rawnand.h.
      
        Raw NAND controllers drivers changes:
         - Qcom: structuring cleanup.
         - Denali: use core helper to find the best ECC configuration.
         - Possible build of almost all drivers by adding a dependency on
           COMPILE_TEST for almost all of them in Kconfig, implies various
           fixes, Kconfig cleanup, GPIO headers inclusion cleanup, and even
           changes in sparc64 and ia64 architectures.
         - Clean the ->probe() functions error path of a lot of drivers.
         - Migrate all drivers to use nand_scan() instead of
           nand_scan_ident()/nand_scan_tail() pair.
         - Use mtd_device_register() where applicable to simplify the code.
         - Marvell:
            * Handle on-die ECC.
            * Better clocks handling.
            * Remove bogus comment.
            * Add suspend and resume support.
         - Tegra: add NAND controller driver.
         - Atmel:
            * Add module param to avoid using dma.
            * Drop Wenyou Yang from MAINTAINERS.
         - Denali: optimize timings handling.
         - FSMC: Stop using chip->read_buf().
         - FSL:
            * Switch to SPDX license tag identifiers.
            * Fix qualifiers in MXC init functions.
      
        Raw NAND chip drivers changes:
         - Micron:
            * Add fixup for ONFI revision.
            * Update ecc_stats.corrected.
            * Make ECC activation stateful.
            * Avoid enabling/disabling ECC when it can't be disabled.
            * Get the actual number of bitflips.
            * Allow forced on-die ECC.
            * Support 8/512 on-die ECC.
            * Fix on-die ECC detection logic.
         - Hynix:
            * Fix decoding the OOB size on H27UCG8T2BTR.
            * Use ->exec_op() in hynix_nand_reg_write_op()"
      
      * tag 'mtd/for-4.19' of git://git.infradead.org/linux-mtd: (188 commits)
        mtd: rawnand: atmel: Select GENERIC_ALLOCATOR
        MAINTAINERS: drop Wenyou Yang from Atmel NAND driver support
        mtd: rawnand: allocate dynamically ONFI parameters during detection
        mtd: spi-nor: only apply reset hacks to broken hardware
        mtd: spi-nor: cadence-quadspi: fix timeout handling
        mtd: spi-nor: atmel-quadspi: Include gpio/consumer.h instead of gpio.h
        mtd: spi-nor: intel-spi: use mtd_device_register()
        mtd: spi-nor: stm32-quadspi: replace "%p" with "%pK"
        mtd: spi-nor: atmel-quadspi: add suspend/resume hooks
        mtd: rawnand: allocate model parameter dynamically
        mtd: rawnand: do not export nand_scan_[ident|tail]() anymore
        mtd: rawnand: txx9ndfmc: convert driver to nand_scan()
        mtd: rawnand: txx9ndfmc: clarify ECC parameters assignation
        mtd: rawnand: tegra: convert driver to nand_scan()
        mtd: rawnand: jz4740: convert driver to nand_scan()
        mtd: rawnand: jz4740: group nand_scan_{ident, tail} calls
        mtd: rawnand: jz4740: fix probe function error path
        mtd: rawnand: docg4: convert driver to nand_scan()
        mtd: rawnand: do not execute nand_scan_ident() if maxchips is zero
        mtd: rawnand: atmel: convert driver to nand_scan()
        ...
      c2fc71c9
    • Linus Torvalds's avatar
      Merge SCSI_IOCTL_SEND_COMMAND cleanup branch. · 57ee3196
      Linus Torvalds authored
      Nobody commented on this patch back in July. So now it gets merged.
      
      * SCSI_IOCTL_SEND_COMMAND cleanup:
        scsi sg: remove incorrect scsi command checking logic
      57ee3196
    • Linus Torvalds's avatar
      Merge tag 'for-4.19/block-20180812' of git://git.kernel.dk/linux-block · 73ba2fb3
      Linus Torvalds authored
      Pull block updates from Jens Axboe:
       "First pull request for this merge window, there will also be a
        followup request with some stragglers.
      
        This pull request contains:
      
         - Fix for a thundering heard issue in the wbt block code (Anchal
           Agarwal)
      
         - A few NVMe pull requests:
            * Improved tracepoints (Keith)
            * Larger inline data support for RDMA (Steve Wise)
            * RDMA setup/teardown fixes (Sagi)
            * Effects log suppor for NVMe target (Chaitanya Kulkarni)
            * Buffered IO suppor for NVMe target (Chaitanya Kulkarni)
            * TP4004 (ANA) support (Christoph)
            * Various NVMe fixes
      
         - Block io-latency controller support. Much needed support for
           properly containing block devices. (Josef)
      
         - Series improving how we handle sense information on the stack
           (Kees)
      
         - Lightnvm fixes and updates/improvements (Mathias/Javier et al)
      
         - Zoned device support for null_blk (Matias)
      
         - AIX partition fixes (Mauricio Faria de Oliveira)
      
         - DIF checksum code made generic (Max Gurtovoy)
      
         - Add support for discard in iostats (Michael Callahan / Tejun)
      
         - Set of updates for BFQ (Paolo)
      
         - Removal of async write support for bsg (Christoph)
      
         - Bio page dirtying and clone fixups (Christoph)
      
         - Set of bcache fix/changes (via Coly)
      
         - Series improving blk-mq queue setup/teardown speed (Ming)
      
         - Series improving merging performance on blk-mq (Ming)
      
         - Lots of other fixes and cleanups from a slew of folks"
      
      * tag 'for-4.19/block-20180812' of git://git.kernel.dk/linux-block: (190 commits)
        blkcg: Make blkg_root_lookup() work for queues in bypass mode
        bcache: fix error setting writeback_rate through sysfs interface
        null_blk: add lock drop/acquire annotation
        Blk-throttle: reduce tail io latency when iops limit is enforced
        block: paride: pd: mark expected switch fall-throughs
        block: Ensure that a request queue is dissociated from the cgroup controller
        block: Introduce blk_exit_queue()
        blkcg: Introduce blkg_root_lookup()
        block: Remove two superfluous #include directives
        blk-mq: count the hctx as active before allocating tag
        block: bvec_nr_vecs() returns value for wrong slab
        bcache: trivial - remove tailing backslash in macro BTREE_FLAG
        bcache: make the pr_err statement used for ENOENT only in sysfs_attatch section
        bcache: set max writeback rate when I/O request is idle
        bcache: add code comments for bset.c
        bcache: fix mistaken comments in request.c
        bcache: fix mistaken code comments in bcache.h
        bcache: add a comment in super.c
        bcache: avoid unncessary cache prefetch bch_btree_node_get()
        bcache: display rate debug parameters to 0 when writeback is not running
        ...
      73ba2fb3
    • Linus Torvalds's avatar
      Merge branch 'l1tf-final' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 958f338e
      Linus Torvalds authored
      Merge L1 Terminal Fault fixes from Thomas Gleixner:
       "L1TF, aka L1 Terminal Fault, is yet another speculative hardware
        engineering trainwreck. It's a hardware vulnerability which allows
        unprivileged speculative access to data which is available in the
        Level 1 Data Cache when the page table entry controlling the virtual
        address, which is used for the access, has the Present bit cleared or
        other reserved bits set.
      
        If an instruction accesses a virtual address for which the relevant
        page table entry (PTE) has the Present bit cleared or other reserved
        bits set, then speculative execution ignores the invalid PTE and loads
        the referenced data if it is present in the Level 1 Data Cache, as if
        the page referenced by the address bits in the PTE was still present
        and accessible.
      
        While this is a purely speculative mechanism and the instruction will
        raise a page fault when it is retired eventually, the pure act of
        loading the data and making it available to other speculative
        instructions opens up the opportunity for side channel attacks to
        unprivileged malicious code, similar to the Meltdown attack.
      
        While Meltdown breaks the user space to kernel space protection, L1TF
        allows to attack any physical memory address in the system and the
        attack works across all protection domains. It allows an attack of SGX
        and also works from inside virtual machines because the speculation
        bypasses the extended page table (EPT) protection mechanism.
      
        The assoicated CVEs are: CVE-2018-3615, CVE-2018-3620, CVE-2018-3646
      
        The mitigations provided by this pull request include:
      
         - Host side protection by inverting the upper address bits of a non
           present page table entry so the entry points to uncacheable memory.
      
         - Hypervisor protection by flushing L1 Data Cache on VMENTER.
      
         - SMT (HyperThreading) control knobs, which allow to 'turn off' SMT
           by offlining the sibling CPU threads. The knobs are available on
           the kernel command line and at runtime via sysfs
      
         - Control knobs for the hypervisor mitigation, related to L1D flush
           and SMT control. The knobs are available on the kernel command line
           and at runtime via sysfs
      
         - Extensive documentation about L1TF including various degrees of
           mitigations.
      
        Thanks to all people who have contributed to this in various ways -
        patches, review, testing, backporting - and the fruitful, sometimes
        heated, but at the end constructive discussions.
      
        There is work in progress to provide other forms of mitigations, which
        might be less horrible performance wise for a particular kind of
        workloads, but this is not yet ready for consumption due to their
        complexity and limitations"
      
      * 'l1tf-final' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (75 commits)
        x86/microcode: Allow late microcode loading with SMT disabled
        tools headers: Synchronise x86 cpufeatures.h for L1TF additions
        x86/mm/kmmio: Make the tracer robust against L1TF
        x86/mm/pat: Make set_memory_np() L1TF safe
        x86/speculation/l1tf: Make pmd/pud_mknotpresent() invert
        x86/speculation/l1tf: Invert all not present mappings
        cpu/hotplug: Fix SMT supported evaluation
        KVM: VMX: Tell the nested hypervisor to skip L1D flush on vmentry
        x86/speculation: Use ARCH_CAPABILITIES to skip L1D flush on vmentry
        x86/speculation: Simplify sysfs report of VMX L1TF vulnerability
        Documentation/l1tf: Remove Yonah processors from not vulnerable list
        x86/KVM/VMX: Don't set l1tf_flush_l1d from vmx_handle_external_intr()
        x86/irq: Let interrupt handlers set kvm_cpu_l1tf_flush_l1d
        x86: Don't include linux/irq.h from asm/hardirq.h
        x86/KVM/VMX: Introduce per-host-cpu analogue of l1tf_flush_l1d
        x86/irq: Demote irq_cpustat_t::__softirq_pending to u16
        x86/KVM/VMX: Move the l1tf_flush_l1d test to vmx_l1d_flush()
        x86/KVM/VMX: Replace 'vmx_l1d_flush_always' with 'vmx_l1d_flush_cond'
        x86/KVM/VMX: Don't set l1tf_flush_l1d to true from vmx_l1d_flush()
        cpu/hotplug: detect SMT disabled by BIOS
        ...
      958f338e
    • Linus Torvalds's avatar
      Merge tag 'xfs-4.19-merge-6' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 781fca5b
      Linus Torvalds authored
      Pull xfs updates from Darrick Wong:
       "This is the second part of the XFS changes for 4.19.
      
        The biggest changes are the removal of buffer heads frm XFS, a massive
        reworking of the deferred transaction operations handling code, the
        removal of the long defunct barrier/nobarrier mount options, and the
        addition of a few more online repair functions.
      
        Summary:
      
         - Use extent maps to track pagecache page status instead of
           bufferhead state.
      
         - Refactor pagecache read and write paths to use the new iomap
           library functions, which enable us to drop the old bufferhead code
           for pagesize == blocksize filesystems.
      
         - Set up parallel per-block-per-page metadata to track subpage
           information that was tracked by buffer heads, which enables us to
           drop the old bufferhead code for pagesize > blocksize filesystems.
      
         - Tie a deferred ops control structure to a transaction so that we
           can take advantage of an upper-level dfops without having to plumb
           pointer passing through the code.
      
         - Refactor the deferred ops code to track deferred ops as part of the
           transaction structure (instead of as a separate data structure) so
           that we can simplify the scoping rules around defer_ops.
      
         - Refactor twisty delwri buffer submission code to avoid deadlocks.
      
         - Shorten and fix indenting problems in the scrub code.
      
         - Detect obviously bad summary counts at mount and fix them.
      
         - Directly associate deferred ops control structure with a
           transaction so that callers no longer have to manage it themselves.
      
         - Remove a couple of IRIX-era inode macros.
      
         - Remove the long-deprecated 'barrier' and 'nobarrier' mount options.
      
         - Clean up the inode fork structure a bit.
      
         - Check for bad fs summary counter values in the superblock.
      
         - Reduce COW fork lookups during writeback.
      
         - Refactor the deferred ops control structures into the transaction
           structure, thereby eliminating the need for transaction users to
           handle the deferred ops as a separate data structure.
      
         - Add the ability to repair AG headers online.
      
         - Fix a crash due to insufficient return value checking.
      
         - Various fixes and cleanups"
      
      * tag 'xfs-4.19-merge-6' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux: (155 commits)
        xfs: fix a null pointer dereference in xfs_bmap_extents_to_btree
        xfs: remove b_last_holder & associated macros
        iomap: Switch to offset_in_page for clarity
        xfs: Close race between direct IO and xfs_break_layouts()
        xfs: repair the AGI
        xfs: repair the AGFL
        xfs: repair the AGF
        xfs: remove dead error handling code in xfs_dquot_disk_alloc()
        xfs: use WRITE_ONCE to update if_seq
        xfs: fix a comment in xfs_log_reserve
        xfs: only validate summary counts on primary superblock
        xfs: substitute spaces with tabs
        xfs: fold dfops into the transaction
        xfs: always defer agfl block frees
        xfs: pass transaction to xfs_defer_add()
        xfs: replace xfs_defer_ops ->dop_pending with on-stack list
        xfs: cancel dfops on xfs_defer_finish() error
        xfs: clean out superfluous dfops dop params/vars
        xfs: drop dop param from xfs_defer_op_type ->finish_item() callback
        xfs: automatic dfops inode relogging
        ...
      781fca5b
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-button', 'acpi-battery' and 'acpi-osi' · 76f7d6c0
      Rafael J. Wysocki authored
      Merge updates of the ACPI battery and button drivers and support for
      a new OEM _OSI string for 4.19.
      
      * acpi-button:
        ACPI / button: fix defined but not used warning
        ACPI / button: increment wakeup count only when notified
      
      * acpi-battery:
        ACPI / battery: Do not export energy_full[_design] on devices without full_charge_capacity
        ACPI / battery: get rid of negations in conditions
        ACPI / battery: use specialized print macros
        ACPI / battery: reorder headers alphabetically
        ACPI / battery: drop inclusion of init.h
        ACPI: battery: remove redundant old_present check on insertion
      
      * acpi-osi:
        ACPI / OSI: Add OEM _OSI string to enable NVidia HDMI audio
      76f7d6c0
    • Rafael J. Wysocki's avatar
      Merge branches 'acpi-x86', 'acpi-bus', 'acpi-ec' and 'acpi-apei' · 3c942804
      Rafael J. Wysocki authored
      Merge ACPI x86-specific changes, core updates, EC driver updates and
      APEI support updates for 4.19.
      
      These add a special platform driver for handling multiple I2C devices
      hooked up to the same device object in the ACPI tables, add some new
      quirks and remove one that is not needed any more.
      
      * acpi-x86:
        platform/x86: Add ACPI i2c-multi-instantiate pseudo driver
        ACPI / x86: utils: Remove status workaround from acpi_device_always_present()
        ACPI / x86: enable touchscreen on Dell Venue Pro 7139
      
      * acpi-bus:
        ACPI: bus: Fix a pointer coding style issue
        Revert "ACPI / bus: Parse tables as term_list for Dell XPS 9570 and Precision M5530"
      
      * acpi-ec:
        ACPI / EC: Add another entry for Thinkpad X1 Carbon 6th
        ACPI / EC: Use ec_no_wakeup on ThinkPad X1 Yoga 3rd
      
      * acpi-apei:
        arm64 / ACPI: clean the additional checks before calling ghes_notify_sea()
      3c942804
    • Rafael J. Wysocki's avatar
      Merge branches 'acpica' and 'acpi-property' · 4a3f421b
      Rafael J. Wysocki authored
      Merge ACPICA changes and updates of the ACPI device properties
      framework for 4.19.
      
      These revert two ACPICA commits that are not needed any more and
      modify the properties graph support in ACPI to be more in-line with
      the analogous DT code.
      
      * acpica:
        ACPICA: Update version to 20180629
        ACPICA: Revert "iASL compiler: allow compilation of externals with paths that refer to existing names"
        ACPICA: Revert "iASL: change processing of external op namespace nodes for correctness"
      
      * acpi-property:
        ACPI: property: graph: Update graph documentation to use generic references
        ACPI: property: graph: Improve graph documentation for port/ep numbering
        ACPI: property: graph: Fix graph documentation
        ACPI: property: Update documentation for hierarchical data extension 1.1
        ACPI: property: Document key numbering for hierarchical data extension refs
        ACPI: property: Use data node name and reg property for graphs
        ACPI: property: Allow direct graph endpoint references
        ACPI: property: Make the ACPI graph API private
        ACPI: property: Document hierarchical data extension references
        ACPI: property: Allow making references to non-device nodes
        ACPI: Convert ACPI reference args to generic fwnode reference args
      4a3f421b
    • Rafael J. Wysocki's avatar
      Merge branch 'pm-cpufreq' · 7425ecd5
      Rafael J. Wysocki authored
      Merge cpufreq changes for 4.19.
      
      These are driver extensions, some driver and core fixes and a new
      tracepoint for the tracking of frequency limits changes (coming from
      Android).
      
      * pm-cpufreq:
        cpufreq: intel_pstate: Ignore turbo active ratio in HWP
        cpufreq: Fix a circular lock dependency problem
        cpu/hotplug: Add a cpus_read_trylock() function
        cpufreq: trace frequency limits change
        cpufreq: intel_pstate: Show different max frequency with turbo 3 and HWP
        cpufreq: pcc-cpufreq: Disable dynamic scaling on many-CPU systems
        cpufreq: qcom-kryo: Silently error out on EPROBE_DEFER
        cpufreq / CPPC: Add cpuinfo_cur_freq support for CPPC
        cpufreq: armada-37xx: Add AVS support
        dt-bindings: marvell: Add documentation for the Armada 3700 AVS binding
        cpufreq: imx6q/thermal: imx: register cooling device depending on OF
        cpufreq: intel_pstate: use match_string() helper
      7425ecd5
    • Rafael J. Wysocki's avatar
      Merge branches 'powercap' and 'pm-devfreq' · 8f0f2b62
      Rafael J. Wysocki authored
      Merge devfreq changes and a new CPU idle time injection framework
      for 4.19.
      
      * powercap:
        powercap / idle_inject: Add an idle injection framework
      
      * pm-devfreq:
        PM / devfreq: rk3399_dmc: Fix duplicated opp table on reload.
        PM / devfreq: Init user limits from OPP limits, not viceversa
        PM / devfreq: rk3399_dmc: fix spelling mistakes.
        PM / devfreq: rk3399_dmc: do not print error when get supply and clk defer.
        dt-bindings: devfreq: rk3399_dmc: move interrupts to be optional.
        PM / devfreq: rk3399_dmc: remove wait for dcf irq event.
        dt-bindings: clock: add rk3399 DDR3 standard speed bins.
        dt-bindings: devfreq: rk3399_dmc: improve binding documentation.
        PM / devfreq: use put_device() instead of kfree()
        PM / devfreq: exynos-ppmu: Delete an error message for a failed memory allocation in exynos_ppmu_probe()
      8f0f2b62
    • Rafael J. Wysocki's avatar
      Merge branches 'pm-core', 'pm-domains', 'pm-sleep', 'acpi-pm' and 'pm-cpuidle' · 17bc3432
      Rafael J. Wysocki authored
      Merge changes in the PM core, system-wide PM infrastructure, generic
      power domains (genpd) framework, ACPI PM infrastructure and cpuidle
      for 4.19.
      
      * pm-core:
        driver core: Add flag to autoremove device link on supplier unbind
        driver core: Rename flag AUTOREMOVE to AUTOREMOVE_CONSUMER
      
      * pm-domains:
        PM / Domains: Introduce dev_pm_domain_attach_by_name()
        PM / Domains: Introduce option to attach a device by name to genpd
        PM / Domains: dt: Add a power-domain-names property
      
      * pm-sleep:
        PM / reboot: Eliminate race between reboot and suspend
        PM / hibernate: Mark expected switch fall-through
        x86/power/hibernate_64: Remove VLA usage
        PM / hibernate: cast PAGE_SIZE to int when comparing with error code
      
      * acpi-pm:
        ACPI / PM: save NVS memory for ASUS 1025C laptop
        ACPI / PM: Default to s2idle in all machines supporting LP S0
      
      * pm-cpuidle:
        ARM: cpuidle: silence error on driver registration failure
      17bc3432
    • Linus Torvalds's avatar
      Merge tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4 · 10f3e23f
      Linus Torvalds authored
      Pull ext4 updates from Ted Ts'o:
      
       - Convert content from the ext4 wiki to Documentation rst files so it
         is more likely to be updated as we add new features to ext4.
      
       - Add 64-bit timestamp support to ext4's superblock fields.
      
       - ... and the usual bug fixes and cleanups, including a Spectre gadget
         fixup and some hardening against maliciously corrupted file systems.
      
      * tag 'ext4_for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4: (34 commits)
        ext4: remove unneeded variable "err" in ext4_mb_release_inode_pa()
        ext4: improve code readability in ext4_iget()
        ext4: fix spectre gadget in ext4_mb_regular_allocator()
        ext4: check for NUL characters in extended attribute's name
        ext4: use ext4_warning() for sb_getblk failure
        ext4: fix race when setting the bitmap corrupted flag
        ext4: reset error code in ext4_find_entry in fallback
        ext4: handle layout changes to pinned DAX mappings
        dax: dax_layout_busy_page() warn on !exceptional
        docs: fix up the obviously obsolete bits in the new ext4 documentation
        docs: add new ext4 superblock time extension fields
        docs: create filesystem internal section
        ext4: use swap macro in mext_page_double_lock
        ext4: check allocation failure when duplicating "data" in ext4_remount()
        ext4: fix warning message in ext4_enable_quotas()
        ext4: super: extend timestamps to 40 bits
        jbd2: replace current_kernel_time64 with ktime equivalent
        ext4: use timespec64 for all inode times
        ext4: use ktime_get_real_seconds for i_dtime
        ext4: use 64-bit timestamps for mmp_time
        ...
      10f3e23f
    • Linus Torvalds's avatar
      Merge tag '4.19-smb3' of git://git.samba.org/sfrench/cifs-2.6 · 3bb37da5
      Linus Torvalds authored
      Pull cifs updates from Steve French:
       "smb3/cifs fixes (including 8 for stable).
      
        Other improvements include:
      
         - improved tracing, improved stats
      
         - snapshots (previous version mounts work now over SMB3)
      
         - performance (compounding enabled for statfs, ~40% faster).
      
         - security (make it possible to build cifs.ko with insecure vers=1.0
           disabled in Kconfig)"
      
      * tag '4.19-smb3' of git://git.samba.org/sfrench/cifs-2.6: (43 commits)
        smb3: create smb3 equivalent alias for cifs pseudo-xattrs
        smb3: allow previous versions to be mounted with snapshot= mount parm
        cifs: don't show domain= in mount output when domain is empty
        cifs: add missing support for ACLs in SMB 3.11
        smb3: enumerating snapshots was leaving part of the data off end
        cifs: update smb2_queryfs() to use compounding
        cifs: update receive_encrypted_standard to handle compounded responses
        cifs: create SMB2_open_init()/SMB2_open_free() helpers.
        cifs: add SMB2_query_info_[init|free]()
        cifs: add SMB2_close_init()/SMB2_close_free()
        smb3: display stats counters for number of slow commands
        CIFS: fix uninitialized ptr deref in smb2 signing
        smb3: Do not send SMB3 SET_INFO if nothing changed
        smb3: fix minor debug output for CONFIG_CIFS_STATS
        smb3: add tracepoint for slow responses
        cifs: add compound_send_recv()
        cifs: make smb_send_rqst take an array of requests
        cifs: update init_sg, crypt_message to take an array of rqst
        smb3: update readme to correct information about /proc/fs/cifs/Stats
        smb3: fix reset of bytes read and written stats
        ...
      3bb37da5
    • Linus Torvalds's avatar
      Merge branch 'iomap-4.19-merge' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux · 161fa27f
      Linus Torvalds authored
      Pull fs iomap refactoring from Darrick Wong:
       "This is the first part of the XFS changes for 4.19.
      
        Christoph and Andreas coordinated some refactoring work on the iomap
        code in preparation for removing buffer heads from XFS and porting
        gfs2 to iomap. I'm sending this small pull request ahead of the main
        XFS merge to avoid holding up gfs2 unnecessarily"
      
      * 'iomap-4.19-merge' of git://git.kernel.org/pub/scm/fs/xfs/xfs-linux:
        iomap: add inline data support to iomap_readpage_actor
        iomap: support direct I/O to inline data
        iomap: refactor iomap_dio_actor
        iomap: add initial support for writes without buffer heads
        iomap: add an iomap-based readpage and readpages implementation
        iomap: add private pointer to struct iomap
        iomap: add a page_done callback
        iomap: generic inline data handling
        iomap: complete partial direct I/O writes synchronously
        iomap: mark newly allocated buffer heads as new
        fs: factor out a __generic_write_end helper
      161fa27f