[PATCH v6 2/2] ARM: dts: aspeed: ventura: add Meta Ventura BMC
Andrew Jeffery
andrew at codeconstruct.com.au
Mon Mar 24 16:17:34 PDT 2025
On Fri, 2025-03-21 at 20:37 +0800, Jason Hsu wrote:
>
> + led-84 {
Lots of LEDs!
> + label = "compute18_led_amber";
> + default-state = "off";
> + gpios = <&tray_leds_g1_gpio 0 GPIO_ACTIVE_LOW>;
> + };
> + };
> +
> + memory at 80000000 {
> + device_type = "memory";
> + reg = <0x80000000 0x80000000>;
> + };
> +
> + p1v8_bmc_aux: regulator-p1v8-bmc-aux {
The indentation is broken here and in other places below. Can you
please fix it up?
> + compatible = "regulator-fixed";
> + regulator-name = "p1v8_bmc_aux";
> + regulator-min-microvolt = <1800000>;
> + regulator-max-microvolt = <1800000>;
> + regulator-always-on;
> + };
> +
> + p2v5_bmc_aux: regulator-p2v5-bmc-aux {
> + compatible = "regulator-fixed";
> + regulator-name = "p2v5_bmc_aux";
> + regulator-min-microvolt = <2500000>;
> + regulator-max-microvolt = <2500000>;
> + regulator-always-on;
> + };
> +
> + spi1_gpio: spi {
> + compatible = "spi-gpio";
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + sck-gpios = <&gpio0 ASPEED_GPIO(Z, 3) GPIO_ACTIVE_HIGH>;
> + mosi-gpios = <&gpio0 ASPEED_GPIO(Z, 4) GPIO_ACTIVE_HIGH>;
> + miso-gpios = <&gpio0 ASPEED_GPIO(Z, 5) GPIO_ACTIVE_HIGH>;
> + cs-gpios = <&gpio0 ASPEED_GPIO(Z, 0) GPIO_ACTIVE_LOW>;
> + num-chipselects = <1>;
> +
> + tpm at 0 {
> + compatible = "infineon,slb9670", "tcg,tpm_tis-spi";
> + spi-max-frequency = <33000000>;
> + reg = <0>;
> + };
> + };
> +};
> +
> +&adc0 {
> + vref-supply = <&p1v8_bmc_aux>;
> + status = "okay";
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_adc0_default &pinctrl_adc1_default
> + &pinctrl_adc2_default &pinctrl_adc3_default
> + &pinctrl_adc4_default &pinctrl_adc5_default
> + &pinctrl_adc6_default &pinctrl_adc7_default>;
> +
> +};
> +
> +&adc1 {
> + vref-supply = <&p2v5_bmc_aux>;
> + status = "okay";
> +
> + pinctrl-names = "default";
> + pinctrl-0 = <&pinctrl_adc10_default>;
> +};
> +
> +&ehci0 {
> + status = "okay";
> +};
> +
> +&ehci1 {
> + status = "okay";
> +};
> +
> +&fmc {
> + status = "okay";
> + flash at 0 {
> + status = "okay";
> + m25p,fast-read;
> + label = "bmc";
> + spi-max-frequency = <50000000>;
> +#include "openbmc-flash-layout-128.dtsi"
> + };
> + flash at 1 {
> + status = "okay";
> + m25p,fast-read;
> + label = "alt-bmc";
> + spi-max-frequency = <50000000>;
> + };
> +};
> +
> +&i2c0 {
> + status = "okay";
> +
> + i2c-mux at 77 {
> + compatible = "nxp,pca9548";
> + reg = <0x77>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + i2c0mux0ch0: i2c at 0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> + status = "okay";
> + };
> +
> + i2c0mux0ch1: i2c at 1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <1>;
> + status = "okay";
> + };
> +
> + i2c0mux0ch2: i2c at 2 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <2>;
> + status = "okay";
> + };
> +
> + i2c0mux0ch3: i2c at 3 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <3>;
> + status = "okay";
> + };
> +
> + i2c0mux0ch4: i2c at 4 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <4>;
> + status = "okay";
> + };
> +
> + i2c0mux0ch5: i2c at 5 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <5>;
> + status = "okay";
> + };
> +
> + i2c0mux0ch6: i2c at 6 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <6>;
> + status = "okay";
> + };
> +
> + i2c0mux0ch7: i2c at 7 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <7>;
> + status = "okay";
> + };
> + };
> +};
> +
> +&i2c1 {
> + status = "okay";
> +
> + i2c-mux at 77 {
> + compatible = "nxp,pca9548";
> + reg = <0x77>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + i2c1mux0ch0: i2c at 0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> + status = "okay";
> + };
> +
> + i2c1mux0ch1: i2c at 1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <1>;
> + status = "okay";
> + };
> +
> + i2c1mux0ch2: i2c at 2 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <2>;
> + status = "okay";
> + };
> +
> + i2c1mux0ch3: i2c at 3 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <3>;
> + status = "okay";
> + };
> +
> + i2c1mux0ch4: i2c at 4 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <4>;
> + status = "okay";
> + };
> +
> + i2c1mux0ch5: i2c at 5 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <5>;
> + status = "okay";
> + };
> +
> + i2c1mux0ch6: i2c at 6 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <6>;
> + status = "okay";
> + };
> +
> + i2c1mux0ch7: i2c at 7 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <7>;
> + status = "okay";
> + };
> + };
> +};
> +
> +&i2c2 {
> + status = "okay";
> +
> + i2c-mux at 77 {
> + compatible = "nxp,pca9548";
> + reg = <0x77>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + i2c2mux0ch0: i2c at 0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> + status = "okay";
> + };
> +
> + i2c2mux0ch1: i2c at 1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <1>;
> + status = "okay";
> + };
> +
> + i2c2mux0ch2: i2c at 2 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <2>;
> + status = "okay";
> + };
> +
> + i2c2mux0ch3: i2c at 3 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <3>;
> + status = "okay";
> + };
> +
> + i2c2mux0ch4: i2c at 4 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <4>;
> + status = "okay";
> + };
> +
> + i2c2mux0ch5: i2c at 5 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <5>;
> + status = "okay";
> + };
> +
> + i2c2mux0ch6: i2c at 6 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <6>;
> + status = "okay";
> + };
> +
> + i2c2mux0ch7: i2c at 7 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <7>;
> + status = "okay";
> + };
> + };
> +};
> +
> +&i2c3 {
> + status = "okay";
> +
> + i2c-mux at 77 {
> + compatible = "nxp,pca9548";
> + reg = <0x77>;
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + i2c3mux0ch0: i2c at 0 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <0>;
> + status = "okay";
> + };
> +
> + i2c3mux0ch1: i2c at 1 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <1>;
> + status = "okay";
> + };
> +
> + i2c3mux0ch2: i2c at 2 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <2>;
> + status = "okay";
> + };
> +
> + i2c3mux0ch3: i2c at 3 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <3>;
> +
> + // Fan Board 0 FRU
> + eeprom at 56 {
> + compatible = "atmel,24c128";
> + reg = <0x56>;
> + };
> +
> + fan_leds_g1_gpio: gpio at 21 {
> + compatible = "nxp,pca9555";
> + reg = <0x21>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + adc at 1f {
> + compatible = "ti,adc128d818";
> + reg = <0x1f>;
> + ti,mode = /bits/ 8 <1>;
> + };
> +
> + adc at 35 {
> + compatible = "maxim,max11617";
> + reg = <0x35>;
> + };
(All) nodes should be in increasing order of address, or ordered
alphabetically otherwise:
https://docs.kernel.org/devicetree/bindings/dts-coding-style.html#order-of-nodes
Can you please fix this throughout the patch?
> + };
> +
> + i2c3mux0ch4: i2c at 4 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <4>;
> +
> + // Fan Board 1 FRU
> + eeprom at 56 {
> + compatible = "atmel,24c128";
> + reg = <0x56>;
> + };
> +
> + gpio at 21 {
> + compatible = "nxp,pca9555";
> + reg = <0x21>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + adc at 1f {
> + compatible = "ti,adc128d818";
> + reg = <0x1f>;
> + ti,mode = /bits/ 8 <1>;
> + };
> +
> + adc at 35 {
> + compatible = "maxim,max11617";
> + reg = <0x35>;
> + };
> + };
> +
> + i2c3mux0ch5: i2c at 5 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <5>;
> +
> + hwmon: hwmon at 23 {
I've said elsewhere that I don't think hwmon is the right node name:
https://lore.kernel.org/all/26a1d17c47c5ca6036dd58ac3b953daeec9f5ef8.camel@codeconstruct.com.au/
> + compatible = "nuvoton,nct7363";
> + reg = <0x23>;
> + #pwm-cells = <2>;
> +
> + //fan 0 IL
> + fan-0 {
> + pwms = <&hwmon 0 20000>;
> + tach-ch = /bits/ 8 <0x09>;
> + };
> +
> + //fan 0 OL
> + fan-1 {
> + pwms = <&hwmon 0 20000>;
> + tach-ch = /bits/ 8 <0x0B>;
> + };
> +
> + //fan 1 IL
> + fan-2 {
> + pwms = <&hwmon 4 20000>;
> + tach-ch = /bits/ 8 <0x0A>;
> + };
> +
> + //fan 1 OL
> + fan-3 {
> + pwms = <&hwmon 4 20000>;
> + tach-ch = /bits/ 8 <0x0D>;
> + };
> +
> + //fan 2 IL
> + fan-4 {
> + pwms = <&hwmon 6 20000>;
> + tach-ch = /bits/ 8 <0x0F>;
> + };
> +
> + //fan 2 OL
> + fan-5 {
> + pwms = <&hwmon 6 20000>;
> + tach-ch = /bits/ 8 <0x01>;
> + };
> +
> + //fan 3 IL
> + fan-6 {
> + pwms = <&hwmon 10 20000>;
> + tach-ch = /bits/ 8 <0x00>;
> + };
> +
> + //fan 3 OL
> + fan-7 {
> + pwms = <&hwmon 10 20000>;
> + tach-ch = /bits/ 8 <0x03>;
> + };
> + };
> + };
> +
> + i2c3mux0ch6: i2c at 6 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <6>;
> + // REAR-IO Board FRU
> + eeprom at 56 {
> + compatible = "atmel,24c128";
> + reg = <0x56>;
> + };
> + };
> +
> + i2c3mux0ch7: i2c at 7 {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + reg = <7>;
> + status = "okay";
> + };
> + };
> +};
> +
> +&i2c4 {
> + status = "okay";
> +};
> +
> +&i2c5 {
> + status = "okay";
> +
> + // VR TEMP U399
Indentation again here and below.
> + temperature-sensor at 4c {
> + compatible = "ti,tmp75";
> + reg = <0x4c>;
> + };
> + // VR TEMP U397
> + temperature-sensor at 4d {
> + compatible = "ti,tmp75";
> + reg = <0x4d>;
> + };
> + // BRICK TEMP U398
> + temperature-sensor at 4e {
> + compatible = "ti,tmp75";
> + reg = <0x4e>;
> + };
> +
> + temperature-sensor at 4f {
> + compatible = "ti,tmp75";
> + reg = <0x4f>;
> + };
> + // RMC FRU
> + eeprom at 54 {
> + compatible = "atmel,24c128";
> + reg = <0x54>;
> + };
> +};
> +
> +&i2c6 {
> + status = "okay";
> +
> + gpio at 20 {
> + compatible = "nxp,pca9555";
> + reg = <0x20>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + gpio at 21 {
> + compatible = "nxp,pca9555";
> + reg = <0x21>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + gpio at 22 {
> + compatible = "nxp,pca9555";
> + reg = <0x22>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + rtc at 51 {
> + compatible = "nxp,pcf8563";
> + reg = <0x51>;
> + };
> +};
> +
> +&i2c7 {
> + status = "okay";
> +};
> +
> +&i2c9 {
> + status = "okay";
> +
> + // SCM TEMP SENSOR
> + temperature-sensor at 4b {
> + compatible = "ti,tmp75";
> + reg = <0x4b>;
> + };
> +
> + // SCM FRU EEPROM
> + eeprom at 50 {
> + compatible = "atmel,24c128";
> + reg = <0x50>;
> + };
> +
> + // BSM FRU EEPROM
> + eeprom at 56 {
> + compatible = "atmel,24c64";
> + reg = <0x56>;
> + };
> +};
> +
> +&i2c10 {
> + status = "okay";
> +
> + power-monitor at 14 {
> + compatible = "infineon,xdp710";
> + reg = <0x14>;
> + };
> +
> + power-monitor at 44 {
> + compatible = "lltc,ltc4286";
> + reg = <0x44>;
> + };
> +};
> +
> +&i2c14 {
> + status = "okay";
> +};
> +
> +&i2c15 {
> + status = "okay";
> +
> + tray_leds_g1_gpio: gpio at 20 {
> + compatible = "nxp,pca9555";
> + reg = <0x20>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + tray_leds_g2_gpio: gpio at 21 {
> + compatible = "nxp,pca9555";
> + reg = <0x21>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + tray_leds_g3_gpio: gpio at 22 {
> + compatible = "nxp,pca9555";
> + reg = <0x22>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + tray_leds_g4_gpio: gpio at 24 {
> + compatible = "nxp,pca9555";
> + reg = <0x24>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + tray_leds_g5_gpio: gpio at 25 {
> + compatible = "nxp,pca9555";
> + reg = <0x25>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + tray_leds_g6_gpio: gpio at 26 {
> + compatible = "nxp,pca9555";
> + reg = <0x26>;
> + gpio-controller;
> + #gpio-cells = <2>;
> + };
> +
> + // LED Board FRU
> + eeprom at 56 {
> + compatible = "atmel,24c128";
> + reg = <0x56>;
> + };
> +};
> +
> +&mdio0 {
> + status = "okay";
> +};
> +
> +&mac3 {
Should probably be ordered before '&mdio0' above :)
Andrew
More information about the linux-arm-kernel
mailing list