Classes | Defines | Functions

base/host/hostkeyboard.cc File Reference

#include "nul/motherboard.h"
#include "host/keyboard.h"
#include "host/simplehwioin.h"
#include "host/simplehwioout.h"

Classes

class  HostKeyboard
 A PS/2 host keyboard and mouse driver. More...

Defines

#define LOG   if (_verbose) Logging::printf
 HostKeyboard driver.

Functions

 PARAM (hostkeyb,{MessageHostOp msg1(MessageHostOp::OP_ALLOC_IOIO_REGION,(argv[1]<< 8)|0);MessageHostOp msg2(MessageHostOp::OP_ALLOC_IOIO_REGION,((argv[1]+4)<< 8)|0);if(!mb.bus_hostop.send(msg1)||!mb.bus_hostop.send(msg2)) Logging::panic("%s failed to allocate ports %lx, %lx\n", __PRETTY_FUNCTION__, argv[1], argv[1]+4);HostKeyboard *dev=new HostKeyboard(mb.bus_hwioin, mb.bus_hwioout, mb.bus_input, mb.clock(), argv[0], argv[1], argv[2], argv[3], argv[4],~argv[5]?argv[5]:0);mb.bus_hostirq.add(dev, HostKeyboard::receive_static< MessageIrq >);mb.bus_legacy.add(dev, HostKeyboard::receive_static< MessageLegacy >);MessageHostOp msg3(MessageHostOp::OP_ATTACH_IRQ, argv[2]);MessageHostOp msg4(MessageHostOp::OP_ATTACH_IRQ, argv[3]);if(!(msg3.value==~0U||mb.bus_hostop.send(msg3))||!(msg4.value==~0U||mb.bus_hostop.send(msg4))) Logging::panic("%s failed to attach hostirq %lx, %lx\n", __PRETTY_FUNCTION__, argv[2], argv[3]);},"hostkeyb:hdev,hostiobase,kbirq,auxirq,scset=2,verbose=1 - provide an input backend from the host keyboard (hdev) and host mouse (hdev+1).","Example: 'hostkeyb:0x17,0x60,1,12,2'.","A missing auxirq omits the mouse initialisation. ")

Define Documentation

#define LOG   if (_verbose) Logging::printf

HostKeyboard driver.

Copyright (C) 2007-2010, Bernhard Kauer <bk@vmmon.org> Economic rights: Technische Universitaet Dresden (Germany)

This file is part of Vancouver.

Vancouver is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

Vancouver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License version 2 for more details.


Function Documentation

PARAM ( hostkeyb   ) 
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines