diff options
| author | Kazutaka YOKOTA <yokota@FreeBSD.org> | 1999-01-19 11:31:22 +0000 |
|---|---|---|
| committer | Kazutaka YOKOTA <yokota@FreeBSD.org> | 1999-01-19 11:31:22 +0000 |
| commit | f359876ff18247bbcb529c7e385c10e552315ad0 (patch) | |
| tree | 3bff0dfc583d72a522685bbd8031f149935ace00 /sys/dev/kbd | |
| parent | 8bbbb12f07b5a179a1a8c94e58ca2798fdcf3e43 (diff) | |
Notes
Diffstat (limited to 'sys/dev/kbd')
| -rw-r--r-- | sys/dev/kbd/atkbd.c | 19 | ||||
| -rw-r--r-- | sys/dev/kbd/kbdreg.h | 4 |
2 files changed, 17 insertions, 6 deletions
diff --git a/sys/dev/kbd/atkbd.c b/sys/dev/kbd/atkbd.c index 59f265c970bf..653e2955ffee 100644 --- a/sys/dev/kbd/atkbd.c +++ b/sys/dev/kbd/atkbd.c @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: atkbd.c,v 1.1 1999/01/09 02:44:49 yokota Exp $ + * $Id: atkbd.c,v 1.2 1999/01/13 11:19:19 yokota Exp $ */ #include "atkbd.h" @@ -47,6 +47,8 @@ #ifndef __i386__ +#include <isa/isareg.h> + #define ATKBD_SOFTC(unit) \ ((atkbd_softc_t *)devclass_get_softc(atkbd_devclass, unit)) @@ -192,7 +194,7 @@ atkbd_timeout(void *arg) */ (*kbdsw[kbd->kb_index]->lock)(kbd, FALSE); if ((*kbdsw[kbd->kb_index]->check_char)(kbd)) - (*kbdsw[kbd->kb_index]->intr)(kbd, NULL); + (*kbdsw[kbd->kb_index]->intr)(kbd); } splx(s); timeout(atkbd_timeout, arg, hz/10); @@ -331,7 +333,7 @@ static int get_kbd_id(KBDC kbdc); /* local variables */ /* the initial key map, accent map and fkey strings */ -#include <i386/isa/kbdtables.h> +#include <dev/kbd/kbdtables.h> /* structures for the default keyboard */ static keyboard_t default_kbd; @@ -524,7 +526,7 @@ atkbd_term(keyboard_t *kbd) /* keyboard interrupt routine */ static int -atkbd_intr(keyboard_t *kbd, void *arg) +atkbd_intr(keyboard_t *kbd) { atkbd_state_t *state; int c; @@ -1204,6 +1206,15 @@ init_keyboard(KBDC kbdc, int *type, int flags) } } +#ifdef __alpha__ + if (send_kbd_command_and_data( + kbdc, KBDC_SET_SCANCODE_SET, 2) != KBD_ACK) { + printf("atkbd: can't set translation.\n"); + + } + c |= KBD_TRANSLATION; +#endif + /* enable the keyboard port and intr. */ if (!set_controller_command_byte(kbdc, KBD_KBD_CONTROL_BITS | KBD_TRANSLATION | KBD_OVERRIDE_KBD_LOCK, diff --git a/sys/dev/kbd/kbdreg.h b/sys/dev/kbd/kbdreg.h index f1a6c8bfd9a5..d5920196507d 100644 --- a/sys/dev/kbd/kbdreg.h +++ b/sys/dev/kbd/kbdreg.h @@ -23,7 +23,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: $ + * $Id: kbdreg.h,v 1.1 1999/01/09 02:44:50 yokota Exp $ */ #ifndef _DEV_KBD_KBDREG_H_ @@ -109,7 +109,7 @@ typedef int kbd_probe_t(int unit, keyboard_t **kbdp, void *arg, int flags); typedef int kbd_init_t(keyboard_t *kbd); typedef int kbd_term_t(keyboard_t *kbd); -typedef int kbd_intr_t(keyboard_t *kbd, void *arg); +typedef int kbd_intr_t(keyboard_t *kbd); typedef int kbd_test_if_t(keyboard_t *kbd); typedef int kbd_enable_t(keyboard_t *kbd); typedef int kbd_disable_t(keyboard_t *kbd); |
