xref: /freebsd/sys/contrib/device-tree/src/powerpc/gamecube.dts (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot// SPDX-License-Identifier: GPL-2.0-or-later
2*c66ec88fSEmmanuel Vadot/*
3*c66ec88fSEmmanuel Vadot * arch/powerpc/boot/dts/gamecube.dts
4*c66ec88fSEmmanuel Vadot *
5*c66ec88fSEmmanuel Vadot * Nintendo GameCube platform device tree source
6*c66ec88fSEmmanuel Vadot * Copyright (C) 2007-2009 The GameCube Linux Team
7*c66ec88fSEmmanuel Vadot * Copyright (C) 2007,2008,2009 Albert Herranz
8*c66ec88fSEmmanuel Vadot */
9*c66ec88fSEmmanuel Vadot
10*c66ec88fSEmmanuel Vadot/dts-v1/;
11*c66ec88fSEmmanuel Vadot
12*c66ec88fSEmmanuel Vadot/ {
13*c66ec88fSEmmanuel Vadot	model = "nintendo,gamecube";
14*c66ec88fSEmmanuel Vadot	compatible = "nintendo,gamecube";
15*c66ec88fSEmmanuel Vadot	#address-cells = <1>;
16*c66ec88fSEmmanuel Vadot	#size-cells = <1>;
17*c66ec88fSEmmanuel Vadot
18*c66ec88fSEmmanuel Vadot	chosen {
19*c66ec88fSEmmanuel Vadot		bootargs = "root=/dev/gcnsda2 rootwait udbg-immortal";
20*c66ec88fSEmmanuel Vadot	};
21*c66ec88fSEmmanuel Vadot
22*c66ec88fSEmmanuel Vadot	memory {
23*c66ec88fSEmmanuel Vadot		device_type = "memory";
24*c66ec88fSEmmanuel Vadot		reg = <0x00000000 0x01800000>;
25*c66ec88fSEmmanuel Vadot	};
26*c66ec88fSEmmanuel Vadot
27*c66ec88fSEmmanuel Vadot	cpus {
28*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
29*c66ec88fSEmmanuel Vadot		#size-cells = <0>;
30*c66ec88fSEmmanuel Vadot
31*c66ec88fSEmmanuel Vadot		PowerPC,gekko@0 {
32*c66ec88fSEmmanuel Vadot			device_type = "cpu";
33*c66ec88fSEmmanuel Vadot			reg = <0>;
34*c66ec88fSEmmanuel Vadot			clock-frequency = <486000000>; /* 486MHz */
35*c66ec88fSEmmanuel Vadot			bus-frequency = <162000000>; /* 162MHz core-to-bus 3x */
36*c66ec88fSEmmanuel Vadot			timebase-frequency = <40500000>; /* 162MHz / 4 */
37*c66ec88fSEmmanuel Vadot			i-cache-line-size = <32>;
38*c66ec88fSEmmanuel Vadot			d-cache-line-size = <32>;
39*c66ec88fSEmmanuel Vadot			i-cache-size = <32768>;
40*c66ec88fSEmmanuel Vadot			d-cache-size = <32768>;
41*c66ec88fSEmmanuel Vadot		};
42*c66ec88fSEmmanuel Vadot	};
43*c66ec88fSEmmanuel Vadot
44*c66ec88fSEmmanuel Vadot	/* devices contained int the flipper chipset */
45*c66ec88fSEmmanuel Vadot	flipper {
46*c66ec88fSEmmanuel Vadot		#address-cells = <1>;
47*c66ec88fSEmmanuel Vadot		#size-cells = <1>;
48*c66ec88fSEmmanuel Vadot		compatible = "nintendo,flipper";
49*c66ec88fSEmmanuel Vadot		ranges = <0x0c000000 0x0c000000 0x00010000>;
50*c66ec88fSEmmanuel Vadot		interrupt-parent = <&PIC>;
51*c66ec88fSEmmanuel Vadot
52*c66ec88fSEmmanuel Vadot		video@c002000 {
53*c66ec88fSEmmanuel Vadot			compatible = "nintendo,flipper-vi";
54*c66ec88fSEmmanuel Vadot			reg = <0x0c002000 0x100>;
55*c66ec88fSEmmanuel Vadot			interrupts = <8>;
56*c66ec88fSEmmanuel Vadot		};
57*c66ec88fSEmmanuel Vadot
58*c66ec88fSEmmanuel Vadot		processor-interface@c003000 {
59*c66ec88fSEmmanuel Vadot			compatible = "nintendo,flipper-pi";
60*c66ec88fSEmmanuel Vadot			reg = <0x0c003000 0x100>;
61*c66ec88fSEmmanuel Vadot
62*c66ec88fSEmmanuel Vadot			PIC: pic {
63*c66ec88fSEmmanuel Vadot				#interrupt-cells = <1>;
64*c66ec88fSEmmanuel Vadot				compatible = "nintendo,flipper-pic";
65*c66ec88fSEmmanuel Vadot				interrupt-controller;
66*c66ec88fSEmmanuel Vadot			};
67*c66ec88fSEmmanuel Vadot		};
68*c66ec88fSEmmanuel Vadot
69*c66ec88fSEmmanuel Vadot		dsp@c005000 {
70*c66ec88fSEmmanuel Vadot			#address-cells = <1>;
71*c66ec88fSEmmanuel Vadot			#size-cells = <1>;
72*c66ec88fSEmmanuel Vadot			compatible = "nintendo,flipper-dsp";
73*c66ec88fSEmmanuel Vadot			reg = <0x0c005000 0x200>;
74*c66ec88fSEmmanuel Vadot			interrupts = <6>;
75*c66ec88fSEmmanuel Vadot
76*c66ec88fSEmmanuel Vadot			memory@0 {
77*c66ec88fSEmmanuel Vadot				compatible = "nintendo,flipper-aram";
78*c66ec88fSEmmanuel Vadot				reg = <0 0x1000000>;	/* 16MB */
79*c66ec88fSEmmanuel Vadot			};
80*c66ec88fSEmmanuel Vadot		};
81*c66ec88fSEmmanuel Vadot
82*c66ec88fSEmmanuel Vadot		disk@c006000 {
83*c66ec88fSEmmanuel Vadot			compatible = "nintendo,flipper-di";
84*c66ec88fSEmmanuel Vadot			reg = <0x0c006000 0x40>;
85*c66ec88fSEmmanuel Vadot			interrupts = <2>;
86*c66ec88fSEmmanuel Vadot		};
87*c66ec88fSEmmanuel Vadot
88*c66ec88fSEmmanuel Vadot		audio@c006c00 {
89*c66ec88fSEmmanuel Vadot			compatible = "nintendo,flipper-ai";
90*c66ec88fSEmmanuel Vadot			reg = <0x0c006c00 0x20>;
91*c66ec88fSEmmanuel Vadot			interrupts = <6>;
92*c66ec88fSEmmanuel Vadot		};
93*c66ec88fSEmmanuel Vadot
94*c66ec88fSEmmanuel Vadot		gamepad-controller@c006400 {
95*c66ec88fSEmmanuel Vadot			compatible = "nintendo,flipper-si";
96*c66ec88fSEmmanuel Vadot			reg = <0x0c006400 0x100>;
97*c66ec88fSEmmanuel Vadot			interrupts = <3>;
98*c66ec88fSEmmanuel Vadot		};
99*c66ec88fSEmmanuel Vadot
100*c66ec88fSEmmanuel Vadot		/* External Interface bus */
101*c66ec88fSEmmanuel Vadot		exi@c006800 {
102*c66ec88fSEmmanuel Vadot			compatible = "nintendo,flipper-exi";
103*c66ec88fSEmmanuel Vadot			reg = <0x0c006800 0x40>;
104*c66ec88fSEmmanuel Vadot			virtual-reg = <0x0c006800>;
105*c66ec88fSEmmanuel Vadot			interrupts = <4>;
106*c66ec88fSEmmanuel Vadot		};
107*c66ec88fSEmmanuel Vadot        };
108*c66ec88fSEmmanuel Vadot};
109*c66ec88fSEmmanuel Vadot
110