Commit dd87684c authored by Vishwanatha Subbanna's avatar Vishwanatha Subbanna Committed by Joel Stanley
Browse files

ARM: dts: aspeed: everest: Add pcie cable card indicator leds



These are leds on the IBM proprietary PCIE cards called cable cards.
Cable cards have 2 ports on them and each port has an indicator led.

Signed-off-by: default avatarVishwanatha Subbanna <vishwa@linux.vnet.ibm.com>
Signed-off-by: default avatarJoel Stanley <joel@jms.id.au>
Link: https://lore.kernel.org/r/20210607031259.475020-7-joel@jms.id.au
parent 2970264f
Loading
Loading
Loading
Loading
+665 −49
Original line number Diff line number Diff line
@@ -508,6 +508,62 @@
				compatible = "atmel,24c64";
				reg = <0x52>;
			};

			pca_cable_card_c01: pca9551@62 {
				compatible = "nxp,pca9551";
				reg = <0x62>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c01-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c01-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};

		i2c4mux0chn1: i2c@1 {
@@ -518,6 +574,62 @@
				compatible = "atmel,24c64";
				reg = <0x50>;
			};

			pca_cable_card_c02: pca9551@60 {
				compatible = "nxp,pca9551";
				reg = <0x60>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c02-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c02-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};

		i2c4mux0chn2: i2c@2 {
@@ -528,6 +640,62 @@
				compatible = "atmel,24c64";
				reg = <0x51>;
			};

			pca_cable_card_c03: pca9551@61 {
				compatible = "nxp,pca9551";
				reg = <0x61>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c03-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c03-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};
	};
};
@@ -636,88 +804,536 @@
				compatible = "atmel,24c64";
				reg = <0x50>;
			};
		};

		i2c5mux0chn1: i2c@1 {
			pca_cable_card_c04: pca9551@60 {
				compatible = "nxp,pca9551";
				reg = <0x60>;
				#address-cells = <1>;
				#size-cells = <0>;
			reg = <1>;
			eeprom@51 {
				compatible = "atmel,24c64";
				reg = <0x51>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c04-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c04-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

		i2c5mux0chn2: i2c@2 {
			#address-cells = <1>;
			#size-cells = <0>;
				gpio@2 {
					reg = <2>;
			eeprom@52 {
				compatible = "atmel,24c64";
				reg = <0x52>;
			};
					type = <PCA955X_TYPE_GPIO>;
				};

		i2c5mux0chn3: i2c@3 {
			#address-cells = <1>;
			#size-cells = <0>;
				gpio@3 {
					reg = <3>;
			eeprom@53 {
				compatible = "atmel,24c64";
				reg = <0x53>;
			};
		};
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

&i2c6 {
	status = "okay";
				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

	i2c-switch@70 {
		compatible = "nxp,pca9546";
		reg = <0x70>;
		#address-cells = <1>;
		#size-cells = <0>;
		status = "okay";
		i2c-mux-idle-disconnect;
				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

		i2c6mux0chn0: i2c@0 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0>;
			eeprom@50 {
				compatible = "atmel,24c64";
				reg = <0x50>;
				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};

		i2c6mux0chn1: i2c@1 {
		i2c5mux0chn1: i2c@1 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <1>;
			eeprom@52 {
			eeprom@51 {
				compatible = "atmel,24c64";
				reg = <0x52>;
			};
				reg = <0x51>;
			};

		i2c6mux0chn2: i2c@2 {
			pca_cable_card_c05: pca9551@61 {
				compatible = "nxp,pca9551";
				reg = <0x61>;
				#address-cells = <1>;
				#size-cells = <0>;
			reg = <2>;
			eeprom@53 {
				compatible = "atmel,24c64";
				reg = <0x53>;
			};
		};

		i2c6mux0chn3: i2c@3 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <3>;
			eeprom@51 {
				compatible = "atmel,24c64";
				reg = <0x51>;
				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c05-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c05-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};

		i2c5mux0chn2: i2c@2 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <2>;
			eeprom@52 {
				compatible = "atmel,24c64";
				reg = <0x52>;
			};

			pca_cable_card_c06: pca9551@62 {
				compatible = "nxp,pca9551";
				reg = <0x62>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c06-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c06-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};

		i2c5mux0chn3: i2c@3 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <3>;
			eeprom@53 {
				compatible = "atmel,24c64";
				reg = <0x53>;
			};

			pca_cable_card_c07: pca9551@63 {
				compatible = "nxp,pca9551";
				reg = <0x63>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c07-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c07-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};
	};
};

&i2c6 {
	status = "okay";

	i2c-switch@70 {
		compatible = "nxp,pca9546";
		reg = <0x70>;
		#address-cells = <1>;
		#size-cells = <0>;
		status = "okay";
		i2c-mux-idle-disconnect;

		i2c6mux0chn0: i2c@0 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0>;
			eeprom@50 {
			compatible = "atmel,24c64";
			reg = <0x50>;
			};

			pca_cable_card_c08: pca9551@60 {
				compatible = "nxp,pca9551";
				reg = <0x60>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c08-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c08-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};

		i2c6mux0chn1: i2c@1 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <1>;
			eeprom@52 {
				compatible = "atmel,24c64";
				reg = <0x52>;
			};

			pca_cable_card_c09: pca9551@62 {
				compatible = "nxp,pca9551";
				reg = <0x62>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c09-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c09-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};

		i2c6mux0chn2: i2c@2 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <2>;
			eeprom@53 {
				compatible = "atmel,24c64";
				reg = <0x53>;
			};

			pca_cable_card_c10: pca9551@63 {
				compatible = "nxp,pca9551";
				reg = <0x63>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c10-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c10-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};

		i2c6mux0chn3: i2c@3 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <3>;
			eeprom@51 {
				compatible = "atmel,24c64";
				reg = <0x51>;
			};

			pca_cable_card_c11: pca9551@61 {
				compatible = "nxp,pca9551";
				reg = <0x61>;
				#address-cells = <1>;
				#size-cells = <0>;

				gpio-controller;
				#gpio-cells = <2>;

				led@0 {
					label = "cablecard-c11-cxp-top";
					reg = <0>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				led@1 {
					label = "cablecard-c11-cxp-bot";
					reg = <1>;
					retain-state-shutdown;
					default-state = "keep";
					type = <PCA955X_TYPE_LED>;
				};

				gpio@2 {
					reg = <2>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@3 {
					reg = <3>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@4 {
					reg = <4>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@5 {
					reg = <5>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@6 {
					reg = <6>;
					type = <PCA955X_TYPE_GPIO>;
				};

				gpio@7 {
					reg = <7>;
					type = <PCA955X_TYPE_GPIO>;
				};
			};
		};
	};