AMD CS5536 Geode Companion
Support for the AMD CS5536 Geode companion.
PIO, MWDMA, UDMA
While CS5536 has the rather unusual feature of providing per-device speed settings (i.e., within a single port!), libata's .cable_detect() speed-related signalling currently acts ata_port-global only. See libata / IDE cs5536: 80c cable detect issue (and worse?).
CRC errors may be observed because of UDMA Mode 5 instability when two IDE devices are used (we're likely talking about the issue described by errata 47 "UDMA Mode 5 stability issues" in AMD Geode (tm) CS5536 Device Silicon Revision B1 Specification Update here, right?).
msr - Set this to directly access the ATA registers rather than working through the PCI emulation logic in the firmware (BIOS). This will work around any firmware problems and also improve performance. It may not be compatible with future chip revisions. Default - rely on using the PCI emulation logic. MSR access (and thus parameter) available on 32bit only.
Documentation is available for the CS5536 chip.
Printed chipset labels usually follow the "CS5536AD [PRODUCTION_YEAR_WEEK_TYPE] (m) (c) 2004 [REVISION] TAIWAN" string.
Known values as grabbed from internet images:
- 0545FQA B0
- 0547FQA B0
- 0626CQA B1
- 0630DQA B1
- 0709DQB B1
- 0746FQB B1
- 0847BQB B1
- 0910DQA B1
- 0919DQA B1
- 1006DQA B1
- 1104CQB B1
IOW, known chip revisions are B0 and B1, with B1 introduced somewhere between 2005 and 2006.