Difference between revisions of "Superiotool/add chip support"

From coreboot
Jump to: navigation, search
(Created page with "== 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 ex...")
 
(Howto)
 
(7 intermediate revisions by the same user not shown)
Line 4: Line 4:
 
The superio I have(SMSC LPC47N217) is already supported but has no extended dump, we'll show how to add that.
 
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 for adding extended registers:
+
Here's the main structure(from superiotool.h) for adding extended registers:
 
  struct superio_registers {
 
  struct superio_registers {
 
         int32_t superio_id;            /* Signed, as we need EOT. */
 
         int32_t superio_id;            /* Signed, as we need EOT. */
Line 15: Line 15:
 
         } ldn[LDNSIZE];
 
         } ldn[LDNSIZE];
 
  };
 
  };
 +
 +
* lLDN means logical device name. Floppy, Serial or parallel port are logical devices.
 +
* int8_t ldn is the logical device number
 +
* idx is an array of "Configuration Registers" belonging to the logical device.
 +
* def are the default value of the corresponding idx registers.

Latest revision as of 17:12, 18 January 2013

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];
};
  • lLDN means logical device name. Floppy, Serial or parallel port are logical devices.
  • int8_t ldn is the logical device number
  • idx is an array of "Configuration Registers" belonging to the logical device.
  • def are the default value of the corresponding idx registers.