Changeset d900699 in mainline for uspace/srv/hid/input/port/ns16550.c
- Timestamp:
- 2011-06-17T16:48:53Z (14 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- f3a605be
- Parents:
- df8110d3 (diff), 98caf49 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - File:
-
- 1 moved
Legend:
- Unmodified
- Added
- Removed
-
uspace/srv/hid/input/port/ns16550.c
rdf8110d3 rd900699 1 1 /* 2 2 * Copyright (c) 2006 Josef Cejka 3 * Copyright (c) 2011 Jiri Svoboda 3 4 * All rights reserved. 4 5 * … … 39 40 #include <async_obsolete.h> 40 41 #include <sysinfo.h> 42 #include <input.h> 41 43 #include <kbd.h> 42 44 #include <kbd_port.h> 43 #include <sun.h>44 45 #include <ddi.h> 45 46 #include <errno.h> 47 48 static int ns16550_port_init(kbd_dev_t *); 49 static void ns16550_port_yield(void); 50 static void ns16550_port_reclaim(void); 51 static void ns16550_port_write(uint8_t data); 52 53 kbd_port_ops_t ns16550_port = { 54 .init = ns16550_port_init, 55 .yield = ns16550_port_yield, 56 .reclaim = ns16550_port_reclaim, 57 .write = ns16550_port_write 58 }; 59 60 static kbd_dev_t *kbd_dev; 46 61 47 62 /* NS16550 registers */ … … 91 106 92 107 static uintptr_t ns16550_physical; 93 static uintptr_t ns16550_kernel; 108 static uintptr_t ns16550_kernel; 94 109 95 int ns16550_port_init(void) 110 static kbd_dev_t *kbd_dev; 111 112 static int ns16550_port_init(kbd_dev_t *kdev) 96 113 { 97 114 void *vaddr; 98 115 116 kbd_dev = kdev; 117 118 sysarg_t ns16550; 119 if (sysinfo_get_value("kbd.type.ns16550", &ns16550) != EOK) 120 return -1; 121 if (!ns16550) 122 return -1; 123 99 124 if (sysinfo_get_value("kbd.address.physical", &ns16550_physical) != EOK) 100 125 return -1; … … 116 141 } 117 142 143 static void ns16550_port_yield(void) 144 { 145 } 146 147 static void ns16550_port_reclaim(void) 148 { 149 } 150 151 static void ns16550_port_write(uint8_t data) 152 { 153 (void) data; 154 } 155 118 156 static void ns16550_irq_handler(ipc_callid_t iid, ipc_call_t *call) 119 157 { 120 158 int scan_code = IPC_GET_ARG2(*call); 121 kbd_push_scancode( scan_code);159 kbd_push_scancode(kbd_dev, scan_code); 122 160 123 161 if (irc_service)
Note:
See TracChangeset
for help on using the changeset viewer.