IOC3

From LinuxMIPS
Revision as of 10:51, 18 October 2010 by Onion (Talk | contribs)

Jump to: navigation, search

Overview

IOC3 chip

The IOC3 is a custom chip developed by SGI. It's being used in Origin 200, Origin 2000, Onyx 2, Octane systems, on a 32-bit PCI card which support [Dual Address Cycle] and on the MENET XIO card.

Functionality

The IOC3 implements the following functionality:

  • 10/100Mbit/s ethernet interface. An external PHY is required and connected via a standard MII interface.
  • a 486-style secondary bus. It's usually used to connect a SuperIO chip which contains a 16550 dual port UART.
  • a controller for Dallas Semiconductor (now Maxim) 1-wire bus. In IP27 systems and on the PCI card a NIC containing the MAC address is connected to it. IP30 has several 1-wire devices connected.
  • A PS/2-style mouse and keyboard interface.

Limitations

The implementation of the IOC3 PCI configuration space violates the PCI specification severly by only partially decoding the configuration address space. Only Type 0 config cycles are supported. Only 32-bit accesses to the PCI interface are permitted. These limitations mean the IOC3 code needs special support in the PCI hostbridge driver. The card derives internal clocks from the 33MHz PCI clock so it will only work in 33MHz PCI busses.

MENET

The MENET card is an XIO card used in Origin and Octane systems. Interfacing to the host system via XIO it contains 4 IOC3 chips; 3 of them have serial interfaces connected accessible via 6 mini-DIN serial connectors.

PCI card

IOC3 PCI card photo

The IOC3 PCI card is a short PCI card. Featuring PCI Dual Address Cycle support it can access the entire 64-bit address space. The IOC3 chip derives internal clocks from the PCI bus clock. It therefor will only work properly in 33MHz PCI busses. The PCI card also has mini-DIN connectors for PS/2 keyboard and mouse. Card is also known as CAD Duo, SGI part number 030-1155-002.