
Nintendo GameCube device tree
=============================

1) The "flipper" node

  This node represents the multi-function "Flipper" chip, which packages
  many of the devices found in the Nintendo GameCube.

  Required properties:

   - compatible : Should be "nintendo,flipper"

1.a) The Video Interface (VI) node

  Represents the interface between the graphics processor and a external
  video encoder.

  Required properties:

   - compatible : should be "nintendo,flipper-vi"
   - reg : should contain the VI registers location and length
   - interrupts : should contain the VI interrupt

1.b) The Processor Interface (PI) node

  Represents the data and control interface between the main processor
  and graphics and audio processor.

  Required properties:

  - compatible : should be "nintendo,flipper-pi"
  - reg : should contain the PI registers location and length

1.b.i) The "Flipper" interrupt controller node

  Represents the interrupt controller within the "Flipper" chip.
  The node for the "Flipper" interrupt controller must be placed under
  the PI node.

  Required properties:

  - compatible : should be "nintendo,flipper-pic"

1.c) The Digital Signal Processor (DSP) node

  Represents the digital signal processor interface, designed to offload
  audio related tasks.

  Required properties:

   - compatible : should be "nintendo,flipper-dsp"
   - reg : should contain the DSP registers location and length
   - interrupts : should contain the DSP interrupt

1.c.i) The Auxiliary RAM (ARAM) node

  Represents the non cpu-addressable ram designed mainly to store audio
  related information.
  The ARAM node must be placed under the DSP node.

  Required properties:

   - compatible : should be "nintendo,flipper-aram"
   - reg : should contain the ARAM start (zero-based) and length

1.d) The Disk Interface (DI) node

  Represents the interface used to communicate with mass storage devices.

  Required properties:

   - compatible : should be "nintendo,flipper-di"
   - reg : should contain the DI registers location and length
   - interrupts : should contain the DI interrupt

1.e) The Audio Interface (AI) node

  Represents the interface to the external 16-bit stereo digital-to-analog
  converter.

  Required properties:

   - compatible : should be "nintendo,flipper-ai"
   - reg : should contain the AI registers location and length
   - interrupts : should contain the AI interrupt

1.f) The Serial Interface (SI) node

  Represents the interface to the four single bit serial interfaces.
  The SI is a proprietary serial interface used normally to control gamepads.
  It's NOT a RS232-type interface.

  Required properties:

   - compatible : should be "nintendo,flipper-si"
   - reg : should contain the SI registers location and length
   - interrupts : should contain the SI interrupt

1.g) The External Interface (EXI) node

  Represents the multi-channel SPI-like interface.

  Required properties:

   - compatible : should be "nintendo,flipper-exi"
   - reg : should contain the EXI registers location and length
   - interrupts : should contain the EXI interrupt

