/branches/dynload/uspace/srv/kbd/Makefile |
---|
29,8 → 29,6 |
## Setup toolchain |
# |
-include ../../../Makefile.config |
LIBC_PREFIX = ../../lib/libc |
SOFTINT_PREFIX = ../../lib/softint |
RTLD_PREFIX = ../../lib/rtld |
49,50 → 47,50 |
generic/key_buffer.c |
ARCH_SOURCES = \ |
arch/$(ARCH)/src/kbd.c |
arch/$(UARCH)/src/kbd.c |
ifeq ($(ARCH), ia32) |
ifeq ($(UARCH), ia32) |
ARCH_SOURCES += \ |
arch/$(ARCH)/src/mouse.c \ |
arch/$(ARCH)/src/scanc.c |
arch/$(UARCH)/src/mouse.c \ |
arch/$(UARCH)/src/scanc.c |
GENARCH_SOURCES = \ |
genarch/src/kbd.c |
CFLAGS += -DMOUSE_ENABLED |
endif |
ifeq ($(ARCH), ia64) |
ifeq ($(UARCH), ia64) |
ARCH_SOURCES += \ |
arch/$(ARCH)/src/mouse.c \ |
arch/$(ARCH)/src/scanc.c \ |
arch/$(ARCH)/src/lkbd.c |
arch/$(UARCH)/src/mouse.c \ |
arch/$(UARCH)/src/scanc.c \ |
arch/$(UARCH)/src/lkbd.c |
GENARCH_SOURCES = \ |
genarch/src/kbd.c |
CFLAGS += -DMOUSE_ENABLED |
endif |
ifeq ($(ARCH), amd64) |
ifeq ($(UARCH), amd64) |
ARCH_SOURCES += \ |
arch/$(ARCH)/src/mouse.c \ |
arch/$(ARCH)/src/scanc.c |
arch/$(UARCH)/src/mouse.c \ |
arch/$(UARCH)/src/scanc.c |
GENARCH_SOURCES = \ |
genarch/src/kbd.c |
CFLAGS += -DMOUSE_ENABLED |
endif |
ifeq ($(ARCH), sparc64) |
ifeq ($(UARCH), sparc64) |
ARCH_SOURCES += \ |
arch/$(ARCH)/src/scanc.c \ |
arch/$(ARCH)/src/sgcn.c |
arch/$(UARCH)/src/scanc.c \ |
arch/$(UARCH)/src/sgcn.c |
GENARCH_SOURCES = \ |
genarch/src/kbd.c \ |
genarch/src/nofb.c |
endif |
ifeq ($(ARCH), arm32) |
ifeq ($(UARCH), arm32) |
ARCH_SOURCES += \ |
arch/$(ARCH)/src/kbd_gxemul.c |
arch/$(UARCH)/src/kbd_gxemul.c |
endif |
ifeq ($(ARCH), mips32) |
ifeq ($(UARCH), mips32) |
GENARCH_SOURCES += \ |
genarch/src/nofb.c |
endif |
ifeq ($(ARCH), mips32eb) |
ifeq ($(UARCH), mips32eb) |
GENARCH_SOURCES += \ |
genarch/src/nofb.c |
endif |
110,7 → 108,7 |
-include Makefile.depend |
links: |
ln -sfn ../arch/$(ARCH)/include include/arch |
ln -sfn ../arch/$(UARCH)/include include/arch |
ln -sfn ../genarch/include include/genarch |
clean: |
/branches/dynload/uspace/srv/kbd/arch/ppc64/src/kbd.c |
---|
File deleted |
/branches/dynload/uspace/srv/kbd/arch/ppc64/include/kbd.h |
---|
File deleted |
/branches/dynload/uspace/srv/kbd/arch/ia64/src/kbd.c |
---|
114,18 → 114,6 |
irq_cmd_t ski_cmds[1] = { |
{ CMD_IA64_GETCHAR, 0, 0, 2 } |
}; |
irq_code_t ski_kbd = { |
1, |
ski_cmds |
}; |
irq_cmd_t ns16550_cmds[1] = { |
{ CMD_PORT_READ_1, 0, 0, 2 }, |
}; |
144,15 → 132,15 |
{ |
if (sysinfo_value("kbd")) { |
kbd_type=sysinfo_value("kbd.type"); |
if(kbd_type==KBD_SKI) ipc_register_irq(sysinfo_value("kbd.inr"), sysinfo_value("kbd.devno"), 0, &ski_kbd); |
if(kbd_type==KBD_LEGACY) return lkbd_arch_init(); |
if(kbd_type==KBD_NS16550) { |
ns16550_kbd.cmds[0].addr= (void *) (sysinfo_value("kbd.port")+RBR_REG); |
if (kbd_type == KBD_LEGACY) |
return lkbd_arch_init(); |
if (kbd_type == KBD_NS16550) { |
ns16550_kbd.cmds[0].addr = (void *) (sysinfo_value("kbd.port") + RBR_REG); |
ipc_register_irq(sysinfo_value("kbd.inr"), sysinfo_value("kbd.devno"), 0, &ns16550_kbd); |
iospace_enable(task_get_id(),ns16550_port=sysinfo_value("kbd.port"),8); |
} |
iospace_enable(task_get_id(), ns16550_port = sysinfo_value("kbd.port"), 8); |
} |
return 0; |
} |
} |
return 1; |
} |
170,9 → 158,9 |
{ |
static unsigned long buf = 0; |
static int count = 0, esc_count=0; |
int scan_code = IPC_GET_ARG2(*call); |
if (scan_code == 0x1b) { |
esc_count++; |
if (esc_count == 3) { |
181,10 → 169,12 |
} else { |
esc_count = 0; |
} |
if(scan_code==0x0d) return 1; //Delete CR |
if(scan_code==0x7f) scan_code='\b'; //Convert backspace |
if (scan_code == 0x0d) |
return 1; /* Delete CR */ |
if (scan_code == 0x7f) |
scan_code='\b'; /* Convert backspace */ |
if(scan_code == 0x7e) { |
switch (buf) { |
case NSKEY_F6: |
308,12 → 298,6 |
return 1; |
} |
int kbd_ski_process(keybuffer_t *keybuffer, ipc_call_t *call) |
{ |
static unsigned long long buf = 0; |
393,11 → 377,12 |
int kbd_arch_process(keybuffer_t *keybuffer, ipc_call_t *call) |
{ |
printf("KBD Key pressed: %x(%c)\n",IPC_GET_ARG2(*call),IPC_GET_ARG2(*call)); |
if(kbd_type==KBD_SKI) return kbd_ski_process(keybuffer,call); |
if(kbd_type==KBD_NS16550) return kbd_ns16550_process(keybuffer,call); |
if(kbd_type==KBD_LEGACY) return lkbd_arch_process(keybuffer,call); |
if (kbd_type == KBD_SKI) |
return kbd_ski_process(keybuffer, call); |
if (kbd_type == KBD_NS16550) |
return kbd_ns16550_process(keybuffer,call); |
if (kbd_type == KBD_LEGACY) |
return lkbd_arch_process(keybuffer,call); |
} |
404,4 → 389,4 |
/** |
* @} |
*/ |
*/ |
/branches/dynload/uspace/srv/kbd/arch/ppc32/src/kbd.c |
---|
40,16 → 40,7 |
#include <kbd.h> |
#include <keys.h> |
irq_cmd_t cuda_cmds[1] = { |
{ CMD_PPC32_GETCHAR, 0, 0, 2 } |
}; |
irq_code_t cuda_kbd = { |
1, |
cuda_cmds |
}; |
#define SPECIAL 255 |
#define FUNCTION_KEYS 0x100 |
186,7 → 177,7 |
if (!sysinfo_value("kbd")) |
return 0; |
return ipc_register_irq(sysinfo_value("kbd.inr"), sysinfo_value("kbd.devno"), 0, &cuda_kbd); |
return ipc_register_irq(sysinfo_value("kbd.inr"), sysinfo_value("kbd.devno"), 0, 0); |
} |