GEODEIDE(4)

πŸ“¦ version 11.0, in nixpkgs unstable

πŸ’… GEODEIDE πŸ’…

ok so welcome to the group chat, bestie β€” this is the manual page for geodeide, aka the AMD Geode IDE disk controllers driver. Manual name is GEODEIDE(4) and yes it's a section 4 kernel interfaces situation, we love that for us πŸŽ€


✨ SYNOPSIS ✨

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

like, that's the whole vibe. it attaches at pci? with a dev ? and a function ? and the flags default to 0x0000. periodt πŸ’…


🌸 DESCRIPTION 🌸

okay so real talk: the geodeide driver is the one holding it down for the AMD Geode CS5530A and SC1100 IDE controllers πŸ’–. it's not doing the disk stuff itself, it's providing the interface with the hardware for the ata(4) driver β€” so think of it as the middle bestie making the introductions 🫢.

and there's this one flag, right? the 0x0002 flag forces the geodeide driver to disable DMA on chipsets for which DMA would normally be enabled 😭. so it's kind of a debug-girlie move β€” you'd use it as a debugging aid, or to work around problems where the IDE controller is wired up to the system incorrectly. no cap, if the wiring is cursed, this flag is your girlie πŸ”₯.


πŸ¦‹ SEE ALSO πŸ¦‹

go follow these, they're iconic πŸ‘‘:


πŸ’€ BUGS πŸ’€

buckle up bestie, this is the long part and it's lowkey rough πŸ™ˆ

  • the SC1100 controller requires 4-byte aligned data transfers and literally cannot handle transfers of exactly 64 kilobytes. that's the rule, we don't make it, we just live with it 😭
  • 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. it said it could, it could NOT, and now we're all paying for it πŸ’€
  • 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. yes, crash. not glitch, not slow down β€” crash 😭. and 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. so like... good luck out there πŸ“
  • good news kinda: the geodeide driver will reject attempts to DMA to buffers not aligned to the required boundary 🫢. and then the wd(4) disk driver will back off to PIO mode to accomplish these transfer requests, at reduced system performance. so it's not a crash, it's just... the slow lane. we're surviving, not thriving πŸ’…

and that's the whole page bestie, go forth and align your transfers ✨

mwah πŸ’œ β€” this cutie came from Debian, dated July 5, 2005, and that's the sign-off, love u, bye πŸŽ€

πŸ“¦ where this page comes from