20 Jan, 2021

1 commit


14 Dec, 2020

1 commit


15 Oct, 2020

1 commit

  • Pull MFD updates from Lee Jones:
    "New Drivers:
    - Add support for initialising shared (between children) Regmaps
    - Add support for Kontron SL28CPLD
    - Add support for ENE KB3930 Embedded Controller
    - Add support for Intel FPGA PAC MAX 10 BMC

    New Device Support:
    - Add support for Power to Ricoh RN5T618
    - Add support for UART to Intel Lakefield
    - Add support for LP87524_Q1 to Texas Instruments LP87565

    New Functionality:
    - Device Tree; ene-kb3930, sl28cpld, syscon, lp87565, lp87524-q1
    - Use new helper dev_err_probe(); madera-core, stmfx, wcd934x
    - Use new GPIOD API; dm355evm_msp
    - Add wake-up capability; sprd-sc27xx-spi
    - Add ACPI support; kempld-core

    Fix-ups:
    - Trivial (spelling/whitespace); Kconfig, ab8500
    - Fix for unused variables; khadas-mcu, kempld-core
    - Remove unused header file(s); mt6360-core
    - Use correct IRQ flags in docs; act8945a, gateworks-gsc, rohm,bd70528-pmic
    - Add COMPILE_TEST support; asic3, tmio_core
    - Add dependency on I2C; SL28CPLD

    Bug Fixes:
    - Fix memory leak(s); sm501
    - Do not free regmap_config's 'name' until exit; syscon"

    * tag 'mfd-next-5.10' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (34 commits)
    mfd: kempld-core: Fix unused variable 'kempld_acpi_table' when !ACPI
    mfd: sl28cpld: Depend on I2C
    mfd: asic3: Build if COMPILE_TEST=y
    dt-bindings: mfd: Correct interrupt flags in examples
    mfd: Add ACPI support to Kontron PLD driver
    mfd: intel-m10-bmc: Add Intel MAX 10 BMC chip support for Intel FPGA PAC
    mfd: lp87565: Add LP87524-Q1 variant
    dt-bindings: mfd: Add LP87524-Q1
    dt-bindings: mfd: lp87565: Convert to yaml
    mfd: mt6360: Remove unused include
    mfd: sm501: Fix leaks in probe()
    mfd: syscon: Don't free allocated name for regmap_config
    dt-bindings: mfd: syscon: Document Exynos3 and Exynos5433 compatibles
    dt-bindings: mfd: syscon: Merge Samsung Exynos Sysreg bindings
    dt-bindings: mfd: ab8500: Remove weird Unicode characters
    mfd: sprd: Add wakeup capability for PMIC IRQ
    mfd: intel-lpss: Add device IDs for UART ports for Lakefield
    mfd: dm355evm_msp: Convert LEDs to GPIO descriptor table
    mfd: wcd934x: Simplify with dev_err_probe()
    mfd: stmfx: Simplify with dev_err_probe()
    ...

    Linus Torvalds
     

30 Sep, 2020

1 commit

  • Make the gpiolib-cdev module a build option. This allows the CDEV
    interface to be removed from the kernel to reduce kernel size in
    applications where is it not required, and provides the parent for
    other CDEV interface specific build options to follow.

    Suggested-by: Bartosz Golaszewski
    Signed-off-by: Kent Gibson
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Bartosz Golaszewski

    Kent Gibson
     

17 Sep, 2020

1 commit

  • Add support for the GPIO controller of the sl28 board management
    controller. This driver is part of a multi-function device.

    A controller has 8 lines. There are three different flavors:
    full-featured GPIO with interrupt support, input-only and output-only.

    Signed-off-by: Michael Walle
    Reviewed-by: Linus Walleij
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Lee Jones

    Michael Walle
     

14 Sep, 2020

1 commit

  • Now that devprop_gpiochip_set_names() is only used in a single place
    inside drivers/gpio/gpiolib.c, there's no need anymore for it to be
    exported or to even live in its own source file. Pull this function into
    the core source file for gpiolib.

    Signed-off-by: Bartosz Golaszewski
    Reviewed-by: Mika Westerberg
    Reviewed-by: Andy Shevchenko

    Bartosz Golaszewski
     

16 Jul, 2020

1 commit

  • NXP PCA9570 is a 4-bit I2C GPO expander without interrupt functionality.
    Its ports are controlled only by a data byte without register address.

    Signed-off-by: Sungbo Eo
    Reviewed-by: Andy Shevchenko
    Datasheet: https://www.nxp.com/docs/en/data-sheet/PCA9570.pdf
    Link: https://lore.kernel.org/r/20200709134829.216393-1-mans0n@gorani.run
    Signed-off-by: Linus Walleij

    Sungbo Eo
     

21 Jun, 2020

1 commit

  • Split the cdev specific functionality out of gpiolib.c and into
    gpiolib-cdev.c. This improves the readability and maintainability of both
    the cdev and core gpiolib code.

    Suggested-by: Bartosz Golaszewski
    Signed-off-by: Kent Gibson
    Link: https://lore.kernel.org/r/20200616093615.5167-1-warthog618@gmail.com
    Signed-off-by: Linus Walleij

    Kent Gibson
     

03 Jun, 2020

1 commit

  • There are quite a lot simple GPIO controller which are using regmap to
    access the hardware. This driver tries to be a base to unify existing
    code into one place. This won't cover everything but it should be a good
    starting point.

    It does not implement its own irq_chip because there is already a
    generic one for regmap based devices. Instead, the irq_chip will be
    instantiated in the parent driver and its irq domain will be associate
    to this driver.

    For now it consists of the usual registers, like set (and an optional
    clear) data register, an input register and direction registers.
    Out-of-the-box, it supports consecutive register mappings and mappings
    where the registers have gaps between them with a linear mapping between
    GPIO offset and bit position. For weirder mappings the user can register
    its own .xlate().

    Signed-off-by: Michael Walle
    Reviewed-by: Andy Shevchenko
    Link: https://lore.kernel.org/r/20200528145845.31436-3-michael@walle.cc
    Signed-off-by: Linus Walleij

    Michael Walle
     

18 May, 2020

1 commit

  • GPIO controllers are exported to userspace using /dev/gpiochip*
    character devices. Access control to these devices is provided by
    standard UNIX file system permissions, on an all-or-nothing basis:
    either a GPIO controller is accessible for a user, or it is not.
    Currently no mechanism exists to control access to individual GPIOs.

    Hence add a GPIO driver to aggregate existing GPIOs, and expose them as
    a new gpiochip.

    This supports the following use cases:
    - Aggregating GPIOs using Sysfs
    This is useful for implementing access control, and assigning a set
    of GPIOs to a specific user or virtual machine.
    - Generic GPIO Driver
    This is useful for industrial control, where it can provide
    userspace access to a simple GPIO-operated device described in DT,
    cfr. e.g. spidev for SPI-operated devices.

    Signed-off-by: Geert Uytterhoeven
    Tested-by: Eugeniu Rosca
    Reviewed-by: Eugeniu Rosca
    Link: https://lore.kernel.org/r/20200511145257.22970-5-geert+renesas@glider.be
    Signed-off-by: Linus Walleij

    Geert Uytterhoeven
     

09 Mar, 2020

1 commit


03 Feb, 2020

1 commit

  • Pull MFD updates from Lee Jones:
    "New Drivers:
    - Add support for ROHM BD71828 PMICs and GPIOs
    - Add support for Qualcomm Aqstic Audio Codecs WCD9340 and WCD9341

    New Device Support:
    - Add support for BD71828 to BD70528 RTC driver
    - Add support for Intel's Jasper Lake to LPSS PCI

    New Functionality:
    - Add support for Power Key to ROHM BD71828
    - Add support for Clocks to ROHM BD71828
    - Add support for GPIOs to Dialog DA9062
    - Add support for USB PD Notify to ChromiumOS EC
    - Allow callers to specify args when requesting regmap lookup; syscon

    Fix-ups:
    - Improve error handling and sanity checking; atmel-hlcdc, dln2
    - Device Tree support/documentation; bd71828, da9062, xylon,logicvc,
    ab8500, max14577, atmel-usart
    - Match devices using platform IDs; bd7xxxx
    - Refactor BD718x7 regulator component; bd718x7-regulator
    - Use standard interfaces/helpers; syscon, sm501
    - Trivial (whitespace, spelling, etc); ab8500-core, Kconfig
    - Remove unused code; db8500-prcmu, tqmx86
    - Wait until boot has finished before accessing registers;
    madera-core
    - Provide missing register value defaults; cs47l15-tables
    - Allow more time for hardware to reset; madera-core

    Bug Fixes:
    - Fix erroneous register values; rohm-bd70528
    - Fix register volatility; axp20x, rn5t618
    - Fix Kconfig dependencies; MFD_MAX77650
    - Fix incorrect compatible string; da9062-core
    - Fix syscon_regmap_lookup_by_phandle_args() stub; syscon"

    * tag 'mfd-next-5.6' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (41 commits)
    mfd: syscon: Fix syscon_regmap_lookup_by_phandle_args() dummy
    mfd: wcd934x: Add support to wcd9340/wcd9341 codec
    mfd: syscon: Add arguments support for syscon reference
    mfd: rn5t618: Mark ADC control register volatile
    dt-bindings: atmel-usart: Add microchip,sam9x60-{usart, dbgu}
    dt-bindings: atmel-usart: Remove wildcard
    mfd: cros_ec: Add cros-usbpd-notify subdevice
    mfd: da9062: Fix watchdog compatible string
    mfd: madera: Allow more time for hardware reset
    mfd: cs47l15: Add missing register default
    mfd: madera: Wait for boot done before accessing any other registers
    mfd: Kconfig: Rename Samsung to lowercase
    mfd: tqmx86: remove set but not used variable 'i2c_ien'
    mfd: dbx500-prcmu: Drop DSI pll clock functions
    mfd: dbx500-prcmu: Drop set_display_clocks()
    mfd: max77650: Select REGMAP_IRQ in Kconfig
    mfd: axp20x: Mark AXP20X_VBUS_IPSOUT_MGMT as volatile
    mfd: ab8500: Fix ab8500-clk typo
    mfd: intel-lpss: Add Intel Jasper Lake PCI IDs
    dt-bindings: mfd: max14577: Add reference to max14040_battery.txt descriptions
    ...

    Linus Torvalds
     

30 Jan, 2020

2 commits

  • Pull pin control updates from Linus Walleij:
    "This is the bulk of pin control changes, nothing too exciting about
    this.

    Some changes hit arch/sh and arch/arm but are well isolated and
    acknowledged by the respective arch maintainers.

    Core changes:

    - Dropped the chained IRQ setup callback into GPIOLIB as we got rid
    of the last users of that in this changeset.

    New drivers:

    - New driver for Ingenic X1830.

    - New driver for Freescale i.MX8MP.

    Driver enhancements:

    - Fix all remaining Intel drivers to pass their IRQ chips along with
    the GPIO chips.

    - Intel Baytrail allocates its irqchip dynamically.

    - Intel Lynxpoint is thoroughly rewritten and modernized.

    - Aspeed AST2600 pin muxing and configuration is much improved.

    - Qualcomm SC7180 functions are updated and wakeup interrupt map is
    provided.

    - A whole slew of Renesas SH-PFC cleanups and improvements.

    - Fix up the Intel DT bindings to use the generic YAML DT bindings
    schema (a first user of this)"

    * tag 'pinctrl-v5.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-pinctrl: (99 commits)
    pinctrl: madera: Remove extra blank line
    pinctrl: qcom: Don't lock around irq_set_irq_wake()
    pinctrl: mvebu: armada-37xx: use use platform api
    gpio: Drop the chained IRQ handler assign function
    pinctrl: freescale: Add i.MX8MP pinctrl driver support
    dt-bindings: imx: Add pinctrl binding doc for i.MX8MP
    pinctrl: tigerlake: Tiger Lake uses _HID enumeration
    pinctrl: sunrisepoint: Add Coffee Lake-S ACPI ID
    pinctrl: iproc: Use platform_get_irq_optional() to avoid error message
    pinctrl: dt-bindings: Fix some errors in the lgm and pinmux schema
    pinctrl: intel: Pass irqchip when adding gpiochip
    pinctrl: intel: Add GPIO pin mapping ranges via callback
    pinctrl: baytrail: Replace WARN with dev_info_once when setting direct-irq pin to output
    pinctrl: baytrail: Do not clear IRQ flags on direct-irq enabled pins
    pinctrl: sunrisepoint: Add missing Interrupt Status register offset
    pinctrl: sh-pfc: Split R-Car H3 support in two independent drivers
    pinctrl: artpec6: fix __iomem on reg in set
    pinctrl: ingenic: Use devm_platform_ioremap_resource()
    pinctrl: ingenic: Factorize irq_set_type function
    pinctrl: ingenic: Remove duplicated ingenic_chip_info structures
    ...

    Linus Torvalds
     
  • Pull GPIO updates from Linus Walleij:
    "This is the bulk of GPIO changes for the v5.6 kernel cycle.

    This is a pretty calm cycle so far, nothing special going on really.
    Some more changes will come in from the irqchip and pin control trees.

    I also deleted an orphan include file for FMC that was dangling since
    subsystem was removed.

    Core changes:

    - Document the usecases for the kernelspace vs userspace handling of
    GPIOs.

    - Handle MSI (message signalled interrupts) properly in the core
    hierarchical irqdomain code.

    - Fix a rare race condition while initializing the descriptor array.

    New drivers:

    - Xylon LogiCVC GPIO driver.

    - WDC934x GPIO controller driver.

    Driver improvements:

    - Implemented suspend/resume in the Tegra driver.

    - MPC8xx edge detection fixup.

    - Properly convert ThunderX to use hierarchical irqdomain with
    GPIOLIB_IRQCHIP on top of the revert of the previous buggy
    switchover. This time it works (hopefully).

    Misc:

    - Drop a FMC remnant file

    - A slew of fixes"

    * tag 'gpio-v5.6-1' of git://git.kernel.org/pub/scm/linux/kernel/git/linusw/linux-gpio: (48 commits)
    MAINTAINERS: Replace Tien Hock Loh as Altera PIO maintainer
    gpiolib: hold gpio devices lock until ->descs array is initialised
    gpio: aspeed-sgpio: fixed typos
    gpio: mvebu: clear irq in edge cause register before unmask edge irq
    gpiolib: Lower verbosity when allocating hierarchy irq
    gpiolib: Remove duplicated function gpio_do_set_config()
    gpio: Fix the no return statement warning
    gpio: wcd934x: Add support to wcd934x gpio controller
    gpiolib: remove set but not used variable 'config'
    gpio: vx855: fixed a typo
    gpio: mockup: sort headers alphabetically
    gpio: mockup: update the license tag
    gpio: Remove the unused flags
    gpiolib: Set lockdep class for hierarchical irq domains
    gpio: thunderx: Switch to GPIOLIB_IRQCHIP
    gpiolib: Add the support for the msi parent domain
    gpiolib: Add support for the irqdomain which doesn't use irq_fwspec as arg
    gpio: Add use guidance documentation
    dt-bindings: gpio: wcd934x: Add bindings for gpio
    gpio: altera: change to platform_get_irq_optional to avoid false-positive error
    ...

    Linus Torvalds
     

24 Jan, 2020

1 commit

  • ROHM BD71828 PMIC contains 4 pins which can be configured by OTP
    to be used for general purposes. First 3 can be used as outputs
    and 4.th pin can be used as input. Allow them to be controlled
    via GPIO framework.

    The driver assumes all of the pins are configured as GPIOs and
    trusts that the reserved pins in other OTP configurations are
    excluded from control using "gpio-reserved-ranges" device tree
    property (or left untouched by GPIO users).

    Typical use for 4.th pin (input) is to use it as HALL sensor
    input so that this pin state is toggled when HALL sensor detects
    LID position change (from close to open or open to close). PMIC
    HW implements some extra logic which allows PMIC to power-up the
    system when this pin is toggled. Please see the data sheet for
    details of GPIO options which can be selected by OTP settings.

    Signed-off-by: Matti Vaittinen
    Reviewed-by: Bartosz Golaszewski
    Reviewed-by: Linus Walleij
    Signed-off-by: Lee Jones

    Matti Vaittinen
     

21 Jan, 2020

1 commit

  • Adds the GPIO driver for SiFive RISC-V SoCs.

    Signed-off-by: Wesley W. Terpstra
    [Atish: Various fixes and code cleanup]
    Signed-off-by: Atish Patra
    Signed-off-by: Yash Shah
    Signed-off-by: Marc Zyngier
    Reviewed-by: Bartosz Golaszewski
    Reviewed-by: Linus Walleij
    Link: https://lore.kernel.org/r/1575976274-13487-6-git-send-email-yash.shah@sifive.com

    Yash Shah
     

15 Jan, 2020

1 commit


13 Dec, 2019

2 commits

  • Move Lynxpoint GPIO driver under Intel pin control umbrella
    for further transformation to a real pin control driver.

    Reviewed-by: Linus Walleij
    Signed-off-by: Andy Shevchenko
    Acked-by: Mika Westerberg

    Andy Shevchenko
     
  • The LogiCVC display hardware block comes with GPIO capabilities
    that must be exposed separately from the main driver (as GPIOs) for
    use with regulators and panels. A syscon is used to share the same
    regmap across the two drivers.

    Add a minimalistic GPIO driver to drive these GPIOs, using a syscon
    regmap when available.

    Signed-off-by: Paul Kocialkowski
    Link: https://lore.kernel.org/r/20191203141243.251058-5-paul.kocialkowski@bootlin.com
    Signed-off-by: Linus Walleij

    Paul Kocialkowski
     

29 Oct, 2019

2 commits

  • This driver supports the Chip Common A GPIO controller present on a
    number of Broadcom switch ASICs with integrated SoCs. The controller is
    similar to the pinctrl-nsp-gpio and pinctrl-iproc-gpio blocks but
    different enough that a separate driver is required.

    This has been ported from Broadcom's XLDK 5.0.3 retaining only the CCA
    support (pinctrl-iproc-gpio covers CCB).

    Signed-off-by: Chris Packham
    Link: https://lore.kernel.org/r/20191024202703.8017-3-chris.packham@alliedtelesis.co.nz
    Acked-by: Scott Branden
    Signed-off-by: Linus Walleij

    Chris Packham
     
  • Add support for GPIO controller from RDA Micro. This GPIO controller
    is an in house IP, developed by RDA Micro (now Unisoc) for the use in
    RDA88* series of SoCs. There are multiple GPIO ports present in all SoCs,
    each capable of addressing 32 GPIOs. But only first 8 pins have the
    interrupt capability.

    Signed-off-by: Manivannan Sadhasivam
    Link: https://lore.kernel.org/r/20191021064413.19840-4-manivannan.sadhasivam@linaro.org
    Reviewed-by: Bartosz Golaszewski
    Signed-off-by: Linus Walleij

    Manivannan Sadhasivam
     

01 Oct, 2019

1 commit

  • This renames the "gpio-aspeed" driver to conform with other
    GPIO drivers as "gpio-aspeed-sgpio.c". All GPIO drivers
    should start with the string "gpio-" no special exceptions.

    Also the Kconfig and Makefile entries should normally
    go with the driver but I missed this in my review, sorry
    for mistake. "CONFIG_GPIO_ASPEED_SGPIO" is used to
    activate this driver.

    Cc: Hongwei Zhang
    Fixes: 7db47faae79b ("gpio: aspeed: Add SGPIO driver")
    Signed-off-by: Linus Walleij
    Acked-by: Andrew Jeffery
    Link: https://lore.kernel.org/r/20190927114833.12551-1-linus.walleij@linaro.org

    Linus Walleij
     

17 Sep, 2019

1 commit

  • Pull ARM SoC driver updates from Arnd Bergmann:
    "This contains driver changes that are tightly connected to SoC
    specific code. Aside from smaller cleanups and bug fixes, here is a
    list of the notable changes.

    New device drivers:

    - The Turris Mox router has a new "moxtet" bus driver for its
    on-board pluggable extension bus. The same platform also gains a
    firmware driver.

    - The Samsung Exynos family gains a new Chipid driver exporting using
    the soc device sysfs interface

    - A similar socinfo driver for Qualcomm Snapdragon chips.

    - A firmware driver for the NXP i.MX DSP IPC protocol using shared
    memory and a mailbox

    Other changes:

    - The i.MX reset controller driver now supports the NXP i.MX8MM chip

    - Amlogic SoC specific drivers gain support for the S905X3 and A311D
    chips

    - A rework of the TI Davinci framebuffer driver to allow important
    cleanups in the platform code

    - A couple of device drivers for removed ARM SoC platforms are
    removed. Most of the removals were picked up by other maintainers,
    this contains whatever was left"

    * tag 'armsoc-drivers' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (123 commits)
    bus: uniphier-system-bus: use devm_platform_ioremap_resource()
    soc: ti: ti_sci_pm_domains: Add support for exclusive and shared access
    dt-bindings: ti_sci_pm_domains: Add support for exclusive and shared access
    firmware: ti_sci: Allow for device shared and exclusive requests
    bus: imx-weim: remove incorrect __init annotations
    fbdev: remove w90x900/nuc900 platform drivers
    spi: remove w90x900 driver
    net: remove w90p910-ether driver
    net: remove ks8695 driver
    firmware: turris-mox-rwtm: Add sysfs documentation
    firmware: Add Turris Mox rWTM firmware driver
    dt-bindings: firmware: Document cznic,turris-mox-rwtm binding
    bus: moxtet: fix unsigned comparison to less than zero
    bus: moxtet: remove set but not used variable 'dummy'
    ARM: scoop: Use the right include
    dt-bindings: power: add Amlogic Everything-Else power domains bindings
    soc: amlogic: Add support for Everything-Else power domains controller
    fbdev: da8xx: use resource management for dma
    fbdev: da8xx-fb: drop a redundant if
    fbdev: da8xx-fb: use devm_platform_ioremap_resource()
    ...

    Linus Torvalds
     

03 Sep, 2019

1 commit


14 Aug, 2019

1 commit

  • This adds support for interpreting the input and output bits of one
    device on Moxtet bus as GPIOs.
    This is needed for example by the SFP cage module of Turris Mox.

    Link: https://lore.kernel.org/r/20190812161118.21476-5-marek.behun@nic.cz
    Signed-off-by: Marek Behún
    Reviewed-by: Linus Walleij
    Signed-off-by: Arnd Bergmann

    Marek Behún
     

12 Aug, 2019

1 commit


10 Aug, 2019

1 commit

  • The platform is getting removed, so there are no remaining
    users of this driver.

    Signed-off-by: Arnd Bergmann
    Link: https://lore.kernel.org/r/20190809202749.742267-4-arnd@arndb.de
    Signed-off-by: Linus Walleij

    Arnd Bergmann
     

16 Jul, 2019

1 commit

  • Pull MFD updates from Lee Jones:
    "Core Frameworks:
    - Set 'struct device' fwnode when registering a new device

    New Drivers:
    - Add support for ROHM BD70528 PMIC

    New Device Support:
    - Add support for LP87561 4-Phase Regulator to TI LP87565 PMIC
    - Add support for RK809 and RK817 to Rockchip RK808
    - Add support for Lid Angle to ChromeOS core
    - Add support for CS47L15 CODEC to Madera core
    - Add support for CS47L92 CODEC to Madera core
    - Add support for ChromeOS (legacy) Accelerometers in ChromeOS core
    - Add support for Add Intel Elkhart Lake PCH to Intel LPSS

    New Functionality:
    - Provide regulator supply information when registering; madera-core
    - Additional Device Tree support; lp87565, madera, cros-ec, rohm,bd71837-pmic
    - Allow over-riding power button press via Device Tree; rohm-bd718x7
    - Differentiate between running processors; cros_ec_dev

    Fix-ups:
    - Big header file update; cros_ec_commands.h
    - Split header per-subsystem; rohm-bd718x7
    - Remove superfluous code; menelaus, cs5535-mfd, cs47lXX-tables
    - Trivial; sorting, coding style; intel-lpss-pci
    - Only remove Power Off functionality if set locally; rk808
    - Make use for Power Off Prepare(); rk808
    - Fix spelling mistake in header guards; stmfx
    - Properly free IDA resources
    - SPDX fixups; cs47lXX-tables, madera
    - Error path fixups; hi655x-pmic

    Bug Fixes:
    - Add missing break in case() statement
    - Repair undefined behaviour when not initialising variables; arizona-core, madera-core
    - Fix reference to Device Tree documentation; madera"

    * tag 'mfd-next-5.3' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (45 commits)
    mfd: hi655x-pmic: Fix missing return value check for devm_regmap_init_mmio_clk
    mfd: madera: Fixup SPDX headers
    mfd: madera: Remove some unused registers and fix some defaults
    mfd: intel-lpss: Release IDA resources
    mfd: intel-lpss: Add Intel Elkhart Lake PCH PCI IDs
    mfd: cs5535-mfd: Remove ifdef OLPC noise
    mfd: stmfx: Fix macro definition spelling
    dt-bindings: mfd: Add link to ROHM BD71847 Datasheet
    MAINAINERS: Swap words in INTEL PMIC MULTIFUNCTION DEVICE DRIVERS
    mfd: cros_ec_dev: Register cros_ec_accel_legacy driver as a subdevice
    mfd: rk808: Prepare rk805 for poweroff
    mfd: rk808: Check pm_power_off pointer
    mfd: cros_ec: differentiate SCP from EC by feature bit
    dt-bindings: Add binding for cros-ec-rpmsg
    mfd: madera: Add Madera core support for CS47L92
    mfd: madera: Add Madera core support for CS47L15
    mfd: madera: Update DT bindings to add additional CODECs
    mfd: madera: Add supply mapping for MICVDD
    mfd: madera: Fix potential uninitialised use of variable
    mfd: madera: Fix bad reference to pinctrl.txt file
    ...

    Linus Torvalds
     

27 Jun, 2019

2 commits


16 May, 2019

1 commit

  • Pull ARM SoC platform updates from Olof Johansson:
    "SoC updates, mostly refactorings and cleanups of old legacy platforms.

    Major themes this release:

    - Conversion of ixp4xx to a modern platform (drivers, DT, bindings)

    - Moving some of the ep93xx headers around to get it closer to
    multiplatform enabled.

    - Cleanups of Davinci

    This also contains a few patches that were queued up as fixes before
    5.1 but I didn't get sent in before release"

    * tag 'armsoc-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc: (123 commits)
    ARM: debug-ll: add default address for digicolor
    ARM: u300: regulator: add MODULE_LICENSE()
    ARM: ep93xx: move private headers out of mach/*
    ARM: ep93xx: move pinctrl interfaces into include/linux/soc
    ARM: ep93xx: keypad: stop using mach/platform.h
    ARM: ep93xx: move network platform data to separate header
    ARM: stm32: add AMBA support for stm32 family
    MAINTAINERS: update arch/arm/mach-davinci
    ARM: rockchip: add missing of_node_put in rockchip_smp_prepare_pmu
    ARM: dts: Add queue manager and NPE to the IXP4xx DTSI
    soc: ixp4xx: qmgr: Add DT probe code
    soc: ixp4xx: qmgr: Add DT bindings for IXP4xx qmgr
    soc: ixp4xx: npe: Add DT probe code
    soc: ixp4xx: Add DT bindings for IXP4xx NPE
    soc: ixp4xx: qmgr: Pass resources
    soc: ixp4xx: Remove unused functions
    soc: ixp4xx: Uninline several functions
    soc: ixp4xx: npe: Pass addresses as resources
    ARM: ixp4xx: Turn the QMGR into a platform device
    ARM: ixp4xx: Turn the NPE into a platform device
    ...

    Linus Torvalds
     

15 May, 2019

1 commit

  • Pull MFD updates from Lee Jones:
    "Core Framework:
    - Document (kerneldoc) core mfd_add_devices() API

    New Drivers:
    - Altera SOCFPGA System Manager
    - Maxim MAX77650/77651 PMIC
    - Maxim MAX77663 PMIC
    - ST Multi-Function eXpander (STMFX)

    New Device Support:
    - LEDs support in Intel Cherry Trail Whiskey Cove PMIC
    - RTC support in SAMSUNG Electronics S2MPA01 PMIC
    - SAM9X60 support in Atmel HLCDC (High-end LCD Controller)
    - USB X-Powers AXP 8xx PMICs
    - Integrated Sensor Hub (ISH) in ChromeOS EC
    - USB PD Logger in ChromeOS EC
    - AXP223 in X-Powers AXP series PMICs
    - Power Supply in X-Powers AXP 803 PMICs
    - Comet Lake in Intel Low Power Subsystem
    - Fingerprint MCU in ChromeOS EC
    - Touchpad MCU in ChromeOS EC
    - Move TI LM3532 support to LED

    New Functionality:
    - max77650, max77620: Add/extend DT support
    - max77620 power-off
    - syscon clocking
    - croc_ec host sleep event

    Fix-ups:
    - Trivial; Formatting, spelling, etc; Kconfig, sec-core, ab8500-debugfs
    - Remove unused functionality; rk808, da9063-*
    - SPDX conversion; da9063-*, atmel-*,
    - Adapt/add new register definitions; cs47l35-tables, cs47l90-tables, imx6q-iomuxc-gpr
    - Fix-up DT bindings; ti-lmu, cirrus,lochnagar
    - Simply obtaining driver data; ssbi, t7l66xb, tc6387xb, tc6393xb

    Bug Fixes:
    - Fix incorrect defined values; max77620, da9063
    - Fix device initialisation; twl6040
    - Reset device on init; intel-lpss
    - Fix build warnings when !OF; sun6i-prcm
    - Register OF match tables; tps65912-spi
    - Fix DMI matching; intel_quark_i2c_gpio"

    * tag 'mfd-next-5.2' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/mfd: (65 commits)
    mfd: Use dev_get_drvdata() directly
    mfd: cros_ec: Instantiate properly CrOS Touchpad MCU device
    mfd: cros_ec: Instantiate properly CrOS FP MCU device
    mfd: cros_ec: Update the EC feature codes
    mfd: intel-lpss: Add Intel Comet Lake PCI IDs
    mfd: lochnagar: Add links to binding docs for sound and hwmon
    mfd: ab8500-debugfs: Fix a typo ("deubgfs")
    mfd: imx6sx: Add MQS register definition for iomuxc gpr
    dt-bindings: mfd: LMU: Fix lm3632 dt binding example
    mfd: intel_quark_i2c_gpio: Adjust IOT2000 matching
    mfd: da9063: Fix OTP control register names to match datasheets for DA9063/63L
    mfd: tps65912-spi: Add missing of table registration
    mfd: axp20x: Add USB power supply mfd cell to AXP803
    mfd: sun6i-prcm: Fix build warning for non-OF configurations
    mfd: intel-lpss: Set the device in reset state when init
    platform/chrome: Add support for v1 of host sleep event
    mfd: cros_ec: Add host_sleep_event_v1 command
    mfd: cros_ec: Instantiate the CrOS USB PD logger driver
    mfd: cs47l90: Make DAC_AEC_CONTROL_2 readable
    mfd: cs47l35: Make DAC_AEC_CONTROL_2 readable
    ...

    Linus Torvalds
     

08 May, 2019

1 commit


23 Apr, 2019

1 commit

  • This adds a driver for the IXP4xx GPIO block found in
    the Intel XScale IXP4xx systems.

    The GPIO part of this block is pretty straight-forward and
    just uses the generic MMIO GPIO library.

    The irqchip side of this driver is hierarchical where
    the main irqchip will receive a processed level trigger
    in response to the edge detector of the GPIO block,
    so for this reason the v2 version of the irqdomain API
    is used (as well as in the parent IXP4xx irqchip) and
    masking, unmasking and setting up the type on IRQ
    happens on several levels.

    Currently this GPIO controller will grab the parent
    irqdomain using a special function, but as the platform
    move toward device tree probing, this will not be needed:
    we can just look up the parent irqdomain from the device
    tree.

    Cc: Bartosz Golaszewski
    Signed-off-by: Linus Walleij

    Linus Walleij
     

27 Mar, 2019

1 commit


23 Feb, 2019

1 commit

  • GPIO platform driver for the AMD G-series PCH (eg. on GX-412TC)

    This driver doesn't registers itself automatically, as it needs to
    be provided with platform specific configuration, provided by some
    board driver setup code.

    Didn't implement oftree probing yet, as it's rarely found on x86.

    Cc: linux-gpio@vger.kernel.org
    Cc: linus.walleij@linaro.org
    Cc: bgolaszewski@baylibre.com
    Cc: dvhart@infradead.org
    Cc: platform-driver-x86@vger.kernel.org
    Reviewed-by: Andy Shevchenko
    Signed-off-by: Enrico Weigelt, metux IT consult
    Signed-off-by: Linus Walleij

    Enrico Weigelt, metux IT consult
     

09 Feb, 2019

1 commit


28 Jan, 2019

1 commit


21 Dec, 2018

2 commits

  • This patch adds a driver for Cadence GPIO controller.

    It can be enabled with GPIO_CADENCE Kconfig option.
    It uses generic GPIO infrastructure and works
    as an interrupt controller.
    At the moment it only supports level sensitive irqs.

    Signed-off-by: Jan Kotas
    Signed-off-by: Linus Walleij

    Jan Kotas
     
  • PIOBU pins do not lose their voltage during Backup/Self-refresh.
    This patch adds a simple GPIO controller for them and a
    maintainer for the driver.

    This driver adds support for using the pins as GPIO
    offering the possibility to read/set the voltage.

    Signed-off-by: Andrei Stefanescu
    Signed-off-by: Linus Walleij

    Andrei.Stefanescu@microchip.com