GEODEIDE(4) Kernel Interfaces Manual GEODEIDE(4)
geodeide -- AMD Geode IDE disk controllers driver
geodeide* at pci? dev ? function ? flags 0x0000
The geodeide driver supports the AMD Geode CS5530A and SC1100 IDE
controllers, and provides the interface with the hardware for the ata(4)
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.
ata(4), atapi(4), intro(4), pci(4), pciide(4), wd(4), wdc(4)
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.
NetBSD 6.1.5 July 5, 2005 NetBSD 6.1.5