Superiotool/add chip support
From coreboot
Introduction
This page explain how to add support for your superio chip in Superiotool.
Howto
The superio I have(SMSC LPC47N217) is already supported but has no extended dump, we'll show how to add that.
Here's the main structure(from superiotool.h) for adding extended registers:
struct superio_registers {
int32_t superio_id; /* Signed, as we need EOT. */
const char *name; /* Super I/O name */
struct {
int8_t ldn;
const char *name; /* LDN name */
int16_t idx[IDXSIZE];
int16_t def[IDXSIZE];
} ldn[LDNSIZE];
};
- ldn means logical device name. Floppy, Serial or parallel port are logical devices.
- In the datasheet there is a table with the logical devices, their index register, and the base I/O
range