Changeset b006a2c8 in mainline


Ignore:
Timestamp:
2006-08-04T15:52:02Z (18 years ago)
Author:
Jakub Jermar <jakub@…>
Branches:
lfn, master, serial, ticket/834-toolchain-update, topic/msim-upgrade, topic/simplify-dev-export
Children:
cfffb290
Parents:
b4fa652
Message:

Add scan code map for Sun keyboard.

Location:
kernel
Files:
4 added
6 edited

Legend:

Unmodified
Added
Removed
  • kernel/arch/amd64/Makefile.inc

    rb4fa652 rb006a2c8  
    6262
    6363CONFIG_I8042 = y
     64CONFIG_I8042_PC = y
     65DEFS += -DCONFIG_I8042_PC
    6466
    6567## Accepted configuration directives
  • kernel/arch/ia32/Makefile.inc

    rb4fa652 rb006a2c8  
    8181
    8282CONFIG_I8042 = y
    83 
     83CONFIG_I8042_PC = y
     84DEFS += -DCONFIG_I8042_PC
    8485
    8586## Accepted configuration directives
  • kernel/arch/sparc64/Makefile.inc

    rb4fa652 rb006a2c8  
    6565
    6666CONFIG_I8042 = y
     67CONFIG_I8042_SUN = y
     68DEFS += -DCONFIG_I8042_SUN
    6769
    6870ARCH_SOURCES = \
  • kernel/genarch/Makefile.inc

    rb4fa652 rb006a2c8  
    6969        GENARCH_SOURCES += \
    7070                genarch/src/i8042/i8042.c
     71               
     72        ifeq ($(CONFIG_I8042_PC),y)
     73                GENARCH_SOURCES += \
     74                        genarch/src/i8042/scanc_pc.c
     75        endif
     76        ifeq ($(CONFIG_I8042_SUN),y)
     77                GENARCH_SOURCES += \
     78                        genarch/src/i8042/scanc_sun.c
     79        endif
     80       
    7181endif
  • kernel/genarch/include/i8042/i8042.h

    rb4fa652 rb006a2c8  
    2727 */
    2828
    29  /** @addtogroup genarch       
     29/** @addtogroup genarch
    3030 * @{
    3131 */
     
    3636#define __I8042_H__
    3737
    38 /** Scancodes. */
    39 #define SC_ESC          0x01
    40 #define SC_BACKSPACE    0x0e
    41 #define SC_LSHIFT       0x2a
    42 #define SC_RSHIFT       0x36
    43 #define SC_CAPSLOCK     0x3a
    44 #define SC_SPEC_ESCAPE  0xe0
    45 #define SC_LEFTARR      0x4b
    46 #define SC_RIGHTARR     0x4d
    47 #define SC_UPARR        0x48
    48 #define SC_DOWNARR      0x50
    49 #define SC_DELETE       0x53
    50 #define SC_HOME         0x47
    51 #define SC_END          0x4f
     38#ifdef CONFIG_I8042_PC
     39#include <genarch/i8042/scanc_pc.h>
     40#endif
     41#ifdef CONFIG_I8042_SUN
     42#include <genarch/i8042/scanc_sun.h>
     43#endif
     44
     45#define SPECIAL         '?'
     46
     47extern char sc_primary_map[];
     48extern char sc_secondary_map[];
    5249
    5350extern void i8042_init(void);
     
    5855#endif
    5956
    60  /** @}
     57/** @}
    6158 */
    62 
  • kernel/genarch/src/i8042/i8042.c

    rb4fa652 rb006a2c8  
    7777#define i8042_MOUSE_DATA        0x20
    7878
    79 #define SPECIAL         '?'
    8079#define KEY_RELEASE     0x80
    8180
     
    109108        .resume = i8042_resume,
    110109        .read = key_read
    111 };
    112 
    113 /** Primary meaning of scancodes. */
    114 static char sc_primary_map[] = {
    115         SPECIAL, /* 0x00 */
    116         SPECIAL, /* 0x01 - Esc */
    117         '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', '-', '=',
    118         '\b', /* 0x0e - Backspace */
    119         '\t', 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', '[', ']', '\n',
    120         SPECIAL, /* 0x1d - LCtrl */
    121         'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', ';', '\'',
    122         '`',
    123         SPECIAL, /* 0x2a - LShift */
    124         '\\',
    125         'z', 'x', 'c', 'v', 'b', 'n', 'm', ',', '.', '/',
    126         SPECIAL, /* 0x36 - RShift */
    127         '*',
    128         SPECIAL, /* 0x38 - LAlt */
    129         ' ',
    130         SPECIAL, /* 0x3a - CapsLock */
    131         SPECIAL, /* 0x3b - F1 */
    132         SPECIAL, /* 0x3c - F2 */
    133         SPECIAL, /* 0x3d - F3 */
    134         SPECIAL, /* 0x3e - F4 */
    135         SPECIAL, /* 0x3f - F5 */
    136         SPECIAL, /* 0x40 - F6 */
    137         SPECIAL, /* 0x41 - F7 */
    138         SPECIAL, /* 0x42 - F8 */
    139         SPECIAL, /* 0x43 - F9 */
    140         SPECIAL, /* 0x44 - F10 */
    141         SPECIAL, /* 0x45 - NumLock */
    142         SPECIAL, /* 0x46 - ScrollLock */
    143         '7', '8', '9', '-',
    144         '4', '5', '6', '+',
    145         '1', '2', '3',
    146         '0', '.',
    147         SPECIAL, /* 0x54 - Alt-SysRq */
    148         SPECIAL, /* 0x55 - F11/F12/PF1/FN */
    149         SPECIAL, /* 0x56 - unlabelled key next to LAlt */
    150         SPECIAL, /* 0x57 - F11 */
    151         SPECIAL, /* 0x58 - F12 */
    152         SPECIAL, /* 0x59 */
    153         SPECIAL, /* 0x5a */
    154         SPECIAL, /* 0x5b */
    155         SPECIAL, /* 0x5c */
    156         SPECIAL, /* 0x5d */
    157         SPECIAL, /* 0x5e */
    158         SPECIAL, /* 0x5f */
    159         SPECIAL, /* 0x60 */
    160         SPECIAL, /* 0x61 */
    161         SPECIAL, /* 0x62 */
    162         SPECIAL, /* 0x63 */
    163         SPECIAL, /* 0x64 */
    164         SPECIAL, /* 0x65 */
    165         SPECIAL, /* 0x66 */
    166         SPECIAL, /* 0x67 */
    167         SPECIAL, /* 0x68 */
    168         SPECIAL, /* 0x69 */
    169         SPECIAL, /* 0x6a */
    170         SPECIAL, /* 0x6b */
    171         SPECIAL, /* 0x6c */
    172         SPECIAL, /* 0x6d */
    173         SPECIAL, /* 0x6e */
    174         SPECIAL, /* 0x6f */
    175         SPECIAL, /* 0x70 */
    176         SPECIAL, /* 0x71 */
    177         SPECIAL, /* 0x72 */
    178         SPECIAL, /* 0x73 */
    179         SPECIAL, /* 0x74 */
    180         SPECIAL, /* 0x75 */
    181         SPECIAL, /* 0x76 */
    182         SPECIAL, /* 0x77 */
    183         SPECIAL, /* 0x78 */
    184         SPECIAL, /* 0x79 */
    185         SPECIAL, /* 0x7a */
    186         SPECIAL, /* 0x7b */
    187         SPECIAL, /* 0x7c */
    188         SPECIAL, /* 0x7d */
    189         SPECIAL, /* 0x7e */
    190         SPECIAL, /* 0x7f */
    191 };
    192 
    193 /** Secondary meaning of scancodes. */
    194 static char sc_secondary_map[] = {
    195         SPECIAL, /* 0x00 */
    196         SPECIAL, /* 0x01 - Esc */
    197         '!', '@', '#', '$', '%', '^', '&', '*', '(', ')', '_', '+',
    198         SPECIAL, /* 0x0e - Backspace */
    199         '\t', 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', '{', '}', '\n',
    200         SPECIAL, /* 0x1d - LCtrl */
    201         'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', ':', '"',
    202         '~',
    203         SPECIAL, /* 0x2a - LShift */
    204         '|',
    205         'Z', 'X', 'C', 'V', 'B', 'N', 'M', '<', '>', '?',
    206         SPECIAL, /* 0x36 - RShift */
    207         '*',
    208         SPECIAL, /* 0x38 - LAlt */
    209         ' ',
    210         SPECIAL, /* 0x3a - CapsLock */
    211         SPECIAL, /* 0x3b - F1 */
    212         SPECIAL, /* 0x3c - F2 */
    213         SPECIAL, /* 0x3d - F3 */
    214         SPECIAL, /* 0x3e - F4 */
    215         SPECIAL, /* 0x3f - F5 */
    216         SPECIAL, /* 0x40 - F6 */
    217         SPECIAL, /* 0x41 - F7 */
    218         SPECIAL, /* 0x42 - F8 */
    219         SPECIAL, /* 0x43 - F9 */
    220         SPECIAL, /* 0x44 - F10 */
    221         SPECIAL, /* 0x45 - NumLock */
    222         SPECIAL, /* 0x46 - ScrollLock */
    223         '7', '8', '9', '-',
    224         '4', '5', '6', '+',
    225         '1', '2', '3',
    226         '0', '.',
    227         SPECIAL, /* 0x54 - Alt-SysRq */
    228         SPECIAL, /* 0x55 - F11/F12/PF1/FN */
    229         SPECIAL, /* 0x56 - unlabelled key next to LAlt */
    230         SPECIAL, /* 0x57 - F11 */
    231         SPECIAL, /* 0x58 - F12 */
    232         SPECIAL, /* 0x59 */
    233         SPECIAL, /* 0x5a */
    234         SPECIAL, /* 0x5b */
    235         SPECIAL, /* 0x5c */
    236         SPECIAL, /* 0x5d */
    237         SPECIAL, /* 0x5e */
    238         SPECIAL, /* 0x5f */
    239         SPECIAL, /* 0x60 */
    240         SPECIAL, /* 0x61 */
    241         SPECIAL, /* 0x62 */
    242         SPECIAL, /* 0x63 */
    243         SPECIAL, /* 0x64 */
    244         SPECIAL, /* 0x65 */
    245         SPECIAL, /* 0x66 */
    246         SPECIAL, /* 0x67 */
    247         SPECIAL, /* 0x68 */
    248         SPECIAL, /* 0x69 */
    249         SPECIAL, /* 0x6a */
    250         SPECIAL, /* 0x6b */
    251         SPECIAL, /* 0x6c */
    252         SPECIAL, /* 0x6d */
    253         SPECIAL, /* 0x6e */
    254         SPECIAL, /* 0x6f */
    255         SPECIAL, /* 0x70 */
    256         SPECIAL, /* 0x71 */
    257         SPECIAL, /* 0x72 */
    258         SPECIAL, /* 0x73 */
    259         SPECIAL, /* 0x74 */
    260         SPECIAL, /* 0x75 */
    261         SPECIAL, /* 0x76 */
    262         SPECIAL, /* 0x77 */
    263         SPECIAL, /* 0x78 */
    264         SPECIAL, /* 0x79 */
    265         SPECIAL, /* 0x7a */
    266         SPECIAL, /* 0x7b */
    267         SPECIAL, /* 0x7c */
    268         SPECIAL, /* 0x7d */
    269         SPECIAL, /* 0x7e */
    270         SPECIAL, /* 0x7f */     
    271110};
    272111
Note: See TracChangeset for help on using the changeset viewer.