// SPDX-License-Identifier: GPL-2.0-only
// Copyright (c) 2022, Ampere Computing LLC

/dts-v1/;

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

/ {
	model = "Ampere Mt.Mitchell BMC";
	compatible = "ampere,mtmitchell-bmc", "aspeed,ast2600";

	chosen {
		stdout-path = &uart5;
	};

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

	reserved-memory {
		#address-cells = <1>;
		#size-cells = <1>;
		ranges;

		gfx_memory: framebuffer {
			size = <0x01000000>;
			alignment = <0x01000000>;
			compatible = "shared-dma-pool";
			reusable;
		};

		video_engine_memory: video {
			size = <0x04000000>;
			alignment = <0x01000000>;
			compatible = "shared-dma-pool";
			reusable;
		};

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

	voltage_mon_reg: voltage-mon-regulator {
		compatible = "regulator-fixed";
		regulator-name = "ltc2497_reg";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-always-on;
	};

	gpioI5mux: mux-controller {
		compatible = "gpio-mux";
		#mux-control-cells = <0>;
		mux-gpios = <&gpio0 ASPEED_GPIO(I, 5) GPIO_ACTIVE_HIGH>;
	};

	adc0mux: adc0mux {
		compatible = "io-channel-mux";
		io-channels = <&adc0 0>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc1mux: adc1mux {
		compatible = "io-channel-mux";
		io-channels = <&adc0 1>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc2mux: adc2mux {
		compatible = "io-channel-mux";
		io-channels = <&adc0 2>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc3mux: adc3mux {
		compatible = "io-channel-mux";
		io-channels = <&adc0 3>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc4mux: adc4mux {
		compatible = "io-channel-mux";
		io-channels = <&adc0 4>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc5mux: adc5mux {
		compatible = "io-channel-mux";
		io-channels = <&adc0 5>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc6mux: adc6mux {
		compatible = "io-channel-mux";
		io-channels = <&adc0 6>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc7mux: adc7mux {
		compatible = "io-channel-mux";
		io-channels = <&adc0 7>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc8mux: adc8mux {
		compatible = "io-channel-mux";
		io-channels = <&adc1 0>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc9mux: adc9mux {
		compatible = "io-channel-mux";
		io-channels = <&adc1 1>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc10mux: adc10mux {
		compatible = "io-channel-mux";
		io-channels = <&adc1 2>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc11mux: adc11mux {
		compatible = "io-channel-mux";
		io-channels = <&adc1 3>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc12mux: adc12mux {
		compatible = "io-channel-mux";
		io-channels = <&adc1 4>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc13mux: adc13mux {
		compatible = "io-channel-mux";
		io-channels = <&adc1 5>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc14mux: adc14mux {
		compatible = "io-channel-mux";
		io-channels = <&adc1 6>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	adc15mux: adc15mux {
		compatible = "io-channel-mux";
		io-channels = <&adc1 7>;
		#io-channel-cells = <1>;
		io-channel-names = "parent";
		mux-controls = <&gpioI5mux>;
		channels = "s0", "s1";
	};

	iio-hwmon {
		compatible = "iio-hwmon";
		io-channels = <&adc0mux 0>, <&adc0mux 1>,
			<&adc1mux 0>, <&adc1mux 1>,
			<&adc2mux 0>, <&adc2mux 1>,
			<&adc3mux 0>, <&adc3mux 1>,
			<&adc4mux 0>, <&adc4mux 1>,
			<&adc5mux 0>, <&adc5mux 1>,
			<&adc6mux 0>, <&adc6mux 1>,
			<&adc7mux 0>, <&adc7mux 1>,
			<&adc8mux 0>, <&adc8mux 1>,
			<&adc9mux 0>, <&adc9mux 1>,
			<&adc10mux 0>, <&adc10mux 1>,
			<&adc11mux 0>, <&adc11mux 1>,
			<&adc12mux 0>, <&adc12mux 1>,
			<&adc13mux 0>, <&adc13mux 1>,
			<&adc14mux 0>, <&adc14mux 1>,
			<&adc15mux 0>, <&adc15mux 1>,
			<&adc_i2c 0>, <&adc_i2c 1>,
			<&adc_i2c 2>, <&adc_i2c 3>,
			<&adc_i2c 4>, <&adc_i2c 5>,
			<&adc_i2c 6>, <&adc_i2c 7>,
			<&adc_i2c 8>, <&adc_i2c 9>,
			<&adc_i2c 10>, <&adc_i2c 11>,
			<&adc_i2c 12>, <&adc_i2c 13>,
			<&adc_i2c 14>, <&adc_i2c 15>;
	};
};

&mdio0 {
	status = "okay";

	ethphy0: ethernet-phy@0 {
		compatible = "ethernet-phy-ieee802.3-c22";
		reg = <0>;
	};
};

&mac0 {
	status = "okay";

	phy-mode = "rgmii";
	phy-handle = <&ethphy0>;

	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_rgmii1_default>;
};

&fmc {
	status = "okay";
	flash@0 {
		status = "okay";
		m25p,fast-read;
		label = "bmc";
		spi-max-frequency = <50000000>;
#include "openbmc-flash-layout-64.dtsi"
	};

	flash@1 {
		status = "okay";
		m25p,fast-read;
		label = "alt-bmc";
		spi-max-frequency = <50000000>;
#include "openbmc-flash-layout-64-alt.dtsi"
	};
};

&spi1 {
	status = "okay";
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_spi1_default>;

	flash@0 {
		status = "okay";
		m25p,fast-read;
		label = "pnor";
		spi-max-frequency = <20000000>;
	};
};

&uart1 {
	status = "okay";
};

&uart2 {
	status = "okay";
};

&uart3 {
	status = "okay";
};

&uart4 {
	status = "okay";
};

&i2c0 {
	status = "okay";

	temperature-sensor@2e {
		compatible = "adi,adt7490";
		reg = <0x2e>;
	};
};

&i2c1 {
	status = "okay";
};

&i2c2 {
	status = "okay";

	psu@58 {
		compatible = "pmbus";
		reg = <0x58>;
	};

	psu@59 {
		compatible = "pmbus";
		reg = <0x59>;
	};
};

&i2c3 {
	status = "okay";
};

&i2c4 {
	status = "okay";

	adc_i2c: adc@16 {
		compatible = "lltc,ltc2497";
		reg = <0x16>;
		vref-supply = <&voltage_mon_reg>;
		#io-channel-cells = <1>;
	 };

	eeprom@50 {
		compatible = "atmel,24c64";
		reg = <0x50>;
		pagesize = <32>;
	};

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

		i2c4_bus70_chn0: i2c@0 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x0>;

			outlet_temp1: temperature-sensor@48 {
				compatible = "ti,tmp75";
				reg = <0x48>;
			};
			psu1_inlet_temp2: temperature-sensor@49 {
				compatible = "ti,tmp75";
				reg = <0x49>;
			};
		};

		i2c4_bus70_chn1: i2c@1 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x1>;

			pcie_zone_temp1: temperature-sensor@48 {
				compatible = "ti,tmp75";
				reg = <0x48>;
			};
			psu0_inlet_temp2: temperature-sensor@49 {
				compatible = "ti,tmp75";
				reg = <0x49>;
			};
		};

		i2c4_bus70_chn2: i2c@2 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x2>;

			pcie_zone_temp2: temperature-sensor@48 {
				compatible = "ti,tmp75";
				reg = <0x48>;
			};
			outlet_temp2: temperature-sensor@49 {
				compatible = "ti,tmp75";
				reg = <0x49>;
			};
		};

		i2c4_bus70_chn3: i2c@3 {
			#address-cells = <1>;
			#size-cells = <0>;
			reg = <0x3>;

			mb_inlet_temp1: temperature-sensor@7c {
				compatible = "microchip,emc1413";
				reg = <0x7c>;
			};
			mb_inlet_temp2: temperature-sensor@4c {
				compatible = "microchip,emc1413";
				reg = <0x4c>;
			};
		};
	};
};

&i2c5 {
	status = "okay";

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

&i2c6 {
	status = "okay";
	rtc@51 {
		compatible = "nxp,pcf85063a";
		reg = <0x51>;
	};
};

&i2c7 {
	status = "okay";
};

&i2c9 {
	status = "okay";
};

&i2c11 {
	status = "okay";
	ssif-bmc@10 {
		compatible = "ssif-bmc";
		reg = <0x10>;
	};
};

&i2c14 {
	status = "okay";
	eeprom@50 {
		compatible = "atmel,24c64";
		reg = <0x50>;
		pagesize = <32>;
	};

	bmc_ast2600_cpu: temperature-sensor@35 {
		compatible = "ti,tmp175";
		reg = <0x35>;
	};
};

&adc0 {
	ref_voltage = <2500>;
	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 {
	ref_voltage = <2500>;
	status = "okay";

	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_adc8_default &pinctrl_adc9_default
		&pinctrl_adc10_default &pinctrl_adc11_default
		&pinctrl_adc12_default &pinctrl_adc13_default
		&pinctrl_adc14_default &pinctrl_adc15_default>;
};

&vhub {
	status = "okay";
};

&video {
	status = "okay";
	memory-region = <&video_engine_memory>;
};

&gpio0 {
	gpio-line-names =
	/*A0-A7*/	"","","","","","i2c2-reset-n","i2c6-reset-n","i2c4-reset-n",
	/*B0-B7*/	"","","","","host0-sysreset-n","host0-pmin-n","","",
	/*C0-C7*/	"s0-vrd-fault-n","s1-vrd-fault-n","","",
			"irq-n","","vrd-sel","spd-sel",
	/*D0-D7*/	"presence-ps0","presence-ps1","hsc-12vmain-alt2-n","ext-high-temp-n",
			"","bmc-ncsi-txen","","",
	/*E0-E7*/	"","","clk50m-bmc-ncsi","","","","","",
	/*F0-F7*/	"s0-pcp-oc-warn-n","s1-pcp-oc-warn-n","power-chassis-control",
			"cpu-bios-recover","s0-heartbeat","hs-csout-prochot",
			"s0-vr-hot-n","s1-vr-hot-n",
	/*G0-G7*/	"","","hsc-12vmain-alt1-n","","","","","",
	/*H0-H7*/	"","","wd-disable-n","power-chassis-good","","","","",
	/*I0-I7*/	"","","","","","adc-sw","power-button","rtc-battery-voltage-read-enable",
	/*J0-J7*/	"","","","","","","","",
	/*K0-K7*/	"","","","","","","","",
	/*L0-L7*/	"","","","","","","","",
	/*M0-M7*/	"","s0-ddr-save","soc-spi-nor-access","presence-cpu0",
			"s0-rtc-lock","","","",
	/*N0-N7*/	"hpm-fw-recovery","hpm-stby-rst-n","jtag-sel-s0","led-sw-hb",
			"jtag-dbgr-prsnt-n","s1-heartbeat","","",
	/*O0-O7*/	"","","","","","","","",
	/*P0-P7*/	"ps0-ac-loss-n","ps1-ac-loss-n","","",
			"led-fault","cpld-user-mode","jtag-srst-n","led-bmc-hb",
	/*Q0-Q7*/	"","","","","","","","",
	/*R0-R7*/	"","","","","","","","",
	/*S0-S7*/	"","","identify-button","led-identify",
			"s1-ddr-save","spi-nor-access","sys-pgood","presence-cpu1",
	/*T0-T7*/	"","","","","","","","",
	/*U0-U7*/	"","","","","","","","",
	/*V0-V7*/	"s0-hightemp-n","s0-fault-alert","s0-sys-auth-failure-n",
			"host0-reboot-ack-n","host0-ready","host0-shd-req-n",
			"host0-shd-ack-n","s0-overtemp-n",
	/*W0-W7*/	"ocp-aux-pwren","ocp-main-pwren","ocp-pgood","",
			"bmc-ok","bmc-ready","spi0-program-sel","spi0-backup-sel",
	/*X0-X7*/	"i2c-backup-sel","s1-fault-alert","s1-fw-boot-ok",
			"s1-hightemp-n","s0-spi-auth-fail-n","s1-sys-auth-failure-n",
			"s1-overtemp-n","s1-spi-auth-fail-n",
	/*Y0-Y7*/	"","","","","","","","host0-special-boot",
	/*Z0-Z7*/	"reset-button","ps0-pgood","ps1-pgood","","","","","";
};

&gpio1 {
	gpio-line-names =
	/*18A0-18A7*/	"","","","","","","","",
	/*18B0-18B7*/	"","","","","","","s0-soc-pgood","",
	/*18C0-18C7*/	"uart1-mode0","uart1-mode1","uart2-mode0","uart2-mode1",
			"uart3-mode0","uart3-mode1","uart4-mode0","uart4-mode1",
	/*18D0-18D7*/	"","","","","","","","",
	/*18E0-18E3*/	"","","","";
};
