Ejemplo n.º 1
0
u8int i8042_enable_devices() {	//7
	if ( DEBUG_KBD ) {
		printf ( "enabling devices..." );
	}

	i8042_write_command ( 0xAE );

	i8042_write_command ( 0x20 );
	u8int stat = i8042_read_data();
	stat |= 1 << 0;
	stat |= 1 << 1;
	i8042_write_command ( 0x60 );
	i8042_write_data ( stat );
	return 0;
}
Ejemplo n.º 2
0
u8int i8042_set_controller_config_byte() {	//3
	if ( DEBUG_KBD ) {
		printf ( "setting controller config byte" );
	}

	i8042_write_command ( 0x20 );
	status = i8042_read_data();
	status |= 1 << 0;
	status |= 1 << 1;
	status |= 1 << 6;
	i8042_write_command ( 0x60 );
	i8042_write_data ( status );

	if ( DEBUG_KBD && ! ( status & ( 1 << 5 ) ) ) {
		printf ( "DUAL PS/2 = YES\n" );    //TODO check if this is right
	}

	return 0;
}
Ejemplo n.º 3
0
void i8042_write(int port, uint8_t data)
{
	if (port)
		i8042_write_command(I8042_CMD_WRITE_PORT_2);
	i8042_write_data(data);		
}
Ejemplo n.º 4
0
inline void i8042_write_ram(uint8_t addr, uint8_t data)
{
	i8042_write_command(I8042_CMD_WRITE_RAM(addr));
	i8042_write_data(data);
}