summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKazutaka YOKOTA <yokota@FreeBSD.org>2001-09-23 08:42:06 +0000
committerKazutaka YOKOTA <yokota@FreeBSD.org>2001-09-23 08:42:06 +0000
commit275658afcc2bbbcd3b4fe29a1768350606584f8f (patch)
tree94f5542a18dfe503cd56fc3fbd8473d83dcdee7d
parent5d78522dd4edc9ac0f695a316abc6c83f47143cd (diff)
Notes
-rw-r--r--sys/dev/atkbdc/atkbd_atkbdc.c11
-rw-r--r--sys/dev/atkbdc/atkbd_isa.c11
-rw-r--r--sys/isa/atkbd_isa.c11
3 files changed, 30 insertions, 3 deletions
diff --git a/sys/dev/atkbdc/atkbd_atkbdc.c b/sys/dev/atkbdc/atkbd_atkbdc.c
index 5300d2f9f962..0e505dad7721 100644
--- a/sys/dev/atkbdc/atkbd_atkbdc.c
+++ b/sys/dev/atkbdc/atkbd_atkbdc.c
@@ -148,12 +148,21 @@ atkbdattach(device_t dev)
static int
atkbdresume(device_t dev)
{
+ atkbd_softc_t *sc;
keyboard_t *kbd;
+ int args[2];
+ sc = device_get_softc(dev);
kbd = kbd_get_keyboard(kbd_find_keyboard(ATKBD_DRIVER_NAME,
device_get_unit(dev)));
- if (kbd)
+ if (kbd) {
+ kbd->kb_flags &= ~KB_INITIALIZED;
+ args[0] = device_get_unit(device_get_parent(dev));
+ args[1] = rman_get_start(sc->intr);
+ (*kbdsw[kbd->kb_index]->init)(device_get_unit(dev), &kbd,
+ args, device_get_flags(dev));
(*kbdsw[kbd->kb_index]->clear_state)(kbd);
+ }
return 0;
}
diff --git a/sys/dev/atkbdc/atkbd_isa.c b/sys/dev/atkbdc/atkbd_isa.c
index 5300d2f9f962..0e505dad7721 100644
--- a/sys/dev/atkbdc/atkbd_isa.c
+++ b/sys/dev/atkbdc/atkbd_isa.c
@@ -148,12 +148,21 @@ atkbdattach(device_t dev)
static int
atkbdresume(device_t dev)
{
+ atkbd_softc_t *sc;
keyboard_t *kbd;
+ int args[2];
+ sc = device_get_softc(dev);
kbd = kbd_get_keyboard(kbd_find_keyboard(ATKBD_DRIVER_NAME,
device_get_unit(dev)));
- if (kbd)
+ if (kbd) {
+ kbd->kb_flags &= ~KB_INITIALIZED;
+ args[0] = device_get_unit(device_get_parent(dev));
+ args[1] = rman_get_start(sc->intr);
+ (*kbdsw[kbd->kb_index]->init)(device_get_unit(dev), &kbd,
+ args, device_get_flags(dev));
(*kbdsw[kbd->kb_index]->clear_state)(kbd);
+ }
return 0;
}
diff --git a/sys/isa/atkbd_isa.c b/sys/isa/atkbd_isa.c
index 5300d2f9f962..0e505dad7721 100644
--- a/sys/isa/atkbd_isa.c
+++ b/sys/isa/atkbd_isa.c
@@ -148,12 +148,21 @@ atkbdattach(device_t dev)
static int
atkbdresume(device_t dev)
{
+ atkbd_softc_t *sc;
keyboard_t *kbd;
+ int args[2];
+ sc = device_get_softc(dev);
kbd = kbd_get_keyboard(kbd_find_keyboard(ATKBD_DRIVER_NAME,
device_get_unit(dev)));
- if (kbd)
+ if (kbd) {
+ kbd->kb_flags &= ~KB_INITIALIZED;
+ args[0] = device_get_unit(device_get_parent(dev));
+ args[1] = rman_get_start(sc->intr);
+ (*kbdsw[kbd->kb_index]->init)(device_get_unit(dev), &kbd,
+ args, device_get_flags(dev));
(*kbdsw[kbd->kb_index]->clear_state)(kbd);
+ }
return 0;
}