summaryrefslogtreecommitdiff
path: root/src/superio/winbond/w83627hf
diff options
context:
space:
mode:
authorStefan Reinauer <stepan@openbios.org>2004-03-25 17:35:13 +0000
committerStefan Reinauer <stepan@openbios.org>2004-03-25 17:35:13 +0000
commit30667d75a63495e98fc5e228af510f29a6e575fe (patch)
treee98cfeecde7e10bd158410da68b01ec458f6fdd7 /src/superio/winbond/w83627hf
parent7500a7a4a7fec0d8b4a7cc1a4206e7016b462007 (diff)
downloadcoreboot-30667d75a63495e98fc5e228af510f29a6e575fe.tar.xz
sio-enable, because the init is not called. Without the init_keyboard,
the keyboard will not work under kernel 2.6.3 or later. git-svn-id: svn://svn.coreboot.org/coreboot/trunk@1477 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
Diffstat (limited to 'src/superio/winbond/w83627hf')
-rw-r--r--src/superio/winbond/w83627hf/superio.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/superio/winbond/w83627hf/superio.c b/src/superio/winbond/w83627hf/superio.c
index 49abb2517b..4f5fd989ee 100644
--- a/src/superio/winbond/w83627hf/superio.c
+++ b/src/superio/winbond/w83627hf/superio.c
@@ -72,8 +72,24 @@ static void enumerate(struct chip *chip)
pnp_enumerate(chip, sizeof(pnp_dev_info)/sizeof(pnp_dev_info[0]),
&pnp_ops, pnp_dev_info);
}
+static void sio_enable(struct chip *chip, enum chip_pass pass)
+{
+
+ struct superio_winbond_w83627hf_config *conf = (struct superio_winbond_w83627hf_config *)chip->chip_info;
+
+ switch (pass) {
+ case CONF_PASS_PRE_CONSOLE:
+ init_pc_keyboard(0x60, 0x64, &conf->keyboard);
+ break;
+ default:
+ /* nothing yet */
+ break;
+ }
+}
+
struct chip_control superio_winbond_w83627hf_control = {
+ .enable = sio_enable,
.enumerate = enumerate,
.name = "Winbond w83627hf"
};