FreeBSD/sys/dev/vkbd/vkbd.c
/* Clear the internal state of the keyboard */
Clear the internal state of the keyboard
Clear the internal state of the keyboard
static void
vkbd_clear_state_locked(vkbd_state_t *state)
{
	VKBD_LOCK_ASSERT(state, MA_OWNED);
	state->ks_flags &= ~COMPOSE;
	state->ks_polling = 0;
	state->ks_state &= LOCK_MASK;	
	state->ks_accents = 0;
	state->ks_composed_char = 0;
	state->ks_inq.head = state->ks_inq.tail = state->ks_inq.cc = 0;
	selwakeuppri(&state->ks_wsel, PZERO + 1);
	wakeup(&state->ks_inq);
}
static void vkbd_clear_state_locked ( vkbd_state_t * state ) { VKBD_LOCK_ASSERT ( state , MA_OWNED ) ; state -> ks_flags &= ~ COMPOSE ; state -> ks_polling = 0 ; state -> ks_state &= LOCK_MASK ; state -> ks_accents = 0 ; state -> ks_composed_char = 0 ; state -> ks_inq . head = state -> ks_inq . tail = state -> ks_inq . cc = 0 ; selwakeuppri ( & state -> ks_wsel , PZERO + 1 ) ; wakeup ( & state -> ks_inq ) ; }
Clear the internal state of the keyboard
Clear the internal state of the keyboard
/* preserve locking key state */ /*	state->ks_prefix = 0;		XXX */ /* flush ks_inq and wakeup writers/poll()ers */