// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * arch/powerpc/boot/dts/gamecube.dts
 *
 * Nintendo GameCube platform device tree source
 * Copyright (C) 2007-2009 The GameCube Linux Team
 * Copyright (C) 2007,2008,2009 Albert Herranz
 */

/dts-v1/;

/ {
	model = "nintendo,gamecube";
	compatible = "nintendo,gamecube";
	#address-cells = <1>;
	#size-cells = <1>;

	chosen {
		bootargs = "root=/dev/gcnsda2 rootwait udbg-immortal";
	};

	memory {
		device_type = "memory";
		reg = <0x00000000 0x01800000>;
	};

	cpus {
		#address-cells = <1>;
		#size-cells = <0>;

		PowerPC,gekko@0 {
			device_type = "cpu";
			reg = <0>;
			clock-frequency = <486000000>; /* 486MHz */
			bus-frequency = <162000000>; /* 162MHz core-to-bus 3x */
			timebase-frequency = <40500000>; /* 162MHz / 4 */
			i-cache-line-size = <32>;
			d-cache-line-size = <32>;
			i-cache-size = <32768>;
			d-cache-size = <32768>;
		};
	};

	/* devices contained int the flipper chipset */
	flipper {
		#address-cells = <1>;
		#size-cells = <1>;
		compatible = "nintendo,flipper";
		ranges = <0x0c000000 0x0c000000 0x00010000>;
		interrupt-parent = <&PIC>;

		video@c002000 {
			compatible = "nintendo,flipper-vi";
			reg = <0x0c002000 0x100>;
			interrupts = <8>;
		};

		processor-interface@c003000 {
			compatible = "nintendo,flipper-pi";
			reg = <0x0c003000 0x100>;

			PIC: pic {
				#interrupt-cells = <1>;
				compatible = "nintendo,flipper-pic";
				interrupt-controller;
			};
		};

		dsp@c005000 {
			#address-cells = <1>;
			#size-cells = <1>;
			compatible = "nintendo,flipper-dsp";
			reg = <0x0c005000 0x200>;
			interrupts = <6>;

			memory@0 {
				compatible = "nintendo,flipper-aram";
				reg = <0 0x1000000>;	/* 16MB */
			};
		};

		disk@c006000 {
			compatible = "nintendo,flipper-di";
			reg = <0x0c006000 0x40>;
			interrupts = <2>;
		};

		audio@c006c00 {
			compatible = "nintendo,flipper-ai";
			reg = <0x0c006c00 0x20>;
			interrupts = <6>;
		};

		gamepad-controller@c006400 {
			compatible = "nintendo,flipper-si";
			reg = <0x0c006400 0x100>;
			interrupts = <3>;
		};

		/* External Interface bus */
		exi@c006800 {
			compatible = "nintendo,flipper-exi";
			reg = <0x0c006800 0x40>;
			virtual-reg = <0x0c006800>;
			interrupts = <4>;
		};
        };
};

