linux/Documentation/ABI/testing
Linus Torvalds 2be6bc48df - Core Frameworks
- Add new framework to support Group Multi-Color (GMC) LEDs
    - Offer an 'optional' API for non-essential LEDs
    - Support obtaining 'max brightness' values from Device Tree
    - Provide new led_classdev member 'color' (settable via DT and SYFS)
    - Stop TTY Trigger from using the old LED_ON constraints
    - Statically allocate leds_class
 
  - New Drivers
    - Add support for NXP PCA995x I2C Constant Current LED Driver
 
  - New Device Support
    - Add support for Siemens Simatic IPC BX-21 to Simatic IPC
 
  - Fix-ups
    - Some dependency / Kconfig tweaking
    - Move final probe() functions back over from .probe_new()
    - Simplify obtaining resources (memory, device data) using unified API helpers
    - Bunch of Device Tree additions, conversions and adaptions
    - Fix trivial styling issues; comments
    - Ensure correct includes are present and remove some that are not required
    - Omit the use of redundant casts and if relevant replace with better ones
    - Use purpose-built APIs for various actions; sysfs_emit(), module_led_trigger()
    - Remove a bunch of superfluous locking
 
  - Bug Fixes
    - Ensure error codes are correctly propagated back up the call chain
    - Fix incorrect error values from being returned (missing '-')
    - Ensure get'ed resources are put'ed to prevent leaks
    - Use correct class when exporting module resources
    - Fixing rounding (or lack there of) issues
    - Fix 'always false' LED_COLOR_ID_MULTI BUG() check
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCgAdFiEEdrbJNaO+IJqU8IdIUa+KL4f8d2EFAmT15DUACgkQUa+KL4f8
 d2ER0BAAoejCCnb24JOrYQy7Pq3/ZaaT6PWOB+/U+6s5jyj9ikwHqqH+g/E+FqkE
 AHvhkBalgw1l+QRCvrZMEcsiQmjK5ZR010Ju3lCbvUDa1tsm2Fn/K2IZZxI1j9O8
 mGnPjYrX3FRfejscw0a+MA75o3DuN97V9mHNk6lyRnm/d0ronu+vv/fRYFON04iY
 v2e166/9wfJWvDwOLo+phDS2aCkjLkxzj2lcTtcvuzYqQjOPDqiFTJsft9gOpC9r
 hKOqUkexKebShbi08A+x0fmiB9LNs5kZ3xWWLaxVDT58Plkqv905oLVrWARTGhIG
 BDAhW2/TLV30bhSiTb/bX0eNEMCU6q6WIPwc3otUYpkDeLgbxLD7Rlhp49oud7j9
 5vWX8bxSczIYRir42TKZ+s/d6pKKSvMrsNRDplFb1ahZTv3ssDxuxAA/FY2UPqTt
 C83j0hJOwVfj6ric01R+yedPSW8Po8xqEIzjoxzYtsu3IYGiz6ddjd2ZnhNF5YfP
 AN7GDuja9r7+Fa8JcTFssHe6HtuzkfpJvrpjV3BxL79q6s1z+lT9szTw5Z65zGmO
 k/z4xz95RHUTbpR4rVT+A1pdbQ8OsbVthdy1XnJoYK3NJYJrPldj3Ur3W4wRecP6
 32RWF8ZF6WARsSyyACLo/MP6qxwAE2xk5TjmpLqCeK0ObVmlwDM=
 =wNmv
 -----END PGP SIGNATURE-----

Merge tag 'leds-next-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds

Pull LED updates from Lee Jones:
 "Core Frameworks:
   - Add new framework to support Group Multi-Color (GMC) LEDs
   - Offer an 'optional' API for non-essential LEDs
   - Support obtaining 'max brightness' values from Device Tree
   - Provide new led_classdev member 'color' (settable via DT and SYFS)
   - Stop TTY Trigger from using the old LED_ON constraints
   - Statically allocate leds_class

  New Drivers:
   - Add support for NXP PCA995x I2C Constant Current LED Driver

  New Device Support:
   - Add support for Siemens Simatic IPC BX-21 to Simatic IPC

  Fix-ups:
   - Some dependency / Kconfig tweaking
   - Move final probe() functions back over from .probe_new()
   - Simplify obtaining resources (memory, device data) using unified
     API helpers
   - Bunch of Device Tree additions, conversions and adaptions
   - Fix trivial styling issues; comments
   - Ensure correct includes are present and remove some that are not
     required
   - Omit the use of redundant casts and if relevant replace with better
     ones
   - Use purpose-built APIs for various actions; sysfs_emit(),
     module_led_trigger()
   - Remove a bunch of superfluous locking

  Bug Fixes:
   - Ensure error codes are correctly propagated back up the call chain
   - Fix incorrect error values from being returned (missing '-')
   - Ensure get'ed resources are put'ed to prevent leaks
   - Use correct class when exporting module resources
   - Fixing rounding (or lack there of) issues
   - Fix 'always false' LED_COLOR_ID_MULTI BUG() check"

* tag 'leds-next-6.6' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds: (40 commits)
  leds: aw2013: Enable pull-up supply for interrupt and I2C
  dt-bindings: leds: Document pull-up supply for interrupt and I2C
  dt-bindings: leds: aw2013: Document interrupt
  leds: uleds: Use module_misc_device macro to simplify the code
  leds: trigger: netdev: Use module_led_trigger macro to simplify the code
  dt-bindings: leds: Fix reference to definition of default-state
  leds: turris-omnia: Drop unnecessary mutex locking
  leds: turris-omnia: Use sysfs_emit() instead of sprintf()
  leds: Make leds_class a static const structure
  leds: Remove redundant of_match_ptr()
  dt-bindings: leds: Add gpio-line-names to PCA9532 GPIO
  leds: trigger: tty: Do not use LED_ON/OFF constants, use led_blink_set_oneshot instead
  dt-bindings: leds: rohm,bd71828: Drop select:false
  leds: Fix BUG_ON check for LED_COLOR_ID_MULTI that is always false
  leds: multicolor: Use rounded division when calculating color components
  leds: rgb: Add a multicolor LED driver to group monochromatic LEDs
  dt-bindings: leds: Add binding for a multicolor group of LEDs
  leds: class: Store the color index in struct led_classdev
  leds: Provide devm_of_led_get_optional()
  leds: pca995x: Fix MODULE_DEVICE_TABLE for OF
  ...
2023-09-04 13:52:58 -07:00
..
configfs-acpi
configfs-iio
configfs-most
configfs-rdma_cm
configfs-spear-pcie-gadget
configfs-stp-policy
configfs-stp-policy-p_sys-t
configfs-usb-gadget
configfs-usb-gadget-acm
configfs-usb-gadget-ecm
configfs-usb-gadget-eem
configfs-usb-gadget-ffs
configfs-usb-gadget-hid
configfs-usb-gadget-loopback
configfs-usb-gadget-mass-storage
configfs-usb-gadget-midi
configfs-usb-gadget-midi2
configfs-usb-gadget-ncm
configfs-usb-gadget-obex
configfs-usb-gadget-phonet
configfs-usb-gadget-printer
configfs-usb-gadget-rndis
configfs-usb-gadget-serial
configfs-usb-gadget-sourcesink
configfs-usb-gadget-subset
configfs-usb-gadget-tcm
configfs-usb-gadget-uac1
configfs-usb-gadget-uac1_legacy
configfs-usb-gadget-uac2
configfs-usb-gadget-uvc
debugfs-cec-error-inj
debugfs-cros-ec
debugfs-cxl
debugfs-dell-wmi-ddv
debugfs-driver-dcc
debugfs-driver-genwqe
debugfs-driver-habanalabs
debugfs-driver-qat
debugfs-ec
debugfs-hisi-hpre
debugfs-hisi-sec
debugfs-hisi-zip
debugfs-hyperv
debugfs-ideapad
debugfs-moxtet
debugfs-olpc
debugfs-pfo-nx-crypto
debugfs-pktcdvd
debugfs-scmi
debugfs-scmi-raw
debugfs-tpmi
debugfs-turris-mox-rwtm
debugfs-wilco-ec
dell-smbios-wmi
dev-kmsg
devlink-resource-mlxsw
evm
gpio-cdev
ima_policy
ppc-memtrace
procfs-attr-current
procfs-attr-exec
procfs-attr-prev
procfs-diskstats
procfs-smaps_rollup
pstore
rtc-cdev
securityfs-secrets-coco
sysfs-amd-pmc
sysfs-amd-pmf
sysfs-ata
sysfs-block-aoe
sysfs-block-bcache
sysfs-block-device
sysfs-block-dm
sysfs-block-loop
sysfs-block-rnbd
sysfs-block-rssd
sysfs-block-zram
sysfs-bus-acpi
sysfs-bus-amba
sysfs-bus-bcma
sysfs-bus-cdx
sysfs-bus-coreboot
sysfs-bus-coresight-devices-cti
sysfs-bus-coresight-devices-etb10
sysfs-bus-coresight-devices-etm3x
sysfs-bus-coresight-devices-etm4x
sysfs-bus-coresight-devices-funnel
sysfs-bus-coresight-devices-stm
sysfs-bus-coresight-devices-tmc
sysfs-bus-coresight-devices-tpdm
sysfs-bus-coresight-devices-trbe
sysfs-bus-coresight-devices-ultra_smb
sysfs-bus-counter
sysfs-bus-css
sysfs-bus-cxl
sysfs-bus-dfl
sysfs-bus-dfl-devices-emif
sysfs-bus-dfl-devices-n3000-nios
sysfs-bus-event_source-devices-caps
sysfs-bus-event_source-devices-dfl_fme
sysfs-bus-event_source-devices-dsa
sysfs-bus-event_source-devices-events
sysfs-bus-event_source-devices-format
sysfs-bus-event_source-devices-hv_24x7
sysfs-bus-event_source-devices-hv_gpci
sysfs-bus-event_source-devices-iommu
sysfs-bus-event_source-devices-uncore
sysfs-bus-fcoe
sysfs-bus-fsi
sysfs-bus-fsi-devices-sbefifo
sysfs-bus-fsl-mc
sysfs-bus-hsi
sysfs-bus-i2c-devices-bq32k
sysfs-bus-i2c-devices-fsa9480
sysfs-bus-i2c-devices-hm6352
sysfs-bus-i2c-devices-lm3533
sysfs-bus-i2c-devices-pca954x
sysfs-bus-i3c
sysfs-bus-iio
sysfs-bus-iio-accel-adxl372
sysfs-bus-iio-accel-bmc150
sysfs-bus-iio-adc-ad4130
sysfs-bus-iio-adc-ad7192
sysfs-bus-iio-adc-ad7280a
sysfs-bus-iio-adc-envelope-detector
sysfs-bus-iio-adc-hi8435
sysfs-bus-iio-adc-max9611
sysfs-bus-iio-adc-max11410
sysfs-bus-iio-adc-mt6360
sysfs-bus-iio-adc-stm32
sysfs-bus-iio-bno055
sysfs-bus-iio-cdc-ad7746
sysfs-bus-iio-chemical-sgp40
sysfs-bus-iio-chemical-sunrise-co2
sysfs-bus-iio-chemical-vz89x
sysfs-bus-iio-cros-ec
sysfs-bus-iio-dac-ad5766
sysfs-bus-iio-dac-dpot-dac
sysfs-bus-iio-dac-ltc2688
sysfs-bus-iio-dfsdm-adc-stm32
sysfs-bus-iio-distance-srf08
sysfs-bus-iio-dma-buffer
sysfs-bus-iio-filter-admv8818
sysfs-bus-iio-frequency-ad9523
sysfs-bus-iio-frequency-adf4350
sysfs-bus-iio-frequency-adf4371
sysfs-bus-iio-frequency-admv1013
sysfs-bus-iio-frequency-admv1014
sysfs-bus-iio-gyro-bmg160
sysfs-bus-iio-health-afe440x
sysfs-bus-iio-humidity
sysfs-bus-iio-impedance-analyzer-ad5933
sysfs-bus-iio-ina2xx-adc
sysfs-bus-iio-isl29501
sysfs-bus-iio-light-isl29018
sysfs-bus-iio-light-lm3533-als
sysfs-bus-iio-light-si1133
sysfs-bus-iio-light-tsl2583
sysfs-bus-iio-light-tsl2772
sysfs-bus-iio-magnetometer-hmc5843
sysfs-bus-iio-meas-spec
sysfs-bus-iio-mpu6050
sysfs-bus-iio-potentiometer-mcp4531
sysfs-bus-iio-proximity
sysfs-bus-iio-proximity-as3935
sysfs-bus-iio-sps30
sysfs-bus-iio-sx9310
sysfs-bus-iio-sx9324
sysfs-bus-iio-thermocouple
sysfs-bus-iio-timer-stm32
sysfs-bus-iio-trigger-sysfs
sysfs-bus-iio-vf610
sysfs-bus-intel_th-devices-gth
sysfs-bus-intel_th-devices-msc
sysfs-bus-intel_th-devices-pti
sysfs-bus-intel_th-output-devices
sysfs-bus-mcb
sysfs-bus-mdio
sysfs-bus-media
sysfs-bus-mei
sysfs-bus-mmc
sysfs-bus-most
sysfs-bus-moxtet-devices
sysfs-bus-nfit
sysfs-bus-nvdimm
sysfs-bus-optee-devices
sysfs-bus-papr-pmem
sysfs-bus-pci
sysfs-bus-pci-devices-aer_stats
sysfs-bus-pci-devices-catpt
sysfs-bus-pci-devices-cciss
sysfs-bus-pci-devices-pvpanic
sysfs-bus-pci-drivers-ehci_hcd
sysfs-bus-pci-drivers-janz-cmodio
sysfs-bus-pci-drivers-xhci_hcd
sysfs-bus-peci
sysfs-bus-platform
sysfs-bus-platform-devices-ampere-smpro
sysfs-bus-platform-devices-occ-hwmon
sysfs-bus-platform-onboard-usb-hub
sysfs-bus-rapidio
sysfs-bus-rbd
sysfs-bus-rpmsg
sysfs-bus-siox
sysfs-bus-soundwire-master
sysfs-bus-soundwire-slave
sysfs-bus-spi-devices-spi-nor
sysfs-bus-surface_aggregator-tabletsw
sysfs-bus-thunderbolt
sysfs-bus-typec
sysfs-bus-usb
sysfs-bus-usb-devices-usbsevseg
sysfs-bus-usb-lvstest
sysfs-bus-vdpa
sysfs-bus-vfio-mdev
sysfs-bus-vmbus
sysfs-c2port
sysfs-cfq-target-latency
sysfs-class
sysfs-class-backlight
sysfs-class-backlight-driver-lm3533
sysfs-class-backlight-lm3639
sysfs-class-bdi
sysfs-class-bsr
sysfs-class-chromeos
sysfs-class-chromeos-driver-cros-ec-lightbar
sysfs-class-chromeos-driver-cros-ec-vbc
sysfs-class-cxl
sysfs-class-devfreq
sysfs-class-devfreq-event
sysfs-class-devlink
sysfs-class-extcon
sysfs-class-fc
sysfs-class-fc_host
sysfs-class-fc_remote_ports
sysfs-class-firmware
sysfs-class-firmware-attributes
sysfs-class-fpga-bridge
sysfs-class-fpga-manager
sysfs-class-fpga-region
sysfs-class-gnss
sysfs-class-hwmon
sysfs-class-intel_pmt
sysfs-class-iommu
sysfs-class-iommu-amd-iommu
sysfs-class-iommu-intel-iommu
sysfs-class-lcd
sysfs-class-led
sysfs-class-led-driver-aw200xx
sysfs-class-led-driver-lm3533
sysfs-class-led-driver-turris-omnia
sysfs-class-led-flash
sysfs-class-led-multicolor
sysfs-class-led-trigger-netdev
sysfs-class-led-trigger-oneshot
sysfs-class-led-trigger-pattern
sysfs-class-led-trigger-tty
sysfs-class-led-trigger-usbport
sysfs-class-leds-gt683r
sysfs-class-mei
sysfs-class-mic
sysfs-class-mtd
sysfs-class-mux
sysfs-class-net
sysfs-class-net-cdc_ncm
sysfs-class-net-dsa
sysfs-class-net-grcan
sysfs-class-net-janz-ican3
sysfs-class-net-peak_usb
sysfs-class-net-phydev
sysfs-class-net-qmi
sysfs-class-net-queues
sysfs-class-net-statistics
sysfs-class-ocxl
sysfs-class-pktcdvd
sysfs-class-power
sysfs-class-power-ltc4162l
sysfs-class-power-mp2629
sysfs-class-power-rt9467
sysfs-class-power-rt9471
sysfs-class-power-surface
sysfs-class-power-twl4030
sysfs-class-power-wilco
sysfs-class-powercap
sysfs-class-pwm
sysfs-class-rapidio
sysfs-class-rc
sysfs-class-rc-nuvoton
sysfs-class-regulator
sysfs-class-remoteproc
sysfs-class-rnbd-client
sysfs-class-rnbd-server
sysfs-class-rtc
sysfs-class-rtc-rtc0-device-rtc_calibration
sysfs-class-rtrs-client
sysfs-class-rtrs-server
sysfs-class-scsi_host
sysfs-class-scsi_tape
sysfs-class-spi-eeprom
sysfs-class-stm
sysfs-class-stm_source
sysfs-class-switchtec
sysfs-class-thermal
sysfs-class-typec
sysfs-class-usb_power_delivery
sysfs-class-usb_role
sysfs-class-vduse
sysfs-class-wakeup
sysfs-class-watchdog
sysfs-class-zram
sysfs-dev
sysfs-devices
sysfs-devices-consumer
sysfs-devices-coredump
sysfs-devices-edac
sysfs-devices-firmware_node
sysfs-devices-hisi_ptt
sysfs-devices-lpss_ltr
sysfs-devices-mapping
sysfs-devices-memory
sysfs-devices-mmc
sysfs-devices-online
sysfs-devices-physical_location
sysfs-devices-platform-ACPI-TAD
sysfs-devices-platform-_UDC_-gadget
sysfs-devices-platform-docg3
sysfs-devices-platform-dock
sysfs-devices-platform-ipmi
sysfs-devices-platform-kunpeng_hccs
sysfs-devices-platform-sh_mobile_lcdc_fb
sysfs-devices-platform-soc-ipa
sysfs-devices-platform-stratix10-rsu
sysfs-devices-platform-trackpoint
sysfs-devices-power
sysfs-devices-power_resources_D0
sysfs-devices-power_resources_D1
sysfs-devices-power_resources_D2
sysfs-devices-power_resources_D3hot
sysfs-devices-power_resources_wakeup
sysfs-devices-power_state
sysfs-devices-real_power_state
sysfs-devices-removable
sysfs-devices-resource_in_use
sysfs-devices-soc
sysfs-devices-software_node
sysfs-devices-state_synced
sysfs-devices-sun
sysfs-devices-supplier
sysfs-devices-system-cpu
sysfs-devices-system-ibm-rtl
sysfs-devices-system-xen_cpu
sysfs-devices-vfio-dev
sysfs-devices-waiting_for_supplier
sysfs-devices-xenbus
sysfs-driver-altera-cvp
sysfs-driver-aspeed-uart-routing
sysfs-driver-bd9571mwv-regulator
sysfs-driver-ccp
sysfs-driver-chromeos-acpi
sysfs-driver-eud
sysfs-driver-fsi-master-gpio
sysfs-driver-ge-achc
sysfs-driver-genwqe
sysfs-driver-habanalabs
sysfs-driver-hid
sysfs-driver-hid-corsair
sysfs-driver-hid-lenovo
sysfs-driver-hid-logitech-hidpp
sysfs-driver-hid-logitech-lg4ff
sysfs-driver-hid-multitouch
sysfs-driver-hid-ntrig
sysfs-driver-hid-picolcd
sysfs-driver-hid-prodikeys
sysfs-driver-hid-roccat-kone
sysfs-driver-hid-srws1
sysfs-driver-hid-wiimote
sysfs-driver-input-axp-pek
sysfs-driver-input-cros-ec-keyb
sysfs-driver-input-exc3000
sysfs-driver-intc_sar
sysfs-driver-intel-i915-hwmon
sysfs-driver-intel-m10-bmc
sysfs-driver-intel-m10-bmc-sec-update
sysfs-driver-intel-rapid-start
sysfs-driver-intel_sdsi
sysfs-driver-jz4780-efuse
sysfs-driver-pciback
sysfs-driver-ppi
sysfs-driver-qat
sysfs-driver-samsung-laptop
sysfs-driver-st
sysfs-driver-tegra-fuse
sysfs-driver-toshiba_acpi
sysfs-driver-toshiba_haps
sysfs-driver-typec-displayport
sysfs-driver-uacce
sysfs-driver-ucsi-ccg
sysfs-driver-ufs
sysfs-driver-w1_ds28e17
sysfs-driver-w1_therm
sysfs-driver-wacom
sysfs-driver-xdata
sysfs-driver-xen-blkback
sysfs-driver-xen-blkfront
sysfs-driver-xilinx-tmr-manager
sysfs-driver-zynqmp-fpga
sysfs-firmware-acpi
sysfs-firmware-dmi-entries
sysfs-firmware-dmi-tables
sysfs-firmware-efi
sysfs-firmware-efi-esrt
sysfs-firmware-efi-runtime-map
sysfs-firmware-gsmi
sysfs-firmware-lefi-boardinfo
sysfs-firmware-log
sysfs-firmware-memmap
sysfs-firmware-ofw
sysfs-firmware-opal-powercap
sysfs-firmware-opal-psr
sysfs-firmware-opal-sensor-groups
sysfs-firmware-papr-energy-scale-info
sysfs-firmware-qemu_fw_cfg
sysfs-firmware-sgi_uv
sysfs-firmware-turris-mox-rwtm
sysfs-fs-erofs
sysfs-fs-ext4
sysfs-fs-f2fs
sysfs-fs-nilfs2
sysfs-fs-ubifs
sysfs-fs-xfs
sysfs-hypervisor-xen
sysfs-ibft
sysfs-kernel-address_bits
sysfs-kernel-boot_params
sysfs-kernel-btf
sysfs-kernel-cpu_byteorder
sysfs-kernel-dmabuf-buffers
sysfs-kernel-fadump
sysfs-kernel-fscaps
sysfs-kernel-iommu_groups
sysfs-kernel-irq
sysfs-kernel-livepatch
sysfs-kernel-mm
sysfs-kernel-mm-cma
sysfs-kernel-mm-damon
sysfs-kernel-mm-hugepages
sysfs-kernel-mm-ksm
sysfs-kernel-mm-memory-tiers
sysfs-kernel-mm-numa
sysfs-kernel-mm-swap
sysfs-kernel-oops_count
sysfs-kernel-reboot
sysfs-kernel-slab
sysfs-kernel-vmcoreinfo
sysfs-kernel-warn_count
sysfs-mce
sysfs-memory-page-offline
sysfs-module
sysfs-ocfs2
sysfs-platform-asus-laptop
sysfs-platform-asus-wmi
sysfs-platform-at91
sysfs-platform-brcmstb-gisb-arb
sysfs-platform-brcmstb-memc
sysfs-platform-chipidea-usb-otg
sysfs-platform-chipidea-usb2
sysfs-platform-dell-laptop
sysfs-platform-dell-privacy-wmi
sysfs-platform-dell-smbios
sysfs-platform-dell-wmi-ddv
sysfs-platform-dfl-fme
sysfs-platform-dfl-port
sysfs-platform-dptf
sysfs-platform-eeepc-laptop
sysfs-platform-hidma
sysfs-platform-hidma-mgmt
sysfs-platform-i2c-demux-pinctrl
sysfs-platform-ideapad-laptop
sysfs-platform-intel-ifs
sysfs-platform-intel-pmc
sysfs-platform-intel-wmi-sbl-fw-update
sysfs-platform-intel-wmi-thunderbolt
sysfs-platform-kim
sysfs-platform-lg-laptop
sysfs-platform-mellanox-bootctl
sysfs-platform-msi-laptop
sysfs-platform-phy-rcar-gen3-usb2
sysfs-platform-power-on-reason
sysfs-platform-renesas_usb3
sysfs-platform-sst-atom
sysfs-platform-tahvo-usb
sysfs-platform-ts5500
sysfs-platform-twl4030-usb
sysfs-platform-usbip-vudc
sysfs-platform-wilco-ec
sysfs-platform_profile
sysfs-power
sysfs-pps
sysfs-profiling
sysfs-ptp
sysfs-secvar
sysfs-timecard
sysfs-tty
sysfs-uevent
usb-charger-uevent
usb-uevent