diff options
author | Greg Watson <jarrah@users.sourceforge.net> | 2003-07-20 23:28:01 +0000 |
---|---|---|
committer | Greg Watson <jarrah@users.sourceforge.net> | 2003-07-20 23:28:01 +0000 |
commit | d0580343b6c81697f0050b38ea36ee154d242ac2 (patch) | |
tree | b2c838e68ddf833ddc0b4294a4c98f81daf817e1 /src/include/device | |
parent | 9b4336cf418d22551bea09d93e1cee79281b110e (diff) |
chip stuff
git-svn-id: svn://svn.coreboot.org/coreboot/trunk@988 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/include/device')
-rw-r--r-- | src/include/device/chip.h | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/src/include/device/chip.h b/src/include/device/chip.h index ea57ea4b5c..8de91a1129 100644 --- a/src/include/device/chip.h +++ b/src/include/device/chip.h @@ -22,6 +22,14 @@ struct lpt_ports { irq; // irq }; +enum chip_pass { + CHIP_PRE_CONSOLE, + CHIP_PRE_DEVICE_ENUMERATE, + CHIP_PRE_DEVICE_CONFIGURE, + CHIP_PRE_DEVICE_ENABLE, + CHIP_PRE_DEVICE_INITIALIZE, + CHIP_PRE_BOOT +}; /* linkages from devices of a type (e.g. superio devices) @@ -33,10 +41,7 @@ struct chip; /* there is one of these for each TYPE of chip */ struct chip_control { - void (*alloc)(struct chip *s); - void (*pre_pci_init)(struct chip *s); - void (*init)(struct chip *s); - void (*finishup)(struct chip *s); + void (*enable)(struct chip *, enum chip_pass); char *path; /* the default path. Can be overridden * by commands in config */ @@ -54,3 +59,5 @@ struct chip { void *chip_info; /* the dreaded "void *" */ }; +extern struct chip *root; +extern void chip_configure(struct chip *, enum chip_pass); |