summaryrefslogtreecommitdiff
path: root/driver/keyboard.c
diff options
context:
space:
mode:
authorMiguel <m.i@gmx.at>2018-09-23 02:05:08 +0200
committerMiguel <m.i@gmx.at>2018-09-23 02:05:08 +0200
commit0738f270da6c075b6c48d1b7aa929299ec178f2e (patch)
treed536602bde81d4eda42102d4034afd535b2e1c55 /driver/keyboard.c
parente73d89fd48a71a1cff764fc07edd46cb951e9418 (diff)
interrupts from e1000 come in at least
Diffstat (limited to 'driver/keyboard.c')
-rw-r--r--driver/keyboard.c14
1 files changed, 10 insertions, 4 deletions
diff --git a/driver/keyboard.c b/driver/keyboard.c
index 2352532..90a18c9 100644
--- a/driver/keyboard.c
+++ b/driver/keyboard.c
@@ -18,11 +18,17 @@ static void put(uint8_t c)
{
uint16_t dat[]={
0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x52,0x5,0x50a,0x00,0x02,0x02,0x08,0x06,0x00,
- 0x01,0x08,0x00,0x06,0x04,0x00,0x01,0x52,0x5,0x50a,0x00,0x02,0x02,0x0a,0x00,0x02};
+ 0x01,0x08,0x00,0x06,0x04,0x00,0x01,0x52,0x5,0x50a,0x00,0x02,0x02,0x0a,0x00,0x02,
+ 0x00,0xff,0xff,0xff,0xff,0xff,0xff,0x52,0x5,0x50a,0x00,0x02,0x02,0x08,0x06,0x00,
+ 0x01,0x08,0x00,0x06,0x04,0x00,0x01,0x52,0x5,0x50a,0x00,0x02,0x02,0x0a,0x00,0x02
+ };
+
+ if(c=='p')e1000_sendPacket(dat,64); // packet
+ if(c=='s')e1000_init(0); // start
+ if(c=='i')e1000_irq(11); // interrupt
+ if(c=='u')e1000_linkup(); // up
+ if(c=='d')e1000_linkdown(); // down
- if(c=='y')e1000_sendPacket(dat,32);
- if(c=='x')e1000_init(0);
- if(c=='i')e1000_irq(11);
syscall_generic(SYSCALL_WRITE,kb_stream, (char *)&c , 1, 0);
}