162306a36Sopenharmony_ci
262306a36Sopenharmony_ciNintendo GameCube device tree
362306a36Sopenharmony_ci=============================
462306a36Sopenharmony_ci
562306a36Sopenharmony_ci1) The "flipper" node
662306a36Sopenharmony_ci
762306a36Sopenharmony_ci  This node represents the multi-function "Flipper" chip, which packages
862306a36Sopenharmony_ci  many of the devices found in the Nintendo GameCube.
962306a36Sopenharmony_ci
1062306a36Sopenharmony_ci  Required properties:
1162306a36Sopenharmony_ci
1262306a36Sopenharmony_ci   - compatible : Should be "nintendo,flipper"
1362306a36Sopenharmony_ci
1462306a36Sopenharmony_ci1.a) The Video Interface (VI) node
1562306a36Sopenharmony_ci
1662306a36Sopenharmony_ci  Represents the interface between the graphics processor and a external
1762306a36Sopenharmony_ci  video encoder.
1862306a36Sopenharmony_ci
1962306a36Sopenharmony_ci  Required properties:
2062306a36Sopenharmony_ci
2162306a36Sopenharmony_ci   - compatible : should be "nintendo,flipper-vi"
2262306a36Sopenharmony_ci   - reg : should contain the VI registers location and length
2362306a36Sopenharmony_ci   - interrupts : should contain the VI interrupt
2462306a36Sopenharmony_ci
2562306a36Sopenharmony_ci1.b) The Processor Interface (PI) node
2662306a36Sopenharmony_ci
2762306a36Sopenharmony_ci  Represents the data and control interface between the main processor
2862306a36Sopenharmony_ci  and graphics and audio processor.
2962306a36Sopenharmony_ci
3062306a36Sopenharmony_ci  Required properties:
3162306a36Sopenharmony_ci
3262306a36Sopenharmony_ci  - compatible : should be "nintendo,flipper-pi"
3362306a36Sopenharmony_ci  - reg : should contain the PI registers location and length
3462306a36Sopenharmony_ci
3562306a36Sopenharmony_ci1.b.i) The "Flipper" interrupt controller node
3662306a36Sopenharmony_ci
3762306a36Sopenharmony_ci  Represents the interrupt controller within the "Flipper" chip.
3862306a36Sopenharmony_ci  The node for the "Flipper" interrupt controller must be placed under
3962306a36Sopenharmony_ci  the PI node.
4062306a36Sopenharmony_ci
4162306a36Sopenharmony_ci  Required properties:
4262306a36Sopenharmony_ci
4362306a36Sopenharmony_ci  - compatible : should be "nintendo,flipper-pic"
4462306a36Sopenharmony_ci
4562306a36Sopenharmony_ci1.c) The Digital Signal Processor (DSP) node
4662306a36Sopenharmony_ci
4762306a36Sopenharmony_ci  Represents the digital signal processor interface, designed to offload
4862306a36Sopenharmony_ci  audio related tasks.
4962306a36Sopenharmony_ci
5062306a36Sopenharmony_ci  Required properties:
5162306a36Sopenharmony_ci
5262306a36Sopenharmony_ci   - compatible : should be "nintendo,flipper-dsp"
5362306a36Sopenharmony_ci   - reg : should contain the DSP registers location and length
5462306a36Sopenharmony_ci   - interrupts : should contain the DSP interrupt
5562306a36Sopenharmony_ci
5662306a36Sopenharmony_ci1.c.i) The Auxiliary RAM (ARAM) node
5762306a36Sopenharmony_ci
5862306a36Sopenharmony_ci  Represents the non cpu-addressable ram designed mainly to store audio
5962306a36Sopenharmony_ci  related information.
6062306a36Sopenharmony_ci  The ARAM node must be placed under the DSP node.
6162306a36Sopenharmony_ci
6262306a36Sopenharmony_ci  Required properties:
6362306a36Sopenharmony_ci
6462306a36Sopenharmony_ci   - compatible : should be "nintendo,flipper-aram"
6562306a36Sopenharmony_ci   - reg : should contain the ARAM start (zero-based) and length
6662306a36Sopenharmony_ci
6762306a36Sopenharmony_ci1.d) The Disk Interface (DI) node
6862306a36Sopenharmony_ci
6962306a36Sopenharmony_ci  Represents the interface used to communicate with mass storage devices.
7062306a36Sopenharmony_ci
7162306a36Sopenharmony_ci  Required properties:
7262306a36Sopenharmony_ci
7362306a36Sopenharmony_ci   - compatible : should be "nintendo,flipper-di"
7462306a36Sopenharmony_ci   - reg : should contain the DI registers location and length
7562306a36Sopenharmony_ci   - interrupts : should contain the DI interrupt
7662306a36Sopenharmony_ci
7762306a36Sopenharmony_ci1.e) The Audio Interface (AI) node
7862306a36Sopenharmony_ci
7962306a36Sopenharmony_ci  Represents the interface to the external 16-bit stereo digital-to-analog
8062306a36Sopenharmony_ci  converter.
8162306a36Sopenharmony_ci
8262306a36Sopenharmony_ci  Required properties:
8362306a36Sopenharmony_ci
8462306a36Sopenharmony_ci   - compatible : should be "nintendo,flipper-ai"
8562306a36Sopenharmony_ci   - reg : should contain the AI registers location and length
8662306a36Sopenharmony_ci   - interrupts : should contain the AI interrupt
8762306a36Sopenharmony_ci
8862306a36Sopenharmony_ci1.f) The Serial Interface (SI) node
8962306a36Sopenharmony_ci
9062306a36Sopenharmony_ci  Represents the interface to the four single bit serial interfaces.
9162306a36Sopenharmony_ci  The SI is a proprietary serial interface used normally to control gamepads.
9262306a36Sopenharmony_ci  It's NOT a RS232-type interface.
9362306a36Sopenharmony_ci
9462306a36Sopenharmony_ci  Required properties:
9562306a36Sopenharmony_ci
9662306a36Sopenharmony_ci   - compatible : should be "nintendo,flipper-si"
9762306a36Sopenharmony_ci   - reg : should contain the SI registers location and length
9862306a36Sopenharmony_ci   - interrupts : should contain the SI interrupt
9962306a36Sopenharmony_ci
10062306a36Sopenharmony_ci1.g) The External Interface (EXI) node
10162306a36Sopenharmony_ci
10262306a36Sopenharmony_ci  Represents the multi-channel SPI-like interface.
10362306a36Sopenharmony_ci
10462306a36Sopenharmony_ci  Required properties:
10562306a36Sopenharmony_ci
10662306a36Sopenharmony_ci   - compatible : should be "nintendo,flipper-exi"
10762306a36Sopenharmony_ci   - reg : should contain the EXI registers location and length
10862306a36Sopenharmony_ci   - interrupts : should contain the EXI interrupt
10962306a36Sopenharmony_ci
110