Commit d884efd3 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull LED updates from Lee Jones:
  Core:
   - Implement fallback to software node name for LED names
   - Fix formatting issues in `led-core.c` reported by checkpatch.pl
   - Make `led_remove_lookup()` NULL-aware
   - Switch from `class_find_device_by_of_node()` to
     `class_find_device_by_fwnode()`
   - Drop the unneeded dependency on `OF_GPIO` from `LEDS_NETXBIG`
     in Kconfig

  Kinetic KTD2692:
   - Make the `ktd2692_timing` variable static to resolve a
     sparse warning

  LGM SSO:
   - Fix a typo in the `GET_SRC_OFFSET` macro
   - Remove a duplicate assignment of `priv->mmap` in
     `intel_sso_led_probe()`

  Multicolor:
   - Fix a signedness error by changing the `intensity_value` type
     to `unsigned int`

  Qualcomm LPG:
   - Prevent array overflow when selecting high-resolution values

  Spreadtrum SC2731:
   - Add a compatible string for the SC2730 PMIC LED controller

  TI LM3642:
   - Use `guard(mutex)` to simplify locking and avoid manual
     `mutex_unlock()` calls

  TI LP5569:
   - Use `sysfs_emit()` instead of `sprintf()` for sysfs outputs

  TI LP5860:
   - Add the `enable-gpios` property for the `VIO_EN` pin"

  TI LP8860:
   - Do not unconditionally program the EEPROM on probe
   - Hold the mutex lock for the entirety of the EEPROM programming
     process
   - Return directly from `lp8860_init()` instead of using empty `goto`
     statements
   - Use a single regmap table and an access table instead of separate
     maps for normal and EEPROM registers
   - Remove an unused read of the `STATUS` register during EEPROM
     programming

  TTY Trigger:
   - Prefer `IS_ERR_OR_NULL()` over manual NULL checks"

* tag 'leds-next-7.1' of git://git.kernel.org/pub/scm/linux/kernel/git/lee/leds:
  leds: class: Make led_remove_lookup() NULL-aware
  leds: led-class: Switch to using class_find_device_by_fwnode()
  leds: Kconfig: Drop unneeded dependency on OF_GPIO
  leds: lm3642: Use guard to simplify locking
  leds: core: Fix formatting issues
  leds: core: Implement fallback to software node name for LED names
  leds: lgm-sso: Fix typo in macro for src offset
  dt-bindings: leds: lp5860: add enable-gpio
  leds: Prefer IS_ERR_OR_NULL over manual NULL check
  dt-bindings: leds: sc2731: Add compatible for SC2730
  leds: lp8860: Do not always program EEPROM on probe
  leds: lp8860: Remove unused read of STATUS register
  leds: lp8860: Hold lock for all of EEPROM programming
  leds: lp8860: Return directly from lp8860_init
  leds: lp8860: Use a single regmap table
  leds: lgm-sso: Remove duplicate assignments for priv->mmap
  leds: qcom-lpg: Check for array overflow when selecting the high resolution
  leds: ktd2692: Make ktd2692_timing variable static
  leds: lp5569: Use sysfs_emit instead of sprintf()
  leds: multicolor: Change intensity_value to unsigned int
parents 25c456da 7a43ccf8
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -33,6 +33,11 @@ properties:
  '#size-cells':
    const: 0

  enable-gpios:
    maxItems: 1
    description: |
      GPIO attached to the chip's enable pin (VIO_EN).

patternProperties:
  '^multi-led@[0-9a-f]+$':
    type: object
@@ -74,6 +79,7 @@ unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/gpio/gpio.h>
    #include <dt-bindings/leds/common.h>

    spi {
@@ -83,6 +89,7 @@ examples:
        led-controller@0 {
            compatible = "ti,lp5860";
            reg = <0x0>;
            enable-gpios = <&gpio1 1 GPIO_ACTIVE_HIGH>;
            #address-cells = <1>;
            #size-cells = <0>;

+6 −1
Original line number Diff line number Diff line
@@ -18,7 +18,12 @@ description: |

properties:
  compatible:
    const: sprd,sc2731-bltc
    oneOf:
      - items:
          - enum:
              - sprd,sc2730-bltc
          - const: sprd,sc2731-bltc
      - const: sprd,sc2731-bltc

  reg:
    maxItems: 1
+0 −1
Original line number Diff line number Diff line
@@ -765,7 +765,6 @@ config LEDS_NETXBIG
	tristate "LED support for Big Network series LEDs"
	depends on LEDS_CLASS
	depends on MACH_KIRKWOOD || COMPILE_TEST
	depends on OF_GPIO
	default MACH_KIRKWOOD
	help
	  This option enables support for LEDs found on the LaCie 2Big
+1 −3
Original line number Diff line number Diff line
@@ -25,7 +25,7 @@
#define LED_BLINK_H8_0			0x0
#define LED_BLINK_H8_1			0x4
#define GET_FREQ_OFFSET(pin, src)	(((pin) * 6) + ((src) * 2))
#define GET_SRC_OFFSET(pinc)		(((pin) * 6) + 4)
#define GET_SRC_OFFSET(pin) 		(((pin) * 6) + 4)

#define DUTY_CYCLE(x)			(0x8 + ((x) * 4))
#define SSO_CON0			0x2B0
@@ -808,8 +808,6 @@ static int intel_sso_led_probe(struct platform_device *pdev)

	priv->fpid_clkrate = clk_get_rate(priv->clocks[1].clk);

	priv->mmap = syscon_node_to_regmap(dev->of_node);

	priv->mmap = syscon_node_to_regmap(dev->of_node);
	if (IS_ERR(priv->mmap)) {
		dev_err(dev, "Failed to map iomem!\n");
+1 −1
Original line number Diff line number Diff line
@@ -59,7 +59,7 @@ struct ktd2692_led_config_data {
	enum led_brightness max_brightness;
};

const struct expresswire_timing ktd2692_timing = {
static const struct expresswire_timing ktd2692_timing = {
	.poweroff_us = 700,
	.data_start_us = 10,
	.end_of_data_low_us = 10,
Loading