LEDs connected to Broadcom BCM6328 controller

This controller is present on BCM6318, BCM6328, BCM6362 and BCM63268.
In these SoCs it's possible to control LEDs both as GPIOs or by hardware.
However, on some devices there are Serial LEDs (LEDs connected to a 74x164
controller), which can either be controlled by software (exporting the 74x164
as spi-gpio. See Documentation/devicetree/bindings/gpio/fairchild,74hc595.yaml),
or by hardware using this driver.
Some of these Serial LEDs are hardware controlled (e.g. ethernet LEDs) and
exporting the 74x164 as spi-gpio prevents those LEDs to be hardware
controlled, so the only chance to keep them working is by using this driver.

BCM6328 LED controller has a HWDIS register, which controls whether a LED
should be controlled by a hardware signal instead of the MODE register value,
with 0 meaning hardware control enabled and 1 hardware control disabled. This
is usually 1:1 for hardware to LED signals, but through the activity/link
registers you have some limited control over rerouting the LEDs (as
explained later in brcm,link-signal-sources). Even if a LED is hardware
controlled you are still able to make it blink or light it up if it isn't,
but you can't turn it off if the hardware decides to light it up. For this
reason, hardware controlled LEDs aren't registered as LED class devices.

Required properties:
  - compatible : should be "brcm,bcm6328-leds".
  - #address-cells : must be 1.
  - #size-cells : must be 0.
  - reg : BCM6328 LED controller address and size.

Optional properties:
  - brcm,serial-leds : Boolean, enables Serial LEDs.
    Default : false
  - brcm,serial-mux : Boolean, enables Serial LEDs multiplexing.
    Default : false
  - brcm,serial-clk-low : Boolean, makes clock signal active low.
    Default : false
  - brcm,serial-dat-low : Boolean, makes data signal active low.
    Default : false
  - brcm,serial-shift-inv : Boolean, inverts Serial LEDs shift direction.
    Default : false

Each LED is represented as a sub-node of the brcm,bcm6328-leds device.

LED sub-node required properties:
  - reg : LED pin number (only LEDs 0 to 23 are valid).

LED sub-node optional properties:
  a) Optional properties for sub-nodes related to software controlled LEDs:
    - label : see Documentation/devicetree/bindings/leds/common.txt
    - active-low : Boolean, makes LED active low.
      Default : false
    - default-state : see
      Documentation/devicetree/bindings/leds/common.txt
    - linux,default-trigger : see
      Documentation/devicetree/bindings/leds/common.txt

  b) Optional properties for sub-nodes related to hardware controlled LEDs:
    - brcm,hardware-controlled : Boolean, makes this LED hardware controlled.
      Default : false
    - brcm,link-signal-sources : An array of hardware link
      signal sources. Up to four link hardware signals can get muxed into
      these LEDs. Only valid for LEDs 0 to 7, where LED signals 0 to 3 may
      be muxed to LEDs 0 to 3, and signals 4 to 7 may be muxed to LEDs
      4 to 7. A signal can be muxed to more than one LED, and one LED can
      have more than one source signal.
    - brcm,activity-signal-sources : An array of hardware activity
      signal sources. Up to four activity hardware signals can get muxed into
      these LEDs. Only valid for LEDs 0 to 7, where LED signals 0 to 3 may
      be muxed to LEDs 0 to 3, and signals 4 to 7 may be muxed to LEDs
      4 to 7. A signal can be muxed to more than one LED, and one LED can
      have more than one source signal.

Examples:
Scenario 1 : BCM6328 with 4 EPHY LEDs
	leds0: led-controller@10000800 {
		compatible = "brcm,bcm6328-leds";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x10000800 0x24>;

		alarm_red@2 {
			reg = <2>;
			active-low;
			label = "red:alarm";
		};
		inet_green@3 {
			reg = <3>;
			active-low;
			label = "green:inet";
		};
		power_green@4 {
			reg = <4>;
			active-low;
			label = "green:power";
			default-state = "on";
		};
		ephy0_spd@17 {
			reg = <17>;
			brcm,hardware-controlled;
		};
		ephy1_spd@18 {
			reg = <18>;
			brcm,hardware-controlled;
		};
		ephy2_spd@19 {
			reg = <19>;
			brcm,hardware-controlled;
		};
		ephy3_spd@20 {
			reg = <20>;
			brcm,hardware-controlled;
		};
	};

Scenario 2 : BCM63268 with Serial/GPHY0 LEDs
	leds0: led-controller@10001900 {
		compatible = "brcm,bcm6328-leds";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x10001900 0x24>;
		brcm,serial-leds;
		brcm,serial-dat-low;
		brcm,serial-shift-inv;

		gphy0_spd0@0 {
			reg = <0>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <0>;
		};
		gphy0_spd1@1 {
			reg = <1>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <1>;
		};
		inet_red@2 {
			reg = <2>;
			active-low;
			label = "red:inet";
		};
		dsl_green@3 {
			reg = <3>;
			active-low;
			label = "green:dsl";
		};
		usb_green@4 {
			reg = <4>;
			active-low;
			label = "green:usb";
		};
		wps_green@7 {
			reg = <7>;
			active-low;
			label = "green:wps";
		};
		inet_green@8 {
			reg = <8>;
			active-low;
			label = "green:inet";
		};
		ephy0_act@9 {
			reg = <9>;
			brcm,hardware-controlled;
		};
		ephy1_act@10 {
			reg = <10>;
			brcm,hardware-controlled;
		};
		ephy2_act@11 {
			reg = <11>;
			brcm,hardware-controlled;
		};
		gphy0_act@12 {
			reg = <12>;
			brcm,hardware-controlled;
		};
		ephy0_spd@13 {
			reg = <13>;
			brcm,hardware-controlled;
		};
		ephy1_spd@14 {
			reg = <14>;
			brcm,hardware-controlled;
		};
		ephy2_spd@15 {
			reg = <15>;
			brcm,hardware-controlled;
		};
		power_green@20 {
			reg = <20>;
			active-low;
			label = "green:power";
			default-state = "on";
		};
	};

Scenario 3 : BCM6362 with 1 LED for each EPHY
	leds0: led-controller@10001900 {
		compatible = "brcm,bcm6328-leds";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x10001900 0x24>;

		usb@0 {
			reg = <0>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <0>;
			brcm,activity-signal-sources = <0>;
			/* USB link/activity routed to USB LED */
		};
		inet@1 {
			reg = <1>;
			brcm,hardware-controlled;
			brcm,activity-signal-sources = <1>;
			/* INET activity routed to INET LED */
		};
		ephy0@4 {
			reg = <4>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <4>;
			/* EPHY0 link routed to EPHY0 LED */
		};
		ephy1@5 {
			reg = <5>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <5>;
			/* EPHY1 link routed to EPHY1 LED */
		};
		ephy2@6 {
			reg = <6>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <6>;
			/* EPHY2 link routed to EPHY2 LED */
		};
		ephy3@7 {
			reg = <7>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <7>;
			/* EPHY3 link routed to EPHY3 LED */
		};
		power_green@20 {
			reg = <20>;
			active-low;
			label = "green:power";
			default-state = "on";
		};
	};

Scenario 4 : BCM6362 with 1 LED for all EPHYs
	leds0: led-controller@10001900 {
		compatible = "brcm,bcm6328-leds";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x10001900 0x24>;

		usb@0 {
			reg = <0>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <0 1>;
			brcm,activity-signal-sources = <0 1>;
			/* USB/INET link/activity routed to USB LED */
		};
		ephy@4 {
			reg = <4>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <4 5 6 7>;
			/* EPHY0/1/2/3 link routed to EPHY0 LED */
		};
		power_green@20 {
			reg = <20>;
			active-low;
			label = "green:power";
			default-state = "on";
		};
	};

Scenario 5 : BCM6362 with EPHY LEDs swapped
	leds0: led-controller@10001900 {
		compatible = "brcm,bcm6328-leds";
		#address-cells = <1>;
		#size-cells = <0>;
		reg = <0x10001900 0x24>;

		usb@0 {
			reg = <0>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <0>;
			brcm,activity-signal-sources = <0 1>;
			/* USB link/act and INET act routed to USB LED */
		};
		ephy0@4 {
			reg = <4>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <7>;
			/* EPHY3 link routed to EPHY0 LED */
		};
		ephy1@5 {
			reg = <5>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <6>;
			/* EPHY2 link routed to EPHY1 LED */
		};
		ephy2@6 {
			reg = <6>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <5>;
			/* EPHY1 link routed to EPHY2 LED */
		};
		ephy3@7 {
			reg = <7>;
			brcm,hardware-controlled;
			brcm,link-signal-sources = <4>;
			/* EPHY0 link routed to EPHY3 LED */
		};
		power_green@20 {
			reg = <20>;
			active-low;
			label = "green:power";
			default-state = "on";
		};
	};
