- Timestamp:
- 2006-10-17T19:18:49Z (19 years ago)
- Branches:
- lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
- Children:
- 4874c2d
- Parents:
- e60293d
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
uspace/kbd/arch/sparc64/src/kbd.c
re60293d r8513ad7 47 47 #define KBD_ALL_KEYS_UP 0x7f 48 48 49 /** Top-half pseudocode for z8530. */ 49 50 irq_cmd_t z8530_cmds[] = { 50 { CMD_MEM_READ_1, 0, 0, 1 } 51 { 52 CMD_MEM_READ_1, 53 0, /**< Address. Will be patched in run-time. */ 54 0, /**< Value. Not used. */ 55 1 /**< Arg 1 will contain the result. */ 56 } 51 57 }; 52 58 … … 56 62 }; 57 63 64 /** Top-half pseudocode for ns16550. */ 65 irq_cmd_t ns16550_cmds[] = { 66 { 67 CMD_MEM_READ_1, 68 0, /**< Address. Will be patched in run-time. */ 69 0, /**< Value. Not used. */ 70 1 /**< Arg 1 will contain the result. */ 71 } 72 }; 73 74 irq_code_t ns16550_kbd = { 75 1, 76 ns16550_cmds 77 }; 78 79 #define KBD_Z8530 1 80 #define KBD_NS16550 2 81 58 82 int kbd_arch_init(void) 59 83 { 60 z8530_cmds[0].addr = (void *) sysinfo_value("kbd.address.virtual") + 6; 61 ipc_register_irq(sysinfo_value("kbd.inr"), sysinfo_value("kbd.devno"), 0, &z8530_kbd); 84 int type = sysinfo_value("kbd.type"); 85 switch (type) { 86 case KBD_Z8530: 87 z8530_cmds[0].addr = (void *) sysinfo_value("kbd.address.virtual") + 6; 88 ipc_register_irq(sysinfo_value("kbd.inr"), sysinfo_value("kbd.devno"), 0, &z8530_kbd); 89 break; 90 case KBD_NS16550: 91 ns16550_cmds[0].addr = (void *) sysinfo_value("kbd.address.virtual"); 92 ipc_register_irq(sysinfo_value("kbd.inr"), sysinfo_value("kbd.devno"), 0, &ns16550_kbd); 93 break; 94 default: 95 break; 96 } 62 97 return 0; 63 98 }
Note:
See TracChangeset
for help on using the changeset viewer.