// SPDX-License-Identifier: GPL-2.0+ OR MIT
/*
 * PMGR Power domains for the Apple T8015 "A11" SoC
 *
 * Copyright (c) 2024, Nick Chan <towinchenmi@gmail.com>
 */

&pmgr {
	ps_cpu0: power-controller@80000 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80000 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "cpu0";
		apple,always-on; /* Core device */
	};

	ps_cpu1: power-controller@80008 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80008 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "cpu1";
		apple,always-on; /* Core device */
	};

	ps_cpu2: power-controller@80010 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80010 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "cpu2";
		apple,always-on; /* Core device */
	};

	ps_cpu3: power-controller@80018 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80018 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "cpu3";
		apple,always-on; /* Core device */
	};

	ps_cpu4: power-controller@80020 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80020 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "cpu4";
		apple,always-on; /* Core device */
	};

	ps_cpu5: power-controller@80028 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80028 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "cpu5";
		apple,always-on; /* Core device */
	};

	ps_cpm: power-controller@80040 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80040 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "cpm";
		apple,always-on; /* Core device */
	};

	ps_sio_busif: power-controller@80158 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80158 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "sio_busif";
	};

	ps_sio_p: power-controller@80160 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80160 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "sio_p";
		power-domains = <&ps_sio_busif>;
	};

	ps_sbr: power-controller@80100 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80100 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "sbr";
		apple,always-on; /* Apple fabric, critical block */
	};

	ps_aic: power-controller@80108 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80108 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "aic";
		apple,always-on; /* Core device */
	};

	ps_dwi: power-controller@80110 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80110 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "dwi";
	};

	ps_gpio: power-controller@80118 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80118 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "gpio";
	};

	ps_pms: power-controller@80120 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80120 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "pms";
		apple,always-on; /* Core device */
	};

	ps_pcie_ref: power-controller@80148 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80148 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "pcie_ref";
	};

	ps_mca0: power-controller@80170 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80170 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "mca0";
		power-domains = <&ps_sio_p>;
	};

	ps_mca1: power-controller@80178 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80178 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "mca1";
		power-domains = <&ps_sio_p>;
	};

	ps_mca2: power-controller@80180 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80180 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "mca2";
		power-domains = <&ps_sio_p>;
	};

	ps_mca3: power-controller@80188 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80188 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "mca3";
		power-domains = <&ps_sio_p>;
	};

	ps_mca4: power-controller@80190 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80190 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "mca4";
		power-domains = <&ps_sio_p>;
	};

	ps_pwm0: power-controller@801a0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801a0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "pwm0";
		power-domains = <&ps_sio_p>;
	};

	ps_i2c0: power-controller@801a8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801a8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "i2c0";
		power-domains = <&ps_sio_p>;
	};

	ps_i2c1: power-controller@801b0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801b0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "i2c1";
		power-domains = <&ps_sio_p>;
	};

	ps_i2c2: power-controller@801b8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801b8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "i2c2";
		power-domains = <&ps_sio_p>;
	};

	ps_i2c3: power-controller@801c0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801c0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "i2c3";
		power-domains = <&ps_sio_p>;
	};

	ps_spi0: power-controller@801c8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801c8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "spi0";
		power-domains = <&ps_sio_p>;
	};

	ps_spi1: power-controller@801d0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801d0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "spi1";
		power-domains = <&ps_sio_p>;
	};

	ps_spi2: power-controller@801d8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801d8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "spi2";
		power-domains = <&ps_sio_p>;
	};

	ps_spi3: power-controller@801e0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801e0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "spi3";
		power-domains = <&ps_sio_p>;
	};

	ps_uart0: power-controller@801e8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801e8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart0";
		power-domains = <&ps_sio_p>;
	};

	ps_uart1: power-controller@801f0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801f0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart1";
		power-domains = <&ps_sio_p>;
	};

	ps_uart2: power-controller@801f8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x801f8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart2";
		power-domains = <&ps_sio_p>;
	};

	ps_sio: power-controller@80168 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80168 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "sio";
		power-domains = <&ps_sio_p>;
		apple,always-on; /* Core device */
	};

	ps_hsicphy: power-controller@80128 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80128 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "hsicphy";
		power-domains = <&ps_usb2host1>;
	};

	ps_ispsens0: power-controller@80130 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80130 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "ispsens0";
	};

	ps_ispsens1: power-controller@80138 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80138 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "ispsens1";
	};

	ps_ispsens2: power-controller@80140 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80140 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "ispsens2";
	};

	ps_mca5: power-controller@80198 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80198 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "mca5";
		power-domains = <&ps_sio_p>;
	};

	ps_usb: power-controller@80270 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80270 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "usb";
	};

	ps_usbctlreg: power-controller@80278 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80278 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "usbctlreg";
		power-domains = <&ps_usb>;
	};

	ps_usb2host0: power-controller@80280 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80280 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "usb2host0";
		power-domains = <&ps_usbctlreg>;
	};

	ps_usb2host1: power-controller@80290 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80290 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "usb2host1";
		power-domains = <&ps_usbctlreg>;
	};

	ps_rtmux: power-controller@802b0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802b0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "rtmux";
	};

	ps_media: power-controller@802f0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802f0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "media";
	};

	ps_jpg: power-controller@802f8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802f8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "jpg";
		power-domains = <&ps_media>;
	};

	ps_disp0_fe: power-controller@802b8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802b8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "disp0_fe";
		power-domains = <&ps_rtmux>;
	};

	ps_disp0_be: power-controller@802c0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802c0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "disp0_be";
		power-domains = <&ps_disp0_fe>;
	};

	ps_disp0_gp: power-controller@802c8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802c8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "disp0_gp";
		power-domains = <&ps_disp0_be>;
		status = "disabled";
	};

	ps_uart3: power-controller@80200 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80200 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart3";
		power-domains = <&ps_sio_p>;
	};

	ps_uart4: power-controller@80208 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80208 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart4";
		power-domains = <&ps_sio_p>;
	};

	ps_uart5: power-controller@80210 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80210 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart5";
		power-domains = <&ps_sio_p>;
	};

	ps_uart6: power-controller@80218 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80218 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart6";
		power-domains = <&ps_sio_p>;
	};

	ps_uart7: power-controller@80220 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80220 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart7";
		power-domains = <&ps_sio_p>;
	};

	ps_uart8: power-controller@80228 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80228 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "uart8";
		power-domains = <&ps_sio_p>;
	};

	ps_hfd0: power-controller@80238 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80238 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "hfd0";
		power-domains = <&ps_sio_p>;
	};

	ps_mcc: power-controller@80248 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80248 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "mcc";
		apple,always-on; /* Memory cache controller */
	};

	ps_dcs0: power-controller@80250 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80250 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "dcs0";
		apple,always-on; /* LPDDR4X interface */
	};

	ps_dcs1: power-controller@80258 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80258 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "dcs1";
		apple,always-on; /* LPDDR4X interface */
	};

	ps_dcs2: power-controller@80260 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80260 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "dcs2";
		apple,always-on; /* LPDDR4X interface */
	};

	ps_dcs3: power-controller@80268 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80268 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "dcs3";
		apple,always-on; /* LPDDR4X interface */
	};

	ps_usb2host0_ohci: power-controller@80288 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80288 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "usb2host0_ohci";
		power-domains = <&ps_usb2host0>;
	};

	ps_usb2dev: power-controller@80298 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80298 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "usb2dev";
		power-domains = <&ps_usbctlreg>;
	};

	ps_smx: power-controller@802a0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802a0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "smx";
		apple,always-on; /* Apple fabric, critical block */
	};

	ps_sf: power-controller@802a8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802a8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "sf";
		apple,always-on; /* Apple fabric, critical block */
	};

	ps_mipi_dsi: power-controller@802d8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802d8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "mipi_dsi";
		power-domains = <&ps_rtmux>;
	};

	ps_dp: power-controller@802e0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802e0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "dp";
		power-domains = <&ps_disp0_be>;
	};

	ps_dpa: power-controller@80230 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80230 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "dpa";
	};

	ps_disp0_be_2x: power-controller@802d0 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x802d0 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "disp0_be_2x";
		power-domains = <&ps_disp0_be>;
	};

	ps_isp_sys: power-controller@80350 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80350 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "isp_sys";
		power-domains = <&ps_rtmux>;
	};

	ps_msr: power-controller@80300 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80300 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "msr";
		power-domains = <&ps_media>;
	};

	ps_venc_sys: power-controller@80398 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80398 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "venc_sys";
		power-domains = <&ps_media>;
	};

	ps_pmp: power-controller@80308 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80308 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "pmp";
	};

	ps_pms_sram: power-controller@80310 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80310 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "pms_sram";
	};

	ps_pcie: power-controller@80318 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80318 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "pcie";
	};

	ps_pcie_aux: power-controller@80320 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80320 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "pcie_aux";
	};

	ps_vdec0: power-controller@80388 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80388 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "vdec0";
		power-domains = <&ps_media>;
	};

	ps_gfx: power-controller@80338 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80338 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "gfx";
	};

	ps_ans2: power-controller@80328 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80328 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "ans2";
		apple,always-on;
	};

	ps_pcie_direct: power-controller@80330 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80330 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "pcie_direct";
		apple,always-on;
	};

	ps_avd_sys: power-controller@803a8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x803a8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "avd_sys";
		power-domains = <&ps_media>;
	};

	ps_sep: power-controller@80400 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80400 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "sep";
		apple,always-on; /* Locked on */
	};

	ps_disp0_gp0: power-controller@80830 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80830 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "disp0_gp0";
		power-domains = <&ps_disp0_gp>;
		status = "disabled";
	};

	ps_disp0_gp1: power-controller@80838 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80838 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "disp0_gp1";
		status = "disabled";
	};

	ps_disp0_ppp: power-controller@80840 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80840 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "disp0_ppp";
	};

	ps_disp0_hilo: power-controller@80848 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80848 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "disp0_hilo";
	};

	ps_isp_rsts0: power-controller@84000 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x84000 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "isp_rsts0";
		power-domains = <&ps_isp_sys>;
	};

	ps_isp_rsts1: power-controller@84008 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x84008 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "isp_rsts1";
		power-domains = <&ps_isp_sys>;
	};

	ps_isp_vis: power-controller@84010 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x84010 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "isp_vis";
		power-domains = <&ps_isp_sys>;
	};

	ps_isp_be: power-controller@84018 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x84018 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "isp_be";
		power-domains = <&ps_isp_sys>;
	};

	ps_isp_pearl: power-controller@84020 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x84020 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "isp_pearl";
		power-domains = <&ps_isp_sys>;
	};

	ps_dprx: power-controller@84028 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x84028 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "dprx";
		power-domains = <&ps_isp_sys>;
	};

	ps_isp_cnv: power-controller@84030 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x84030 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "isp_cnv";
		power-domains = <&ps_isp_sys>;
	};

	ps_venc_dma: power-controller@88000 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x88000 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "venc_dma";
	};

	ps_venc_pipe4: power-controller@88010 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x88010 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "venc_pipe4";
	};

	ps_venc_pipe5: power-controller@88018 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x88018 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "venc_pipe5";
	};

	ps_venc_me0: power-controller@88020 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x88020 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "venc_me0";
	};

	ps_venc_me1: power-controller@88028 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x88028 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "venc_me1";
	};
};

&pmgr_mini {
	ps_aop_base: power-controller@80008 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80008 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "aop_base";
		power-domains = <&ps_aop_cpu &ps_aop_filter>;
		apple,always-on; /* Always on processor */
	};

	ps_debug: power-controller@80050 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80050 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "debug";
	};

	ps_aop_cpu: power-controller@80020 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80020 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "aop_cpu";
	};

	ps_aop_filter: power-controller@80000 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80000 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "aop_filter";
	};

	ps_spmi: power-controller@80058 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80058 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "spmi";
		apple,always-on; /* System Power Management Interface */
	};

	ps_smc_i2cm1: power-controller@800a8 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x800a8 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "smc_i2cm1";
	};

	ps_smc_fabric: power-controller@80030 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80030 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "smc_fabric";
	};

	ps_smc_cpu: power-controller@80140 {
		compatible = "apple,t8015-pmgr-pwrstate", "apple,pmgr-pwrstate";
		reg = <0x80140 4>;
		#power-domain-cells = <0>;
		#reset-cells = <0>;
		label = "smc_cpu";
		power-domains = <&ps_smc_fabric &ps_smc_i2cm1>;
	};
};
