12874c5fdSThomas Gleixner// SPDX-License-Identifier: GPL-2.0-or-later
286ad53f8SAlbert Herranz/*
386ad53f8SAlbert Herranz * arch/powerpc/boot/dts/gamecube.dts
486ad53f8SAlbert Herranz *
586ad53f8SAlbert Herranz * Nintendo GameCube platform device tree source
686ad53f8SAlbert Herranz * Copyright (C) 2007-2009 The GameCube Linux Team
786ad53f8SAlbert Herranz * Copyright (C) 2007,2008,2009 Albert Herranz
886ad53f8SAlbert Herranz */
986ad53f8SAlbert Herranz
1086ad53f8SAlbert Herranz/dts-v1/;
1186ad53f8SAlbert Herranz
1286ad53f8SAlbert Herranz/ {
1386ad53f8SAlbert Herranz	model = "nintendo,gamecube";
1486ad53f8SAlbert Herranz	compatible = "nintendo,gamecube";
1586ad53f8SAlbert Herranz	#address-cells = <1>;
1686ad53f8SAlbert Herranz	#size-cells = <1>;
1786ad53f8SAlbert Herranz
1886ad53f8SAlbert Herranz	chosen {
1986ad53f8SAlbert Herranz		bootargs = "root=/dev/gcnsda2 rootwait udbg-immortal";
2086ad53f8SAlbert Herranz	};
2186ad53f8SAlbert Herranz
2286ad53f8SAlbert Herranz	memory {
2386ad53f8SAlbert Herranz		device_type = "memory";
2486ad53f8SAlbert Herranz		reg = <0x00000000 0x01800000>;
2586ad53f8SAlbert Herranz	};
2686ad53f8SAlbert Herranz
2786ad53f8SAlbert Herranz	cpus {
2886ad53f8SAlbert Herranz		#address-cells = <1>;
2986ad53f8SAlbert Herranz		#size-cells = <0>;
3086ad53f8SAlbert Herranz
3186ad53f8SAlbert Herranz		PowerPC,gekko@0 {
3286ad53f8SAlbert Herranz			device_type = "cpu";
3386ad53f8SAlbert Herranz			reg = <0>;
3486ad53f8SAlbert Herranz			clock-frequency = <486000000>; /* 486MHz */
3586ad53f8SAlbert Herranz			bus-frequency = <162000000>; /* 162MHz core-to-bus 3x */
3686ad53f8SAlbert Herranz			timebase-frequency = <40500000>; /* 162MHz / 4 */
3786ad53f8SAlbert Herranz			i-cache-line-size = <32>;
3886ad53f8SAlbert Herranz			d-cache-line-size = <32>;
3986ad53f8SAlbert Herranz			i-cache-size = <32768>;
4086ad53f8SAlbert Herranz			d-cache-size = <32768>;
4186ad53f8SAlbert Herranz		};
4286ad53f8SAlbert Herranz	};
4386ad53f8SAlbert Herranz
4486ad53f8SAlbert Herranz	/* devices contained int the flipper chipset */
4586ad53f8SAlbert Herranz	flipper {
4686ad53f8SAlbert Herranz		#address-cells = <1>;
4786ad53f8SAlbert Herranz		#size-cells = <1>;
4886ad53f8SAlbert Herranz		compatible = "nintendo,flipper";
4986ad53f8SAlbert Herranz		ranges = <0x0c000000 0x0c000000 0x00010000>;
5086ad53f8SAlbert Herranz		interrupt-parent = <&PIC>;
5186ad53f8SAlbert Herranz
52600ecc19SMathieu Malaterre		video@c002000 {
5386ad53f8SAlbert Herranz			compatible = "nintendo,flipper-vi";
5486ad53f8SAlbert Herranz			reg = <0x0c002000 0x100>;
5586ad53f8SAlbert Herranz			interrupts = <8>;
5686ad53f8SAlbert Herranz		};
5786ad53f8SAlbert Herranz
58600ecc19SMathieu Malaterre		processor-interface@c003000 {
5986ad53f8SAlbert Herranz			compatible = "nintendo,flipper-pi";
6086ad53f8SAlbert Herranz			reg = <0x0c003000 0x100>;
6186ad53f8SAlbert Herranz
6286ad53f8SAlbert Herranz			PIC: pic {
6386ad53f8SAlbert Herranz				#interrupt-cells = <1>;
6486ad53f8SAlbert Herranz				compatible = "nintendo,flipper-pic";
6586ad53f8SAlbert Herranz				interrupt-controller;
6686ad53f8SAlbert Herranz			};
6786ad53f8SAlbert Herranz		};
6886ad53f8SAlbert Herranz
69600ecc19SMathieu Malaterre		dsp@c005000 {
7086ad53f8SAlbert Herranz			#address-cells = <1>;
7186ad53f8SAlbert Herranz			#size-cells = <1>;
7286ad53f8SAlbert Herranz			compatible = "nintendo,flipper-dsp";
7386ad53f8SAlbert Herranz			reg = <0x0c005000 0x200>;
7486ad53f8SAlbert Herranz			interrupts = <6>;
7586ad53f8SAlbert Herranz
7686ad53f8SAlbert Herranz			memory@0 {
7786ad53f8SAlbert Herranz				compatible = "nintendo,flipper-aram";
7886ad53f8SAlbert Herranz				reg = <0 0x1000000>;	/* 16MB */
7986ad53f8SAlbert Herranz			};
8086ad53f8SAlbert Herranz		};
8186ad53f8SAlbert Herranz
82600ecc19SMathieu Malaterre		disk@c006000 {
8386ad53f8SAlbert Herranz			compatible = "nintendo,flipper-di";
8486ad53f8SAlbert Herranz			reg = <0x0c006000 0x40>;
8586ad53f8SAlbert Herranz			interrupts = <2>;
8686ad53f8SAlbert Herranz		};
8786ad53f8SAlbert Herranz
88600ecc19SMathieu Malaterre		audio@c006c00 {
8986ad53f8SAlbert Herranz			compatible = "nintendo,flipper-ai";
9086ad53f8SAlbert Herranz			reg = <0x0c006c00 0x20>;
9186ad53f8SAlbert Herranz			interrupts = <6>;
9286ad53f8SAlbert Herranz		};
9386ad53f8SAlbert Herranz
94600ecc19SMathieu Malaterre		gamepad-controller@c006400 {
9586ad53f8SAlbert Herranz			compatible = "nintendo,flipper-si";
9686ad53f8SAlbert Herranz			reg = <0x0c006400 0x100>;
9786ad53f8SAlbert Herranz			interrupts = <3>;
9886ad53f8SAlbert Herranz		};
9986ad53f8SAlbert Herranz
10086ad53f8SAlbert Herranz		/* External Interface bus */
101600ecc19SMathieu Malaterre		exi@c006800 {
10286ad53f8SAlbert Herranz			compatible = "nintendo,flipper-exi";
10386ad53f8SAlbert Herranz			reg = <0x0c006800 0x40>;
10486ad53f8SAlbert Herranz			virtual-reg = <0x0c006800>;
10586ad53f8SAlbert Herranz			interrupts = <4>;
10686ad53f8SAlbert Herranz		};
10786ad53f8SAlbert Herranz        };
10886ad53f8SAlbert Herranz};
10986ad53f8SAlbert Herranz
110