The O2 Workstation is based around the CRIME, MACE, VICE, and GBE ASICs. CRIME ASIC is the main system ASIC which interfaces the MIPS cpu, memory system and the I/O system in the MACE ASIC. CRIME ASIC also contains the 3D gfx rendering engine which renders to main system memory -- part of which is used as the frame buffer which is DMA'ed to a video connector using the GBE ASIC. A MACE chip is used to provide legacy device support (serial, parallel, video, RTC...). VICE ASIC is used to process video streams and images stored in memory.
Currently only R5000 based IP32 (O2) systems are well supported in Linux. Framebuffer works, but to get a usable X you need a small patch. Experimental patches for audio exists and did work for a while, until the kernel was made 64-bit only for IP32. SCSI works ok, and booting from a harddrive works using arcboot or ARCLoad.
Some experimental work has been done on the VICE engine: Experimental patches for using VICE.
The combination of R1x000 speculative execution feature and lack of hardware cache coherency in IP32, causes problems that need special workarounds in kernel (and also possibly GCC). The kernel portion has not been achieved yet. Discussion of the R10k issue (TODO: write up in more detail here)