linux/Documentation/devicetree/bindings
Linus Torvalds 131561f2ca gpio updates for v6.13-rc1
GPIOLIB core:
 - use the new mem_is_zero() instead of memchr_inv(s, 0, n)
 - don't store debounce period twice needlessly
 - clean-up debugfs handling
 - remove leftover comments referring to no longer used spinlocks
 - unduplicate some operations like SRCU locks and initializing GPIO descriptors
 - constify the sysfs class struct
 - use lock guards in GPIO sysfs code
 - update GPIO uAPI internal flags all at once atomically for consistency with
   other places
 - modify the behavior of the sysfs interface by no longer exporting lines that
   are named inside the driver code or board files with the sysfs links bearing
   the line names as this has for many years been largely unused due to the
   prevalence of DT, ACPI and firmware nodes over board files and made the API
   inconsistent
 - for GPIO interrupt providers: free irqs that are still requested by users
   when removing the chip
 
 GPIO uAPI:
 - notify user-space about changes to GPIO lines' state (requested, released,
   reconfigured) triggered from the kernel as well (until now we'd only do
   this for changes triggered from user-space)
 - to that end: modify the internal workings of the notification mechanism by
   switching to an atomic notifier which allows us to send events from atomic
   context
 - also to that end store the debounce period in the GPIO descriptor struct
   and not in the character device context struct
 - while at it, also cover the corner-case of users introducing changes over
   sysfs while others watch them via the character device
 - don't report GPIO lines requested as interrupts as "used" to user-space as it
   can still request them as GPIOs
 
 New drivers:
 - add a driver for the GPIO functionality of the MFD Congatec Board Controller
 - add a driver for the PolarFire GPIO controller
 - add a driver supporting the GPIOs on FTDI FT2232H
 
 Driver improvements:
 - use generic device property accessors instead of OF-specific ones across
   many GPIO drivers (mpc8xxx, vf610, eic-sprd, davinci, ts4900, xilinx, mvebu)
 - use devres helpers to simplify error paths and either shrink or entirely
   remove the driver's remove() callback (grgpio, amdpt, menz127, max730x,
   ftgpio010, 74x164, ljca)
 - use helper variables to store the address of pdev->dev and avoid some
   line-breaks
 - use device_for_each_child_node_scoped() to avoid having to put the fwnode
   on breaks or errors (gpio-sim, gpio-dwapb, gpiolib-acpi)
 - use a scoped bitmap to simplify the code and drop goto labels in
   gpio-aggregator
 - drop unneeded Kconfig dependencies on OF_GPIO (grgpio, mveby, xilinx)
 - add support for new models to gpio-aspeed, gpio-rockchip and gpio-dwapb
 - clean-up ACPI handling and some other bits in gpio-xgene-sb
 - replace deprecated PCI functions in pcie-idio-24 and pci-idio-16
 - allow to build davinci and mvebu drivers with COMPILE_TEST=y
 - remove dead code in gpio-mb86s7x
 - switch back to using platform_driver::remove() (after the conversion to
   remove_new()) across the GPIO drivers
 - remove remaining uses of GPIOF_ACTIVE_LOW across the tree and drop this
   deprecated symbol
 - convert the gpio-altera driver to no longer pull in the deprecated
   legacy-of-mm-gpiochip.h header
 - use of_property_present() instead of of_property_read_bool() in gpiolib-of
   and gpio-rockchip
 - allow to build the tegra186 driver on Tegra234 platforms in Kconfig
 
 Late fixes:
 - add a missing return value check after devm_kasprintf() to gpio-grgpio
 
 DT bindings:
 - document the ngpios property of gpio-mmio
 - add support for a new aspeed model
 - fix the example for st,nomadik-gpio
 
 Other:
 - kernel doc and comments tweaks
 - fix typos in TODO
 - reorder headers alphabetically in some drivers
 - fix incorrect format specifiers in gpio tools
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEFp3rbAvDxGAT0sefEacuoBRx13IFAmc7INQACgkQEacuoBRx
 13Kotg/8DDkhZ01Qc2uR817DjCdbalS0TDr4FYn/XusyeBEgNgQDm/TcfmIMiU4M
 Dazb7pOXfEc4VJqPTSpvqsTwTyMLN1pi58ZXZZA760rf8O8O+8c/cogVk36QK+IB
 3LX/w7JFFME6cC3kZ+mV3a6Cdxb4UIQdv1rWtLX8MjCiJ5+ax33VS0pe67n8sOft
 A6LeYwFr1ngk9NDg+OrFzExMTCGqk4aUYWiLd8ki3bw5ZMYzLwuenWLONQo3HOP5
 QuWQV+wF913mjB53omiZ8heJ7hN3ez071W4rXXPGXn5sAGipqJKWk6Nvx1wRZapD
 d+6XozBLGNEIcPvWJAWDfxnHmEjVpFyhavc9Id569DcQ0WVLm+CFPkNmp4mgOoOB
 k8f6R2CA2lheIKTRUk/Lt+Cu2+Za/07bM/WsxL6x/oCXZwL6NA5P+8VoNcBCDKrF
 PVUz7Jad6FVHkxySqwX4clHLW173pqyG47RJ7KxVv7g6g+YNW0WCM7crS+czRWIq
 KUT9sumw1dEFlYZ9IGZTuP/Pvur8f17powkS8VuYJ02N1yq3OhQZb52NX8stsmkW
 P6CsdZe9KRoGQUJp9nYVE5j09oz1gqqdbLdn4Byqg6G50w2U1mLNaWE1rtWLtcTx
 h7npUNOaX44JafnClFJvv1R9ovkuzgTaymEL4qo3QB6COHdvjlA=
 =ON7q
 -----END PGP SIGNATURE-----

Merge tag 'gpio-updates-for-v6.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux

Pull gpio updates from Bartosz Golaszewski:
 "Three new drivers, support for some new models in existing ones and
  lots of various tweaks and improvements across the board (switching to
  using recommended APIs, code shrink and simplification, etc.).

  Also a new feature in the character device uAPI where we now notify
  the user-space about changes triggered by in-kernel users as well, not
  only when they were done by other user-space agents.

  Summary:

  GPIOLIB core:
   - use the new mem_is_zero() instead of memchr_inv(s, 0, n)
   - don't store debounce period twice needlessly
   - clean-up debugfs handling
   - remove leftover comments referring to no longer used spinlocks
   - unduplicate some operations like SRCU locks and initializing GPIO
     descriptors
   - constify the sysfs class struct
   - use lock guards in GPIO sysfs code
   - update GPIO uAPI internal flags all at once atomically for
     consistency with other places
   - modify the behavior of the sysfs interface by no longer exporting
     lines that are named inside the driver code or board files with the
     sysfs links bearing the line names as this has for many years been
     largely unused due to the prevalence of DT, ACPI and firmware nodes
     over board files and made the API inconsistent
   - for GPIO interrupt providers: free irqs that are still requested by
     users when removing the chip

  GPIO uAPI:
   - notify user-space about changes to GPIO lines' state (requested,
     released, reconfigured) triggered from the kernel as well (until
     now we'd only do this for changes triggered from user-space)
   - to that end: modify the internal workings of the notification
     mechanism by switching to an atomic notifier which allows us to
     send events from atomic context
   - also to that end store the debounce period in the GPIO descriptor
     struct and not in the character device context struct
   - while at it, also cover the corner-case of users introducing
     changes over sysfs while others watch them via the character device
   - don't report GPIO lines requested as interrupts as "used" to
     user-space as it can still request them as GPIOs

  New drivers:
   - GPIO part of the MFD Congatec Board Controller
   - PolarFire GPIO controller
   - GPIOs on FTDI FT2232H

  Driver improvements:
   - use generic device property accessors instead of OF-specific ones
     across many GPIO drivers (mpc8xxx, vf610, eic-sprd, davinci,
     ts4900, xilinx, mvebu)
   - use devres helpers to simplify error paths and either shrink or
     entirely remove the driver's remove() callback (grgpio, amdpt,
     menz127, max730x, ftgpio010, 74x164, ljca)
   - use helper variables to store the address of pdev->dev and avoid
     some line-breaks
   - use device_for_each_child_node_scoped() to avoid having to put the
     fwnode on breaks or errors (gpio-sim, gpio-dwapb, gpiolib-acpi)
   - use a scoped bitmap to simplify the code and drop goto labels in
     gpio-aggregator
   - drop unneeded Kconfig dependencies on OF_GPIO (grgpio, mveby,
     xilinx)
   - add support for new models to gpio-aspeed, gpio-rockchip and
     gpio-dwapb
   - clean-up ACPI handling and some other bits in gpio-xgene-sb
   - replace deprecated PCI functions in pcie-idio-24 and pci-idio-16
   - allow to build davinci and mvebu drivers with COMPILE_TEST=y
   - remove dead code in gpio-mb86s7x
   - switch back to using platform_driver::remove() (after the
     conversion to remove_new()) across the GPIO drivers
   - remove remaining uses of GPIOF_ACTIVE_LOW across the tree and drop
     this deprecated symbol
   - convert the gpio-altera driver to no longer pull in the deprecated
     legacy-of-mm-gpiochip.h header
   - use of_property_present() instead of of_property_read_bool() in
     gpiolib-of and gpio-rockchip
   - allow to build the tegra186 driver on Tegra234 platforms in Kconfig

  Late fixes:
   - add a missing return value check after devm_kasprintf() to
     gpio-grgpio

  DT bindings:
   - document the ngpios property of gpio-mmio
   - add support for a new aspeed model
   - fix the example for st,nomadik-gpio

  Other:
   - kernel doc and comments tweaks
   - fix typos in TODO
   - reorder headers alphabetically in some drivers
   - fix incorrect format specifiers in gpio tools"

* tag 'gpio-updates-for-v6.13-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/brgl/linux: (98 commits)
  gpio: tegra186: Allow to enable driver on Tegra234
  gpio: grgpio: Add NULL check in grgpio_probe
  tools: gpio: Fix several incorrect format specifiers
  gpio: mpfs: add CoreGPIO support
  gpio: rockchip: support new version GPIO
  gpio: rockchip: change the GPIO version judgment logic
  gpio: rockchip: explan the format of the GPIO version ID
  gpiolib: cdev: use !mem_is_zero() instead of memchr_inv(s, 0, n)
  MAINTAINERS: add gpio driver to PolarFire entry
  gpio: Get rid of GPIOF_ACTIVE_LOW
  USB: gadget: pxa27x_udc: Avoid using GPIOF_ACTIVE_LOW
  pcmcia: soc_common: Avoid using GPIOF_ACTIVE_LOW
  leds: gpio: Avoid using GPIOF_ACTIVE_LOW
  Input: gpio_keys_polled - avoid using GPIOF_ACTIVE_LOW
  Input: gpio_keys - avoid using GPIOF_ACTIVE_LOW
  gpio: Use of_property_present() for non-boolean properties
  gpio: mpfs: add polarfire soc gpio support
  gpio: altera: Drop legacy-of-mm-gpiochip.h header
  gpio: pcie-idio-24: Replace deprecated PCI functions
  gpio: pci-idio-16: Replace deprecated PCI functions
  ...
2024-11-20 12:37:06 -08:00
..
access-controllers dt-bindings: document generic access controllers 2024-04-05 14:38:56 +02:00
arc dt-bindings: arc: convert archs-pct.txt to yaml 2024-08-19 17:04:55 -05:00
arm dt-bindings: arm: pmu: Add Samsung Mongoose core compatible 2024-10-29 13:23:25 +00:00
ata dt-bindings: ata: ahci-platform: add missing iommus property 2024-11-12 12:15:59 +01:00
auxdisplay
board dt-bindings: board: convert fsl-board.txt to yaml 2024-08-19 17:04:55 -05:00
bus dt-bindings: bus: qcom,ebi2: convert to dtschema 2024-07-29 13:37:01 -06:00
cache soc: driver updates for 6.11 2024-07-16 11:35:27 -07:00
chrome
clock The core clk framework is left largely untouched this time around except for 2024-09-23 15:01:48 -07:00
connector
counter dt-bindings: counter: Add new ti,am62-eqep compatible 2024-07-01 10:40:27 +09:00
cpu dt-bindings: cpu: Drop duplicate nvidia,tegra186-ccplex-cluster.yaml 2024-09-13 14:55:24 -05:00
cpufreq dt-bindings: cpufreq: cpufreq-qcom-hw: Add SM4450 compatibles 2024-04-26 18:13:41 +05:30
crypto dt-bindings: crypto: qcom-qce: document the SA8775P crypto engine 2024-10-28 18:33:10 +08:00
csky
devfreq
display Mediatek DRM Fixes - 20241028 2024-11-01 07:34:21 +10:00
dma soc: convert ep93xx to devicetree 2024-09-26 12:00:25 -07:00
dsp
dvfs
edac
eeprom The DesignWare and the Renesas I2C drivers have received most of 2024-09-21 12:46:00 +02:00
extcon dt-bindings: extcon: convert extcon-usb-gpio.txt to yaml format 2024-09-05 00:43:08 +09:00
firmware dt-bindings: firmware: arm,scmi: Add missing vendor string 2024-10-28 14:48:48 +00:00
fpga dt-bindings: fpga: xlnx,fpga-selectmap: add DT schema 2024-03-31 22:42:10 +08:00
fsi dt-bindings: fsi: Document the FSI Hub Controller 2024-07-09 07:40:17 -06:00
fuse dt-bindings: fuse: Document R-Car E-FUSE / OTP_MEM 2024-06-24 16:16:55 +02:00
gnss dt-bindings: gnss: reference serial-peripheral-props.yaml 2024-08-19 17:04:55 -05:00
goldfish
gpio dt-bindings: gpio-mmio: Add ngpios property 2024-10-18 09:45:33 +02:00
gpu dt-bindings: gpu: mali-bifrost: Add compatible for MT8188 SoC 2024-06-19 13:41:27 +02:00
hsi
hwinfo
hwlock dt-bindings: hwlock: sprd-hwspinlock: convert to YAML 2024-08-12 15:27:14 -07:00
hwmon dt-bindings: hwmon: isl68137: add bindings to support voltage dividers 2024-11-13 12:07:39 -08:00
i2c dt-bindings: i2c: i2c-sprd: convert to YAML 2024-09-10 00:36:55 +02:00
i3c dt-bindings: i3c: add header for generic I3C flags 2024-07-26 14:21:30 +02:00
iio dt-bindings: iio: adc: ad7380: fix ad7380-4 reference supply 2024-10-24 18:30:47 +01:00
infiniband
input soc: convert ep93xx to devicetree 2024-09-26 12:00:25 -07:00
interconnect interconnect changes for 6.12 2024-09-06 19:17:16 +02:00
interrupt-controller A set of updates for the interrupt subsystem: 2024-11-19 15:54:19 -08:00
iommu Merge branches 'fixes', 'arm/smmu', 'intel/vt-d', 'amd/amd-vi' and 'core' into next 2024-09-13 12:53:05 +02:00
ipmi
leds - Limited LED current based on thermal conditions in the QCOM flash LED driver. 2024-09-23 14:20:11 -07:00
loongarch
mailbox mhu-v3, omap2+ : fix kconfig dependencies 2024-09-29 09:53:04 -07:00
media media updates for v6.12-rc1 2024-09-23 15:27:58 -07:00
memory-controllers dt-bindings: memory: fsl: Add compatible string nxp,imx9-memory-controller 2024-10-23 16:53:39 +02:00
mfd - Added support for the Analog Devices ADP5585 GPIO and PWM functions. 2024-09-23 14:17:08 -07:00
mips - added support for Realtek RTL9302C 2024-07-20 09:03:36 -07:00
misc dt-bindings: misc: fsl,qoriq-mc: remove ref for msi-parent 2024-10-07 14:53:34 -05:00
mmc dt-bindings: mmc: Document support for partition table in mmc-card 2024-10-22 08:15:17 -06:00
mtd soc: convert ep93xx to devicetree 2024-09-26 12:00:25 -07:00
mux
net dt-bindings: net: xlnx,axi-ethernet: Correct phy-mode property value 2024-11-01 19:02:50 -07:00
nios2
nvme
nvmem Merge 6.11-rc7 into char-misc-next 2024-09-09 08:36:23 +02:00
openrisc/opencores
opp dt-bindings: opp: operating-points-v2-ti-cpu: Update maintainers 2024-09-04 20:43:43 +05:30
pci Merge branch 'pci/controller/xilinx' 2024-09-19 14:25:33 -05:00
peci
perf dt-bindings: perf: fsl-imx-ddr: Add i.MX91 compatible 2024-10-24 12:33:46 +01:00
phy dt-bindings: phy: qcom,sc8280xp-qmp-pcie-phy: Fix X1E80100 resets entries 2024-10-21 23:33:25 +05:30
pinctrl This is the bulk of pin control changes for the v6.12 kernel cycle: 2024-09-23 13:15:23 -07:00
platform dt-bindings: platform: Add Surface System Aggregator Module 2024-08-19 13:47:27 +02:00
pmem
power Input updates for v6.12-rc0 2024-09-24 12:42:35 -07:00
powerpc
pps
ptp dt-binding: ptp: fsl,ptp: add pci1957,ee02 compatible string for fsl,enetc-ptp 2024-08-19 09:48:53 +01:00
pwm dt-bindings: pwm: adi,axi-pwmgen: Increase #pwm-cells to 3 2024-10-25 11:42:37 +02:00
regmap
regulator regulator: dt-bindings: qcom,rpmh: Correct PM8550VE supplies 2024-11-13 13:53:14 +00:00
remoteproc remoteproc updates for v6.12 2024-09-24 12:16:49 -07:00
reserved-memory
reset soc: driver updates for 6.12 2024-09-17 10:48:09 +02:00
riscv RISC-V Patches for the 6.12 Merge Window, Part 1 2024-09-24 10:59:17 -07:00
rng dt-bindings: rng: add binding for BCM74110 RNG 2024-11-10 11:50:54 +08:00
rtc RTC for 6.12 2024-09-25 14:38:37 -07:00
scsi
serial TTY/Serial driver update for 6.12-rc1 2024-09-26 09:59:50 -07:00
serio
sifive
siox
slimbus
soc soc: convert ep93xx to devicetree 2024-09-26 12:00:25 -07:00
sound ASoC: dt-bindings: rockchip,rk3308-codec: add port property 2024-10-29 12:46:31 +00:00
soundwire
spi spi: dt-bindings: apple,spi: Add binding for Apple SPI controllers 2024-11-06 14:15:39 +00:00
spmi dt-bindings: spmi: Deprecate qcom,bus-id 2024-05-08 19:46:10 +01:00
sram soc: dt updates for 6.11 2024-07-16 11:43:51 -07:00
staging/iio/adc
thermal Devicetree updates for v6.12: 2024-09-19 08:38:51 +02:00
timer dt-bindings: timer: actions,owl-timer: convert to YAML 2024-11-13 13:49:33 +01:00
timestamp
tpm Devicetree for v6.10: 2024-05-17 17:27:49 -07:00
ufs dt-bindings: ufs: qcom,ufs: drop source clock entries 2024-06-06 15:00:50 -06:00
usb The core clk framework is left largely untouched this time around except for 2024-09-23 15:01:48 -07:00
virtio
w1
watchdog linux-watchdog 6.12-rc1 tag 2024-09-23 13:19:37 -07:00
x86
xillybus
.gitignore
.yamllint
ABI.rst
common-properties.txt
dts-coding-style.rst docs: dt-bindings: add missing address/size-cells to example 2024-03-25 11:09:12 -05:00
example-schema.yaml
graph.txt
incomplete-devices.yaml dt-bindings: incomplete-devices: And another batch of compatibles 2024-09-05 12:35:09 -05:00
index.rst
jailhouse.txt
Makefile kbuild: use $(src) instead of $(srctree)/$(src) for source directory 2024-05-10 04:34:52 +09:00
numa.txt
resource-names.txt
submitting-patches.rst
trivial-devices.yaml dt-bindings: hwmon: isl68137: add bindings to support voltage dividers 2024-11-13 12:07:39 -08:00
unittest.txt
vendor-prefixes.yaml Char/Misc and other driver changes for 6.12-rc1 2024-09-26 10:13:08 -07:00
writing-bindings.rst
writing-schema.rst
xilinx.txt