Superiotool/add chip support

From coreboot
Revision as of 12:05, 18 January 2013 by GNUtoo (talk | contribs) (→‎Howto)
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

The wiki is being retired!

Documentation is now handled by the same processes we use for code: Add something to the Documentation/ directory in the coreboot repo, and it will be rendered to https://doc.coreboot.org/. Contributions welcome!

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.