GEODEIDE(4)

GEODEIDE(4) | Kernel Interfaces Manual | GEODEIDE(4)

# NAME

geodeide — AMD Geode IDE disk controllers driver

# SYNOPSIS

geodeide* at pci? dev ? function ? flags 0x0000

# DESCRIPTION

The geodeide driver supports the AMD Geode CS5530A and SC1100 IDE controllers, and provides the interface with the hardware for the ata(4) driver.

The 0x0002 flag forces the geodeide driver to disable DMA on chipsets for which DMA would normally be enabled. This can be used as a debugging aid, or to work around problems where the IDE controller is wired up to the system incorrectly.

# SEE ALSO

ata(4), atapi(4), intro(4), pci(4), pciide(4), wd(4), wdc(4)

# BUGS

The SC1100 controller requires 4-byte aligned data transfers and cannot handle transfers of exactly 64 kilobytes.

The CS5530 multifunction chip/core's IDE section claims to be capable of UDMA mode 2 (33.3MB/s) but in practice using that mode swamps the controller so badly that geodeide limits the UDMA negotiation to mode 1 (25MB/s) so that the other functions of this chip continue to work.

The IDE DMA engine in the CS5530 can only do transfers on cache-line (16-byte) boundaries. Attempts to perform DMA on any other alignment will crash the system. This problem may also exist in the SC1100 since the CS5530 was its direct predecessor, and it is not clear that National Semiconductor fixed any bugs in it.

The geodeide driver will reject attempts to DMA to buffers not aligned to the required boundary. The wd(4) disk driver will back off to PIO mode to accomplish these transfer requests, at reduced system performance.

July 5, 2005 | NetBSD 7.0