Skip to content

Upgrade drivers/gpio to support Arm SystemReady IR

Al Stone requested to merge ahs3/edge-stream-9:gpio-v0 into main
Bugzilla: https://bugzilla.redhat.com/show_bug.cgi?id=2071835

GPIO is generally in pretty good shape but this patch set brings
it up to 5.19.  More importantly for Arm SystemReady IR, patches
to specific GPIO drivers used by the platforms we are interested
in adding have also been brought up to date.


Akhil R (4):
  gpio: tegra186: Add ACPI support
  dt-bindings: gpio: Add Tegra241 support
  gpio: tegra186: Add support for Tegra241
  gpio: tegra186: Add IRQ per bank for Tegra241

Akira Yokosawa (1):
  gpio: Fix kernel-doc comments to nested union

Al Stone (1):
  rhel: set previously unused GPIO config items

Alexander Shiyan (1):
  gpio: syscon: Remove usage of syscon_regmap_lookup_by_compatible

Andrei Lalaev (1):
  gpiolib: of: fix bounds check for 'gpio-reserved-ranges'

Andy Shevchenko (40):
  gpiolib: Deduplicate forward declaration in the consumer.h header
  gpio: dwapb: Unify ACPI enumeration checks in get_irq() and
    configure_irqs()
  gpio: dwapb: Read GPIO base from gpio-base property
  gpio: dwapb: Get rid of legacy platform data
  gpiolib: acpi: Replace custom code with device_match_acpi_handle()
  gpiolib: acpi: Remove never used devm_acpi_dev_remove_driver_gpios()
  gpiolib: acpi: shrink devm_acpi_dev_add_driver_gpios()
  gpio: mockup: Switch to use kasprintf_strarray()
  gpiolib: acpi: Unify debug and other messages format
  gpio: dwapb: clarify usage of the register file version
  gpio: Get rid of duplicate of_node assignment in the drivers
  gpio: Setup parent device and get rid of unnecessary of_node
    assignment
  gpio: Propagate firmware node from a parent device
  gpio: Remove unused local OF node pointers
  gpio: regmap: Switch to use fwnode instead of of_node
  gpiolib: acpi: make fwnode take precedence in struct gpio_chip
  gpio: dwapb: Switch to use fwnode instead of of_node
  gpio: tegra: Get rid of duplicate of_node assignment
  gpiolib: Never return internal error codes to user space
  gpiolib: Introduce for_each_gpio_desc_with_flag() macro
  gpiolib: Use short form of ternary operator in gpiod_get_index()
  gpiolib: Simplify error path in gpiod_get_index() when requesting GPIO
  gpiolib: sysfs: Move sysfs_emit() calls outside of the mutex lock
  gpiolib: sysfs: Move kstrtox() calls outside of the mutex lock
  gpiolib: sysfs: Simplify edge handling in the code
  gpiolib: acpi: Convert ACPI value of debounce to microseconds
  gpiolib: Use list_first_entry()/list_last_entry()
  gpiolib: Get rid of redundant 'else'
  gpiolib: acpi: Convert type for pin to be unsigned
  gpiolib: Introduce for_each_gpiochip_node() loop helper
  gpiolib: Introduce gpiochip_node_count() helper
  gpiolib: Move error message out of a spinlock
  gpiolib: Embed iterator variable into for_each_gpio_desc_with_flag()
  gpiolib: Split out for_each_gpio_desc() macro
  gpiolib: Refactor gpiolib_dbg_show() with help of for_each_gpio_desc()
  gpiolib: Extract gpio_chip_get_value() wrapper
  gpiolib: Introduce a helper to get first GPIO controller node
  gpio: sch: make irq_chip immutable
  gpiolib: cdev: Fix kernel doc for struct line
  gpio: sim: Declare gpio_sim_hog_config_item_ops static

Bartosz Golaszewski (12):
  gpiolib: improve coding style for local variables
  gpiolib: check the 'ngpios' property in core gpiolib code
  gpiolib: provide gpiod_remove_hogs()
  gpiolib: allow to specify the firmware node in struct gpio_chip
  gpiolib: of: make fwnode take precedence in struct gpio_chip
  gpio: sim: new testing module
  gpiolib: make struct comments into real kernel docs
  gpio: sim: fix the chip_name configfs item
  gpio: sim: fix setting and getting multiple lines
  gpio: sim: fix a typo
  gpio: sim: check the label length when setting up device properties
  gpio: sim: fix hogs with custom chip labels

Bjorn Helgaas (2):
  gpio: pch: Use .driver_data instead of checking Device IDs again
  gpio: pch: Cache &pdev->dev to reduce repetition

Christophe JAILLET (1):
  gpio: sim: Use correct order for the parameters of devm_kcalloc()

Dan Carpenter (2):
  hte: Fix off by one in hte_push_ts_ns()
  hte: Uninitialized variable in hte_ts_get()

Dipen Patel (7):
  drivers: Add hardware timestamp engine (HTE) subsystem
  hte: Add Tegra194 HTE kernel provider
  hte: Add Tegra HTE test driver
  gpiolib: Add HTE support
  gpio: tegra186: Add HTE support
  drivers: Add hardware timestamp engine (HTE) subsystem
  gpiolib: cdev: Add hardware timestamp clock type

Geert Uytterhoeven (5):
  gpio: aggregator: Wrap access to gpiochip_fwd.tmp[]
  gpiolib: Let gpiod_add_lookup_table() call gpiod_add_lookup_tables()
  gpio: aggregator: Add interrupt support
  gpio: aggregator: Fix calling into sleeping GPIO controllers
  gpio: dwapb: Make the irqchip immutable

Hans de Goede (2):
  gpiolib: acpi: Make set-debounce-timeout failures non fatal
  gpiolib: acpi: Do not set the IRQ type if the IRQ is already in use

Hsu Yuchang (1):
  gpio: amdpt: add new device ID and 24-pin support

Jason Wang (1):
  gpio: sch: fix typo in a comment

Joey Gouly (1):
  gpio: Properly document parent data union

Kent Gibson (1):
  gpiolib: cdev: fix null pointer dereference in linereq_free()

Krzysztof Kozlowski (4):
  gpiolib: constify passed device_node pointer
  gpiolib: of: constify few local device_node variables
  gpio: max77620: drop unneeded MODULE_ALIAS
  gpio: tps65218: drop unneeded MODULE_ALIAS

Linus Torvalds (1):
  gpiolib: acpi: use correct format characters

Lukas Bulwahn (1):
  gpio: remove the obsolete MX35 3DS BOARD MC9S08DZ60 GPIO functions

Marc Zyngier (9):
  gpio: Bulk conversion to generic_handle_domain_irq()
  gpio: Allow per-parent interrupt data
  gpio: tegra186: Fix chip_data type confusion
  gpio: Don't fiddle with irqchips marked as immutable
  gpio: Expose the gpiochip_irq_re[ql]res helpers
  gpio: Add helpers to ease the transition towards immutable irq_chip
  gpio: tegra186: Make the irqchip immutable
  gpio: pl061: Make the irqchip immutable
  gpio: Update TODO to mention immutable irq_chip structures

Mario Limonciello (1):
  gpio: Request interrupts after IRQ is initialized

Matti Vaittinen (1):
  gpio: bd70528 Drop BD70528 support

Peter Rosin (1):
  gpiolib: allow line names from device props to override driver names

Prathamesh Shete (2):
  dt-bindings: gpio: Add Tegra234 support
  gpio: tegra186: Add support for Tegra234

Rafael J. Wysocki (1):
  gpio-amdpt: ACPI: Use the ACPI_COMPANION() macro directly

Randy Dunlap (1):
  gpio: clean up Kconfig file

Rob Herring (2):
  gpio: xlp: Remove Netlogic XLP variants
  gpio: xlp: Fix build errors from Netlogic XLP removal

Schspa Shi (1):
  gpio: use raw spinlock for gpio chip shadowed data

Serge Semin (1):
  gpio: dwapb: Don't print error on -EPROBE_DEFER

Sergio Paracuellos (1):
  gpiolib: convert 'devprop_gpiochip_set_names' to support multiple
    gpiochip banks per device

Shreeya Patel (2):
  gpio: Return EPROBE_DEFER if gc->to_irq is NULL
  gpio: Restrict usage of GPIO chip irq members before initialization

Stefan Wahren (2):
  gpiolib: of: Introduce hook for missing gpio-ranges
  gpio: mxs: Fix header comment

Thierry Reding (2):
  gpio: tegra186: Force one interrupt per bank
  gpio: tegra186: Support multiple interrupts per bank

Uwe Kleine-König (2):
  gpio: mc33880: Drop if with an always false condition
  gpio: grgpio: Fix device removing

Vincent Whitchurch (1):
  gpio: virtio: remove timeout

Viresh Kumar (3):
  gpio: Add virtio-gpio driver
  gpio: virtio: Add IRQ support
  gpio: virtio: Fix sparse warnings

Signed-off-by: Al Stone <ahs3@redhat.com>

Merge request reports