I spent a bit of time on adding support for the vt1211 superio found on the epia-m board. It does not add io dumping, yet.
Compared to the rest of the superiotool, this support is highly different; i see quite a lot of possibility for superiotool to be improved (more on that later in this mail).
This here is the output of superiotool on my vt1211:
VT1211 LDN 0: "Floppy Disk Controller" 0x30: 0x01 (0x00) "Activate" 0x60: 0xFC (0xFC) "I/O Base Address" 0x70: 0x06 (0x06) "IRQ Select" 0x74: 0x02 (0x01) "DRQ Select" 0xF0: 0x00 (0x00) "Configuration" 0xF1: 0x00 (0x00) "Drive Select"
Notice how it lists one register per line, with: index: value (default). The string is just there because it was easy to add while adding the other information.
Why do i prefer 1 register per line as opposed to whole blobs for other chipsets: * we're human and this is easier to read. * diff is also surprisingly human.
I would like to alter the printing of other superios to the same, one per line, output. I have been told on irc that this might break some peoples scripts (if there are any), but for humans, this is the sanest thing to do.
Further changes that might be good: * decouple probing from dumping. * add single value dumping and then also writing (requires tracking of RO/WO). * there are only a few probe routines out there, create a general table so that we can tie io_port and the return value of the probe routine to an id and thus reduce probing to once per probe routine. * etc, etc...
Tons of room for improvement and also discussion :)
But first, let's scrutinize this way of outputting and if acceptable, also alter the output of other superio dumps. I will be adding IT8103F support today, which will also further my view of what needs to be done here.
Luc Verhaegen.