Commit 18e48cc0 authored by Arnd Bergmann's avatar Arnd Bergmann
Browse files

Merge tag 'aspeed-5.8-devicetree' of...

Merge tag 'aspeed-5.8-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed into arm/dt

ASPEED device tree updates for 5.8

New machines:

 - YADRO's ast2500 OpenPower P9 Nicole BMC
 - Facebook's ast2500 x86 Yosemite V2 BMC

The AST2600 machines Rainier and Tacoma were fleshed out.

Machines have started describing the GPIO names as userspace attempts
to use the GPIO chardev API.

* tag 'aspeed-5.8-devicetree' of git://git.kernel.org/pub/scm/linux/kernel/git/joel/aspeed: (32 commits)
  ARM: dts: aspeed: Change KCS nodes to v2 binding
  ARM: dts: Aspeed: AST2600: Add XDMA PCI-E root control reset
  ARM: dts: aspeed: ast2600: Add XDMA Engine
  ARM: dts: aspeed: ast2500: Add XDMA Engine
  ARM: dts: aspeed: Adding Facebook Yosemite V2 BMC
  ARM: dts: aspeed: Add YADRO Nicole BMC
  ARM: dts: aspeed: mihawk: add aliases for i2c
  ARM: dts: aspeed: tacoma: Add TPM
  ARM: dts: aspeed: tacoma: Enable the second VUART
  ARM: dts: aspeed: tacoma: Add iio-hwmon nodes for IIO devices
  ARM: dts: aspeed: rainier: Add VGA reserved memory region
  ARM: dts: aspeed: rainier: Add gpio line names
  ARM: dts: aspeed: tacoma: Add gpio line names
  ARM: dts: aspeed: zaius: Add gpio line names
  ARM: dts: aspeed: romulus: Add gpio line names
  ARM: dts: aspeed: witherspoon: Add gpio line names
  ARM: dts: aspeed: ast2600: Set arch timer always-on
  ARM: dts: aspeed: tacoma: Add GPIOs for FSI
  ARM: dts: aspeed: mihawk: Change the name of leds
  ARM: dts: aspeed: rainier: Remove regulators
  ...

Link: https://lore.kernel.org/r/CACPK8Xd-=XFREvvS-mK_ECyn14y0GPAMyy5BpEEUYfaw4jAgsw@mail.gmail.com


Signed-off-by: default avatarArnd Bergmann <arnd@arndb.de>
parents 4875d9e2 fa4c8ec6
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -1341,6 +1341,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
	aspeed-bmc-facebook-wedge40.dtb \
	aspeed-bmc-facebook-wedge100.dtb \
	aspeed-bmc-facebook-yamp.dtb \
	aspeed-bmc-facebook-yosemitev2.dtb \
	aspeed-bmc-ibm-rainier.dtb \
	aspeed-bmc-intel-s2600wf.dtb \
	aspeed-bmc-inspur-fp5280g2.dtb \
@@ -1349,6 +1350,7 @@ dtb-$(CONFIG_ARCH_ASPEED) += \
	aspeed-bmc-microsoft-olympus.dtb \
	aspeed-bmc-opp-lanyang.dtb \
	aspeed-bmc-opp-mihawk.dtb \
	aspeed-bmc-opp-nicole.dtb \
	aspeed-bmc-opp-palmetto.dtb \
	aspeed-bmc-opp-romulus.dtb \
	aspeed-bmc-opp-swift.dtb \
+4 −0
Original line number Diff line number Diff line
@@ -213,3 +213,7 @@
&i2c15 {
	status = "okay";
};

&fsim0 {
	status = "okay";
};
+76 −2
Original line number Diff line number Diff line
@@ -5,6 +5,7 @@

#include "aspeed-g5.dtsi"
#include <dt-bindings/gpio/aspeed-gpio.h>
#include <dt-bindings/i2c/i2c.h>

/ {
	model = "Facebook TiogaPass BMC";
@@ -112,13 +113,76 @@
&kcs2 {
	// BMC KCS channel 2
	status = "okay";
	kcs_addr = <0xca8>;
	aspeed,lpc-io-reg = <0xca8>;
};

&kcs3 {
	// BMC KCS channel 3
	status = "okay";
	kcs_addr = <0xca2>;
	aspeed,lpc-io-reg = <0xca2>;
};

&gpio {
	status = "okay";
	gpio-line-names =
	/*A0-A7*/	"BMC_CPLD_FPGA_SEL","","","","","","","",
	/*B0-B7*/	"","BMC_DEBUG_EN","","","","BMC_PPIN","PS_PWROK",
			"IRQ_PVDDQ_GHJ_VRHOT_LVT3",
	/*C0-C7*/	"","","","","","","","",
	/*D0-D7*/	"BIOS_MRC_DEBUG_MSG_DIS","BOARD_REV_ID0","",
			"BOARD_REV_ID1","IRQ_DIMM_SAVE_LVT3","BOARD_REV_ID2",
			"CPU_ERR0_LVT3_BMC","CPU_ERR1_LVT3_BMC",
	/*E0-E7*/	"RESET_BUTTON","RESET_OUT","POWER_BUTTON",
			"POWER_OUT","NMI_BUTTON","","CPU0_PROCHOT_LVT3_ BMC",
			"CPU1_PROCHOT_LVT3_ BMC",
	/*F0-F7*/	"IRQ_PVDDQ_ABC_VRHOT_LVT3","",
			"IRQ_PVCCIN_CPU0_VRHOT_LVC3",
			"IRQ_PVCCIN_CPU1_VRHOT_LVC3",
			"IRQ_PVDDQ_KLM_VRHOT_LVT3","","P3VBAT_BRIDGE_EN","",
	/*G0-G7*/	"CPU_ERR2_LVT3","CPU_CATERR_LVT3","PCH_BMC_THERMTRIP",
			"CPU0_SKTOCC_LVT3","","","","BIOS_SMI_ACTIVE",
	/*H0-H7*/	"LED_POST_CODE_0","LED_POST_CODE_1","LED_POST_CODE_2",
			"LED_POST_CODE_3","LED_POST_CODE_4","LED_POST_CODE_5",
			"LED_POST_CODE_6","LED_POST_CODE_7",
	/*I0-I7*/	"CPU0_FIVR_FAULT_LVT3","CPU1_FIVR_FAULT_LVT3",
			"FORCE_ADR","UV_ADR_TRIGGER_EN","","","","",
	/*J0-J7*/	"","","","","","","","",
	/*K0-K7*/	"","","","","","","","",
	/*L0-L7*/	"IRQ_UV_DETECT","IRQ_OC_DETECT","HSC_TIMER_EXP","",
			"MEM_THERM_EVENT_PCH","PMBUS_ALERT_BUF_EN","","",
	/*M0-M7*/	"CPU0_RC_ERROR","CPU1_RC_ERROR","","OC_DETECT_EN",
			"CPU0_THERMTRIP_LATCH_LVT3",
			"CPU1_THERMTRIP_LATCH_LVT3","","",
	/*N0-N7*/	"","","","CPU_MSMI_LVT3","","BIOS_SPI_BMC_CTRL","","",
	/*O0-O7*/	"","","","","","","","",
	/*P0-P7*/	"BOARD_SKU_ID0","BOARD_SKU_ID1","BOARD_SKU_ID2",
			"BOARD_SKU_ID3","BOARD_SKU_ID4","BMC_PREQ",
			"BMC_PWR_DEBUG","RST_RSMRST",
	/*Q0-Q7*/	"","","","","UARTSW_LSB","UARTSW_MSB",
			"POST_CARD_PRES_BMC","PE_BMC_WAKE",
	/*R0-R7*/	"","","BMC_TCK_MUX_SEL","BMC_PRDY",
			"BMC_XDP_PRSNT_IN","RST_BMC_PLTRST_BUF","SLT_CFG0",
			"SLT_CFG1",
	/*S0-S7*/	"THROTTLE","BMC_READY","","HSC_SMBUS_SWITCH_EN","",
			"","","",
	/*T0-T7*/	"","","","","","","","",
	/*U0-U7*/	"","","","","","BMC_FAULT","","",
	/*V0-V7*/	"","","","FAST_PROCHOT_EN","","","","",
	/*W0-W7*/	"","","","","","","","",
	/*X0-X7*/	"","","","GLOBAL_RST_WARN",
			"CPU0_MEMABC_MEMHOT_LVT3_BMC",
			"CPU0_MEMDEF_MEMHOT_LVT3_BMC",
			"CPU1_MEMGHJ_MEMHOT_LVT3_BMC",
			"CPU1_MEMKLM_MEMHOT_LVT3_BMC",
	/*Y0-Y7*/	"SIO_S3","SIO_S5","BMC_JTAG_SEL","SIO_ONCONTROL","",
			"","","",
	/*Z0-Z7*/	"","SIO_POWER_GOOD","IRQ_PVDDQ_DEF_VRHOT_LVT3","",
			"","","","",
	/*AA0-AA7*/	"CPU1_SKTOCC_LVT3","IRQ_SML1_PMBUS_ALERT",
			"SERVER_POWER_LED","","PECI_MUX_SELECT","UV_HIGH_SET",
			"","POST_COMPLETE",
	/*AB0-AB7*/	"IRQ_HSC_FAULT","OCP_MEZZA_PRES","","","","","","",
	/*AC0-AC7*/	"","","","","","","","";
};

&mac0 {
@@ -368,6 +432,11 @@
&i2c4 {
	status = "okay";
	// BMC Debug Header
	ipmb0@10 {
		compatible = "ipmb-dev";
		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
		i2c-protocol;
	};
};

&i2c5 {
@@ -449,6 +518,11 @@
&i2c9 {
	status = "okay";
	//USB Debug Connector
	ipmb0@10 {
		compatible = "ipmb-dev";
		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
		i2c-protocol;
	};
};

&pwm_tacho {
+231 −0
Original line number Diff line number Diff line
// SPDX-License-Identifier: GPL-2.0-or-later
// Copyright (c) 2018 Facebook Inc.
/dts-v1/;
#include "aspeed-g5.dtsi"
#include <dt-bindings/i2c/i2c.h>

/ {
	model = "Facebook Yosemitev2 BMC";
	compatible = "facebook,yosemitev2-bmc", "aspeed,ast2500";
	aliases {
		serial4 = &uart5;
	};
	chosen {
		stdout-path = &uart5;
	};

	memory@80000000 {
		reg = <0x80000000 0x20000000>;
	};

	iio-hwmon {
		// VOLATAGE SENSOR
		compatible = "iio-hwmon";
		io-channels = <&adc 0> , <&adc 1> , <&adc 2> ,  <&adc 3> ,
		<&adc 4> , <&adc 5> , <&adc 6> ,  <&adc 7> ,
		<&adc 8> , <&adc 9> , <&adc 10>, <&adc 11> ,
		<&adc 12> , <&adc 13> , <&adc 14> , <&adc 15> ;
	};
};

&fmc {
	status = "okay";
	flash@0 {
		status = "okay";
		m25p,fast-read;
#include "openbmc-flash-layout.dtsi"
	};
};

&spi1 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_spi1_default>;
	flash@0 {
		status = "okay";
		m25p,fast-read;
		label = "pnor";
	};
};
&uart1 {
	// Host1 Console
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_txd1_default
		     &pinctrl_rxd1_default>;
};

&uart2 {
	// Host2 Console
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_txd2_default
		     &pinctrl_rxd2_default>;

};

&uart3 {
	// Host3 Console
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_txd3_default
		     &pinctrl_rxd3_default>;
};

&uart4 {
	// Host4 Console
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_txd4_default
		     &pinctrl_rxd4_default>;
};

&uart5 {
	// BMC Console
	status = "okay";
};

&vuart {
	// Virtual UART
	status = "okay";
};

&mac0 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_rmii1_default>;
	use-ncsi;
	mlx,multi-host;
};

&adc {
	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
			&pinctrl_adc8_default
			&pinctrl_adc9_default
			&pinctrl_adc10_default
			&pinctrl_adc11_default
			&pinctrl_adc12_default
			&pinctrl_adc13_default
			&pinctrl_adc14_default
			&pinctrl_adc15_default>;
};

&i2c1 {
	//Host1 IPMB bus
	status = "okay";
	multi-master;
	ipmb1@10 {
		compatible = "ipmb-dev";
		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
		i2c-protocol;
	};
};

&i2c3 {
	//Host2 IPMB bus
	status = "okay";
	multi-master;
	ipmb3@10 {
		compatible = "ipmb-dev";
		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
		i2c-protocol;
	};
};

&i2c5 {
	//Host3 IPMB bus
	status = "okay";
	multi-master;
	ipmb5@10 {
		compatible = "ipmb-dev";
		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
		i2c-protocol;
	};
};

&i2c7 {
	//Host4 IPMB bus
	status = "okay";
	multi-master;
	ipmb7@10 {
		compatible = "ipmb-dev";
		reg = <(0x10 | I2C_OWN_SLAVE_ADDRESS)>;
		i2c-protocol;
	};
};

&i2c8 {
	status = "okay";
	//FRU EEPROM
	eeprom@51 {
		compatible = "atmel,24c64";
		reg = <0x51>;
		pagesize = <32>;
	};
};

&i2c9 {
	status = "okay";
	tmp421@4e {
	//INLET TEMP
		compatible = "ti,tmp421";
		reg = <0x4e>;
	};
	//OUTLET TEMP
	tmp421@4f {
		compatible = "ti,tmp421";
		reg = <0x4f>;
	};
};

&i2c10 {
	status = "okay";
	//HSC
	adm1278@40 {
		compatible = "adi,adm1278";
		reg = <0x40>;
	};
};

&i2c11 {
	status = "okay";
	//MEZZ_TEMP_SENSOR
	tmp421@1f {
		compatible = "ti,tmp421";
		reg = <0x1f>;
	};
};

&i2c12 {
	status = "okay";
	//MEZZ_FRU
	eeprom@51 {
		compatible = "atmel,24c64";
		reg = <0x51>;
		pagesize = <32>;
	};
};

&pwm_tacho {
	status = "okay";
	//FSC
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_pwm0_default &pinctrl_pwm1_default>;
	fan@0 {
		reg = <0x00>;
		aspeed,fan-tach-ch = /bits/ 8 <0x00>;
	};
	fan@1 {
		reg = <0x01>;
		aspeed,fan-tach-ch = /bits/ 8 <0x01>;
	};
};
+142 −60
Original line number Diff line number Diff line
@@ -4,6 +4,7 @@

#include "aspeed-g6.dtsi"
#include <dt-bindings/gpio/aspeed-gpio.h>
#include <dt-bindings/leds/leds-pca955x.h>

/ {
	model = "Rainier";
@@ -32,6 +33,11 @@
			no-map;
			reg = <0xB8000000 0x04000000>; /* 64M */
		};

		vga_memory: region@bf000000 {
                        no-map;
                        reg = <0xbf000000 0x01000000>;  /* 16M */
                };
	};

	gpio-keys {
@@ -64,6 +70,40 @@

};

&gpio0 {
	gpio-line-names =
	/*A0-A7*/	"","","","","","","","",
	/*B0-B7*/	"","","","","","","","",
	/*C0-C7*/	"","","","","","","","",
	/*D0-D7*/	"","","","","","","","",
	/*E0-E7*/	"","","","","","","","",
	/*F0-F7*/	"","","","","","","","",
	/*G0-G7*/	"","","","","","","","",
	/*H0-H7*/	"","","","","","","","",
	/*I0-I7*/	"","","","","","","","",
	/*J0-J7*/	"","","","","","","","",
	/*K0-K7*/	"","","","","","","","",
	/*L0-L7*/	"","","","","","","","",
	/*M0-M7*/	"","","","","","","","",
	/*N0-N7*/	"","","","","","","","",
	/*O0-O7*/	"","","","","","","","",
	/*P0-P7*/	"","","","","","","","",
	/*Q0-Q7*/	"cfam-reset","","","","","","","",
	/*R0-R7*/	"","","","","","","","",
	/*S0-S7*/	"presence-ps0","presence-ps1","presence-ps2","presence-ps3",
				"","","","",
	/*T0-T7*/	"","","","","","","","",
	/*U0-U7*/	"","","","","","","","",
	/*V0-V7*/	"","","","","","","","",
	/*W0-W7*/	"","","","","","","","",
	/*X0-X7*/	"","","","","","","","",
	/*Y0-Y7*/	"","","","","","","","",
	/*Z0-Z7*/	"","","","","","","","",
	/*AA0-AA7*/	"","","","","","","","",
	/*AB0-AB7*/	"","","","","","","","",
	/*AC0-AC7*/	"","","","","","","","";
};

&emmc_controller {
	status = "okay";
};
@@ -72,6 +112,88 @@
	status = "okay";
};

&fsim0 {
	status = "okay";

	#address-cells = <2>;
	#size-cells = <0>;

	cfam@0,0 {
		reg = <0 0>;
		#address-cells = <1>;
		#size-cells = <1>;
		chip-id = <0>;

		scom@1000 {
			compatible = "ibm,fsi2pib";
			reg = <0x1000 0x400>;
		};

		sbefifo@2400 {
			compatible = "ibm,p9-sbefifo";
			reg = <0x2400 0x400>;
			#address-cells = <1>;
			#size-cells = <0>;

			fsi_occ0: occ {
				compatible = "ibm,p9-occ";
			};
		};

		fsi_hub0: hub@3400 {
			compatible = "fsi-master-hub";
			reg = <0x3400 0x400>;
			#address-cells = <2>;
			#size-cells = <0>;

			no-scan-on-init;
		};
	};
};

&fsi_hub0 {
	cfam@1,0 {
		reg = <1 0>;
		#address-cells = <1>;
		#size-cells = <1>;
		chip-id = <1>;

		scom@1000 {
			compatible = "ibm,fsi2pib";
			reg = <0x1000 0x400>;
		};

		sbefifo@2400 {
			compatible = "ibm,p9-sbefifo";
			reg = <0x2400 0x400>;
			#address-cells = <1>;
			#size-cells = <0>;

			fsi_occ1: occ {
				compatible = "ibm,p9-occ";
			};
		};

		fsi_hub1: hub@3400 {
			compatible = "fsi-master-hub";
			reg = <0x3400 0x400>;
			#address-cells = <2>;
			#size-cells = <0>;

			no-scan-on-init;
		};
	};
};

/* Legacy OCC numbering (to get rid of when userspace is fixed) */
&fsi_occ0 {
	reg = <1>;
};

&fsi_occ1 {
	reg = <2>;
};

&ibt {
	status = "okay";
};
@@ -269,66 +391,82 @@

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

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

		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>;
		};

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

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

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

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

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

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

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

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

@@ -386,21 +524,6 @@
&i2c9 {
	status = "okay";

	ir35221@42 {
		compatible = "infineon,ir35221";
		reg = <0x42>;
	};

	ir35221@43 {
		compatible = "infineon,ir35221";
		reg = <0x43>;
	};

	ir35221@44 {
		compatible = "infineon,ir35221";
		reg = <0x44>;
	};

	tmp423a@4c {
		compatible = "ti,tmp423";
		reg = <0x4c>;
@@ -411,21 +534,6 @@
		reg = <0x4d>;
	};

	ir35221@72 {
		compatible = "infineon,ir35221";
		reg = <0x72>;
	};

	ir35221@73 {
		compatible = "infineon,ir35221";
		reg = <0x73>;
	};

	ir35221@74 {
		compatible = "infineon,ir35221";
		reg = <0x74>;
	};

	eeprom@50 {
		compatible = "atmel,24c128";
		reg = <0x50>;
@@ -435,21 +543,6 @@
&i2c10 {
	status = "okay";

	ir35221@42 {
		compatible = "infineon,ir35221";
		reg = <0x42>;
	};

	ir35221@43 {
		compatible = "infineon,ir35221";
		reg = <0x43>;
	};

	ir35221@44 {
		compatible = "infineon,ir35221";
		reg = <0x44>;
	};

	tmp423a@4c {
		compatible = "ti,tmp423";
		reg = <0x4c>;
@@ -460,21 +553,6 @@
		reg = <0x4d>;
	};

	ir35221@72 {
		compatible = "infineon,ir35221";
		reg = <0x72>;
	};

	ir35221@73 {
		compatible = "infineon,ir35221";
		reg = <0x73>;
	};

	ir35221@74 {
		compatible = "infineon,ir35221";
		reg = <0x74>;
	};

	eeprom@50 {
		compatible = "atmel,24c128";
		reg = <0x50>;
@@ -540,6 +618,10 @@
	status = "okay";
};

&vuart2 {
	status = "okay";
};

&lpc_ctrl {
	status = "okay";
	memory-region = <&flash_memory>;
Loading