Lines Matching refs:kbd
137 struct kbd_dev kbd;
149 sc->kbd.irq_active = true;
150 vm_isa_pulse_irq(sc->ctx, sc->kbd.irq, sc->kbd.irq);
168 if (sc->kbd.bcnt < FIFOSZ) {
169 sc->kbd.buffer[sc->kbd.bwr] = val;
170 sc->kbd.bwr = (sc->kbd.bwr + 1) % FIFOSZ;
171 sc->kbd.bcnt++;
178 return (sc->kbd.bcnt < FIFOSZ);
235 while (sc->kbd.bcnt < FIFOSZ) {
244 ps2mouse_fifocnt(sc->ps2mouse_sc) == 0) && sc->kbd.bcnt > 0)
280 if (sc->kbd.bcnt == 0)
292 if (sc->kbd.bcnt > 0) {
293 *buf = sc->kbd.buffer[sc->kbd.brd];
294 sc->kbd.brd = (sc->kbd.brd + 1) % FIFOSZ;
295 sc->kbd.bcnt--;
296 if (sc->kbd.bcnt == 0) {
304 if (ps2mouse_fifocnt(sc->ps2mouse_sc) == 0 && sc->kbd.bcnt == 0) {
329 /* read device buffer; includes kbd cmd responses */
450 if (sc->kbd.bcnt > 0)
494 } else if (sc->kbd.bcnt > 0 && (sc->ram[0] & KBD_DISABLE_KBD_PORT) == 0) {
549 sc->kbd.irq = KBD_DEV_IRQ;
575 SNAPSHOT_VAR_OR_LEAVE(atkbdc_sc->kbd, meta, ret, done);
577 SNAPSHOT_VAR_OR_LEAVE(atkbdc_sc->kbd.irq_active, meta, ret, done);
578 SNAPSHOT_VAR_OR_LEAVE(atkbdc_sc->kbd.irq, meta, ret, done);
579 SNAPSHOT_BUF_OR_LEAVE(atkbdc_sc->kbd.buffer,
580 sizeof(atkbdc_sc->kbd.buffer), meta, ret, done);
581 SNAPSHOT_VAR_OR_LEAVE(atkbdc_sc->kbd.brd, meta, ret, done);
582 SNAPSHOT_VAR_OR_LEAVE(atkbdc_sc->kbd.bwr, meta, ret, done);
583 SNAPSHOT_VAR_OR_LEAVE(atkbdc_sc->kbd.bcnt, meta, ret, done);