Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changeset 75a2dc08 in mainline


Ignore:
Timestamp:
2009-08-13T17:08:39Z (12 years ago)
Author:
Lenka Trochtova <trochtova.lenka@…>
Branches:
lfn, master
Children:
fd210de
Parents:
24f27bb (diff), b39fd4c (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.
Message:

dd branch synchronized with head

Location:
uspace
Files:
1 added
21 edited
2 moved

Legend:

Unmodified
Added
Removed
  • uspace/srv/console/Makefile

    r24f27bb r75a2dc08  
    3535include $(LIBC_PREFIX)/Makefile.toolchain
    3636
    37 CFLAGS += -I. -I../kbd/include -I../fb
     37CFLAGS += -I.
    3838
    3939LIBS = $(LIBC_PREFIX)/libc.a
     
    4747        console.c \
    4848        screenbuffer.c \
    49         ../kbd/generic/keybuffer.c \
     49        keybuffer.c \
    5050        gcons.c
    5151
  • uspace/srv/console/console.c

    r24f27bb r75a2dc08  
    3434
    3535#include <libc.h>
    36 #include <fb.h>
    3736#include <ipc/ipc.h>
    38 #include <kbd.h>
     37#include <ipc/kbd.h>
    3938#include <io/keycode.h>
    4039#include <ipc/fb.h>
  • uspace/srv/kbd/Makefile

    r24f27bb r75a2dc08  
    4646        generic/kbd.c \
    4747        genarch/gsp.c \
    48         genarch/stroke.c \
    49         generic/keybuffer.c
     48        genarch/stroke.c
    5049
    5150ARCH_SOURCES =
  • uspace/srv/kbd/ctl/gxe_fb.c

    r24f27bb r75a2dc08  
    225225}
    226226
     227void kbd_ctl_set_ind(unsigned mods)
     228{
     229        (void) mods;
     230}
     231
    227232/**
    228233 * @}
  • uspace/srv/kbd/ctl/pc.c

    r24f27bb r75a2dc08  
    4040#include <io/keycode.h>
    4141#include <kbd_ctl.h>
     42#include <kbd_port.h>
    4243#include <gsp.h>
    4344
     
    4546        ds_s,
    4647        ds_e
     48};
     49
     50enum special_code {
     51        SC_ACK = 0xfa,
     52        SC_NAK = 0xfe
     53};
     54
     55enum lock_ind_bits {
     56        LI_SCROLL       = 0x01,
     57        LI_NUM          = 0x02,
     58        LI_CAPS         = 0x04
     59};
     60
     61enum kbd_command {
     62        KBD_CMD_SET_LEDS = 0xed
    4763};
    4864
     
    194210        size_t map_length;
    195211
     212        /*
     213         * ACK/NAK are returned as response to us sending a command.
     214         * We are not interested in them.
     215         */
     216        if (scancode == SC_ACK || scancode == SC_NAK)
     217                return;
     218
    196219        if (scancode == 0xe0) {
    197220                ds = ds_e;
     
    230253}
    231254
     255void kbd_ctl_set_ind(unsigned mods)
     256{
     257        uint8_t b;
     258
     259        b = 0;
     260        if ((mods & KM_CAPS_LOCK) != 0)
     261                b = b | LI_CAPS;
     262        if ((mods & KM_NUM_LOCK) != 0)
     263                b = b | LI_NUM;
     264        if ((mods & KM_SCROLL_LOCK) != 0)
     265                b = b | LI_SCROLL;
     266
     267        kbd_port_write(KBD_CMD_SET_LEDS);
     268        kbd_port_write(b);
     269}
     270
    232271/**
    233272 * @}
  • uspace/srv/kbd/ctl/pl050.c

    r24f27bb r75a2dc08  
    258258}
    259259
     260void kbd_ctl_set_ind(unsigned mods)
     261{
     262        (void) mods;
     263}
     264
    260265/**
    261266 * @}
  • uspace/srv/kbd/ctl/stty.c

    r24f27bb r75a2dc08  
    224224}
    225225
     226void kbd_ctl_set_ind(unsigned mods)
     227{
     228        (void) mods;
     229}
     230
    226231/**
    227232 * @}
  • uspace/srv/kbd/ctl/sun.c

    r24f27bb r75a2dc08  
    7272        if (key != 0)
    7373                kbd_push_ev(type, key);
     74}
     75
     76void kbd_ctl_set_ind(unsigned mods)
     77{
     78        (void) mods;
    7479}
    7580
  • uspace/srv/kbd/generic/kbd.c

    r24f27bb r75a2dc08  
    3838#include <ipc/ipc.h>
    3939#include <ipc/services.h>
     40#include <ipc/kbd.h>
    4041#include <sysinfo.h>
    4142#include <stdio.h>
     
    5152
    5253#include <kbd.h>
    53 #include <keybuffer.h>
    5454#include <kbd_port.h>
    5555#include <kbd_ctl.h>
     
    6060int cons_connected = 0;
    6161int phone2cons = -1;
    62 keybuffer_t keybuffer;
    6362
    6463/** Currently active modifiers. */
     
    125124                        mods = mods ^ (mod_mask & ~lock_keys);
    126125                        lock_keys = lock_keys | mod_mask;
     126
     127                        /* Update keyboard lock indicator lights. */
     128                        kbd_ctl_set_ind(mods);
    127129                } else {
    128130                        lock_keys = lock_keys & ~mod_mask;
     
    239241        layout[active_layout]->reset();
    240242       
    241         /* Initialize key buffer */
    242         keybuffer_init(&keybuffer);
    243        
    244243        async_set_client_connection(console_connection);
    245244
  • uspace/srv/kbd/include/kbd.h

    r24f27bb r75a2dc08  
    3838#define KBD_KBD_H_
    3939
    40 #include <keybuffer.h>
    41 #include <ipc/ipc.h>
    42 
    43 #define KBD_EVENT      1024
    44 #define KBD_MS_LEFT    1025
    45 #define KBD_MS_RIGHT   1026
    46 #define KBD_MS_MIDDLE  1027
    47 #define KBD_MS_MOVE    1028
    48 
    49 typedef enum {
    50         KBD_YIELD = IPC_FIRST_USER_METHOD,
    51         KBD_RECLAIM
    52 } kbd_request_t;
    53 
    5440extern int cir_service;
    5541extern int cir_phone;
  • uspace/srv/kbd/include/kbd_ctl.h

    r24f27bb r75a2dc08  
    4040extern void kbd_ctl_parse_scancode(int);
    4141extern int kbd_ctl_init(void);
    42 
     42extern void kbd_ctl_set_ind(unsigned);
    4343
    4444#endif
  • uspace/srv/kbd/include/kbd_port.h

    r24f27bb r75a2dc08  
    3838#define KBD_PORT_H_
    3939
     40#include <sys/types.h>
     41
    4042extern int kbd_port_init(void);
    4143extern void kbd_port_yield(void);
    4244extern void kbd_port_reclaim(void);
     45extern void kbd_port_write(uint8_t);
    4346
    4447#endif
  • uspace/srv/kbd/port/dummy.c

    r24f27bb r75a2dc08  
    5151}
    5252
     53void kbd_port_write(uint8_t data)
     54{
     55        (void) data;
     56}
     57
    5358/** @}
    5459*/
  • uspace/srv/kbd/port/gxemul.c

    r24f27bb r75a2dc08  
    7878}
    7979
     80void kbd_port_write(uint8_t data)
     81{
     82        (void) data;
     83}
     84
    8085/** Process data sent when a key is pressed.
    8186 * 
  • uspace/srv/kbd/port/i8042.c

    r24f27bb r75a2dc08  
    160160}
    161161
     162void kbd_port_write(uint8_t data)
     163{
     164        pio_write_8(&i8042->data, data);
     165        wait_ready();
     166}
     167
    162168static void i8042_irq_handler(ipc_callid_t iid, ipc_call_t *call)
    163169{
  • uspace/srv/kbd/port/msim.c

    r24f27bb r75a2dc08  
    7878}
    7979
     80void kbd_port_write(uint8_t data)
     81{
     82        (void) data;
     83}
     84
    8085static void msim_irq_handler(ipc_callid_t iid, ipc_call_t *call)
    8186{
  • uspace/srv/kbd/port/pl050.c

    r24f27bb r75a2dc08  
    102102}
    103103
     104void kbd_port_write(uint8_t data)
     105{
     106        (void) data;
     107}
     108
    104109static void pl050_irq_handler(ipc_callid_t iid, ipc_call_t *call)
    105110{
  • uspace/srv/kbd/port/sgcn.c

    r24f27bb r75a2dc08  
    133133}
    134134
     135void kbd_port_write(uint8_t data)
     136{
     137        (void) data;
     138}
     139
    135140/**
    136141 * Handler of the "key pressed" event. Reads codes of all the pressed keys from
  • uspace/srv/kbd/port/ski.c

    r24f27bb r75a2dc08  
    7878}
    7979
     80void kbd_port_write(uint8_t data)
     81{
     82        (void) data;
     83}
     84
    8085/** Thread to poll Ski for keypresses. */
    8186static void *ski_thread_impl(void *arg)
  • uspace/srv/kbd/port/sun.c

    r24f27bb r75a2dc08  
    7171}
    7272
     73void kbd_port_write(uint8_t data)
     74{
     75        (void) data;
     76}
     77
    7378/** @}
    7479*/
  • uspace/srv/pci/serial.c

    r24f27bb r75a2dc08  
    120120        pio_write_8(port + 3, 0x07);    // 8 bits, no parity, two stop bits
    121121        pio_write_8(port + 2, 0xC7);    // Enable FIFO, clear them, with 14-byte threshold
    122         pio_write_8(port + 4, 0x0B);    // IRQs enabled, RTS/DSR set
     122        pio_write_8(port + 4, 0x0B);    // RTS/DSR set (Request to Send and Data Terminal Ready lines enabled), Aux Output2 set
    123123}
    124124
Note: See TracChangeset for help on using the changeset viewer.