Annotation of /trunk/xorg-old/patches-6.9.0-r1/0425_all_6.9.0-sun-type6-keyboard.patch
Parent Directory | Revision Log
Revision 167 -
(hide annotations)
(download)
Tue May 8 20:58:51 2007 UTC (17 years, 4 months ago) by niro
File size: 9219 byte(s)
Tue May 8 20:58:51 2007 UTC (17 years, 4 months ago) by niro
File size: 9219 byte(s)
-import
1 | niro | 167 | diff -urN xc.orig/programs/Xserver/hw/xfree86/common/xf86Events.c xc/programs/Xserver/hw/xfree86/common/xf86Events.c |
2 | --- xc.orig/programs/Xserver/hw/xfree86/common/xf86Events.c 2004-07-30 13:56:53.000000000 -0700 | ||
3 | +++ xc/programs/Xserver/hw/xfree86/common/xf86Events.c 2004-09-02 11:45:52.000000000 -0700 | ||
4 | @@ -495,6 +495,14 @@ | ||
5 | if (xf86Info.scanPrefix == 0) { | ||
6 | |||
7 | switch (scanCode) { | ||
8 | + | ||
9 | + case 0x5d: scanCode = 0xD7; break; /* AGAI, SunAgain */ | ||
10 | + case 0x5e: scanCode = 0xD8; break; /* PROP, SunProps */ | ||
11 | + case 0x5f: scanCode = 0xD9; break; /* UNDO, SunUndo */ | ||
12 | + case 0x62: scanCode = 0xDA; break; /* FRNT, SunFront */ | ||
13 | + case 0x64: scanCode = 0xDC; break; /* OPEN, SunOpen */ | ||
14 | + case 0x65: scanCode = 0xDD; break; /* PAST, SunPaste */ | ||
15 | + | ||
16 | case KEY_Prefix0: | ||
17 | case KEY_Prefix1: | ||
18 | #if defined(PCCONS_SUPPORT) || defined(SYSCONS_SUPPORT) || defined(PCVT_SUPPORT) || defined(WSCONS_SUPPORT) | ||
19 | @@ -604,6 +612,22 @@ | ||
20 | case KEY_F6: scanCode = KEY_F16; break; | ||
21 | case KEY_F7: scanCode = KEY_F17; break; | ||
22 | case KEY_KP_Plus: scanCode = KEY_KP_DEC; break; | ||
23 | + /* NE: again for Type 6. Map prefixed scancodes to keycodes | ||
24 | + xkb/keycodes/xfree86(type6) -10 */ | ||
25 | + case 0x68: scanCode = 0xD6; break; /* SunStop */ | ||
26 | + case 0x78: scanCode = 0xDB; break; /* SunCopy */ | ||
27 | + case 0x65: scanCode = 0xDE; break; /* SunFind */ | ||
28 | + case 0x3c: scanCode = 0xDF; break; /* SunCut */ | ||
29 | + case 0x62: scanCode = 0xE0; break; /* SunHelp */ | ||
30 | + case 0x5f: scanCode = 0xD9; break; /* UNDO, SunUndo */ | ||
31 | + case 0x64: scanCode = 0xDC; break; /* OPEN, SunOpen */ | ||
32 | + | ||
33 | + /* NE: these are only -8 (GLYPH_OFFSET) */ | ||
34 | + case 0x26: scanCode = 157; break; /* SunMute */ | ||
35 | + case 0x25: scanCode = 151; break; /* VOL- */ | ||
36 | + case 0x1e: scanCode = 150; break; /* VOL+ */ | ||
37 | + case 0x5e: scanCode = 152; break; /* SunPower */ | ||
38 | + | ||
39 | /* | ||
40 | * Ignore virtual shifts (E0 2A, E0 AA, E0 36, E0 B6) | ||
41 | */ | ||
42 | diff -urN xc.orig/programs/xkbcomp/keycodes/xfree86 xc/programs/xkbcomp/keycodes/xfree86 | ||
43 | --- xc.orig/programs/xkbcomp/keycodes/xfree86 2004-09-01 12:06:44.000000000 -0700 | ||
44 | +++ xc/programs/xkbcomp/keycodes/xfree86 2004-09-02 11:52:13.000000000 -0700 | ||
45 | @@ -411,3 +411,36 @@ | ||
46 | <AC12> = 51; | ||
47 | <KPPT> = 134; | ||
48 | }; | ||
49 | + | ||
50 | +// For Sun/Type6 keyboards | ||
51 | +xkb_keycodes "type6" { | ||
52 | + include "xfree86(xfree86)" | ||
53 | + | ||
54 | + alias <LMTA> = <LWIN>; | ||
55 | + alias <RMTA> = <RWIN>; | ||
56 | + | ||
57 | + alias <COMP> = <MENU>; | ||
58 | + alias <ALGR> = <RALT>; | ||
59 | + | ||
60 | +// again, from sun/type5 | ||
61 | + <STOP> = 222; | ||
62 | + <AGAI> = 223; | ||
63 | + <PROP> = 224; | ||
64 | + <UNDO> = 225; | ||
65 | + <FRNT> = 226; | ||
66 | + <COPY> = 227; | ||
67 | + <OPEN> = 228; | ||
68 | + <PAST> = 229; | ||
69 | + <FIND> = 230; | ||
70 | + <CUT> = 231; | ||
71 | + | ||
72 | + <HELP> = 232; | ||
73 | + <MUTE> = 165; | ||
74 | + <VOL-> = 159; | ||
75 | + <VOL+> = 158; | ||
76 | + <POWR> = 160; | ||
77 | + | ||
78 | + indicator 1 = "Caps Lock"; | ||
79 | + indicator 2 = "Num Lock"; | ||
80 | + indicator 3 = "Scroll Lock"; | ||
81 | +}; | ||
82 | --- xc/programs/xkbcomp/rules/xorg.orig 2005-12-28 23:21:17.000000000 +0000 | ||
83 | +++ xc/programs/xkbcomp/rules/xorg 2005-12-28 23:27:54.000000000 +0000 | ||
84 | @@ -51,6 +51,7 @@ | ||
85 | powerpcps2 = powerpcps2 | ||
86 | pc98 = xfree98(pc98) | ||
87 | abnt2 = xfree86(abnt2) | ||
88 | + sun_type6_usb = xfree86(type6) | ||
89 | jp106 = xfree86(jp106) | ||
90 | * = xfree86 | ||
91 | |||
92 | @@ -81,6 +82,7 @@ | ||
93 | pc98 = nec(pc98) | ||
94 | abnt2 = pc(abnt2) | ||
95 | $mac = macintosh(macintosh) | ||
96 | + sun_type6_usb = sun(type5) | ||
97 | * = pc(pc104) | ||
98 | |||
99 | ! model layout variant = symbols | ||
100 | @@ -311,6 +313,7 @@ | ||
101 | $mac en_US = macintosh/us(extended) | ||
102 | $mac * = macintosh/us(extended)+macintosh/%l%(v) | ||
103 | $pcmodels intl = us(%mcompose) | ||
104 | + sun_type6_usb * = us(sun_type6_usb) | ||
105 | * intl = us(pc104compose) | ||
106 | * jp = pc/pc(pc102)+pc/jp(latin)+pc/jp:2 | ||
107 | $pcmodels ca = pc/pc(%m)+pc/ca(multi)+pc/ca(multi-2gr):2+group(rctrl_switch) | ||
108 | diff -urN xc.orig/programs/xkbcomp/symbols/us xc/programs/xkbcomp/symbols/us | ||
109 | --- xc.orig/programs/xkbcomp/symbols/us 2004-09-02 03:48:49.000000000 -0700 | ||
110 | +++ xc/programs/xkbcomp/symbols/us 2004-09-02 11:45:52.000000000 -0700 | ||
111 | @@ -321,6 +321,108 @@ | ||
112 | modifier_map Mod4 { Super_L, Super_R }; | ||
113 | }; | ||
114 | |||
115 | +// definition for Sun Type 6 USB | ||
116 | +xkb_symbols "sun_type6_usb" { | ||
117 | + include "us(basic)" | ||
118 | + | ||
119 | + key <RTSH> { [ Shift_R ] }; | ||
120 | + key <LALT> { [ Alt_L ] }; | ||
121 | + key <RCTL> { [ Control_R ] }; | ||
122 | + key <RALT> { [ Alt_R ] }; | ||
123 | + key <LMTA> { [ Meta_L ] }; | ||
124 | + key <RMTA> { [ Meta_R ] }; | ||
125 | + key <COMP> { [ Multi_key ] }; | ||
126 | + | ||
127 | + // Begin "Function" section | ||
128 | + key <FK01> { [ F1 ] }; | ||
129 | + key <FK02> { [ F2 ] }; | ||
130 | + key <FK03> { [ F3 ] }; | ||
131 | + key <FK04> { [ F4 ] }; | ||
132 | + key <FK05> { [ F5 ] }; | ||
133 | + key <FK06> { [ F6 ] }; | ||
134 | + key <FK07> { [ F7 ] }; | ||
135 | + key <FK08> { [ F8 ] }; | ||
136 | + key <FK09> { [ F9 ] }; | ||
137 | + key <FK10> { [ F10 ] }; | ||
138 | + key <FK11> { [ F11 ] }; | ||
139 | + key <FK12> { [ F12 ] }; | ||
140 | + // End "Function" section | ||
141 | + | ||
142 | + // Begin "Editing" section | ||
143 | + key <PRSC> { | ||
144 | + type= "PC_SYSRQ", | ||
145 | + symbols[Group1]= [ Print, Execute ] | ||
146 | + }; | ||
147 | + key <SCLK> { [ Scroll_Lock ] }; | ||
148 | + key <PAUS> { | ||
149 | + type= "PC_BREAK", | ||
150 | + symbols[Group1]= [ Pause, Break ] | ||
151 | + }; | ||
152 | + key <INS> { [ Insert ] }; | ||
153 | + key <HOME> { [ Home ] }; | ||
154 | + key <PGUP> { [ Prior ] }; | ||
155 | + key <DELE> { [ Delete ] }; | ||
156 | + key <END> { [ End ] }; | ||
157 | + key <PGDN> { [ Next ] }; | ||
158 | + | ||
159 | + key <UP> { [ Up ] }; | ||
160 | + key <LEFT> { [ Left ] }; | ||
161 | + key <DOWN> { [ Down ] }; | ||
162 | + key <RGHT> { [ Right ] }; | ||
163 | + | ||
164 | + // End "Editing" section, begin "Keypad" | ||
165 | + key <NMLK> { [ Num_Lock, Pointer_EnableKeys ] }; | ||
166 | + key <KPDV> { [ KP_Divide ] }; | ||
167 | + key <KPMU> { [ KP_Multiply ] }; | ||
168 | + key <KPSU> { [ KP_Subtract ] }; | ||
169 | + | ||
170 | + key <KP7> { [ KP_Home, KP_7 ] }; | ||
171 | + key <KP8> { [ KP_Up, KP_8 ] }; | ||
172 | + key <KP9> { [ KP_Prior, KP_9 ] }; | ||
173 | + key <KPAD> { [ KP_Add ] }; | ||
174 | + | ||
175 | + key <KP4> { [ KP_Left, KP_4 ] }; | ||
176 | + key <KP5> { [ KP_Begin, KP_5 ] }; | ||
177 | + key <KP6> { [ KP_Right, KP_6 ] }; | ||
178 | + | ||
179 | + key <KP1> { [ KP_End, KP_1 ] }; | ||
180 | + key <KP2> { [ KP_Down, KP_2 ] }; | ||
181 | + key <KP3> { [ KP_Next, KP_3 ] }; | ||
182 | + key <KPEN> { [ KP_Enter ] }; | ||
183 | + | ||
184 | + key <KP0> { [ KP_Insert, KP_0 ] }; | ||
185 | + key <KPDL> { [ KP_Delete, KP_Decimal ] }; | ||
186 | + // End "Keypad" section | ||
187 | + | ||
188 | + key <MUTE> { [ SunAudioMute, SunVideoDegauss ] }; | ||
189 | + key <VOL-> { [ SunAudioLowerVolume,SunVideoLowerBrightness ] }; | ||
190 | + key <VOL+> { [ SunAudioRaiseVolume,SunVideoRaiseBrightness ] }; | ||
191 | + key <POWR> { [ SunPowerSwitch, SunPowerSwitchShift ] }; | ||
192 | + | ||
193 | + // from symbols/sun/us(type5) | ||
194 | + key <STOP> { [ Cancel ], [ F11 ] }; | ||
195 | + key <AGAI> { [ Redo ], [ F12 ] }; | ||
196 | + key <PROP> { [ SunProps ], [ F13 ] }; | ||
197 | + key <UNDO> { [ Undo ], [ F14 ] }; | ||
198 | + key <FRNT> { [ SunFront ], [ F15 ] }; | ||
199 | + key <COPY> { [ SunCopy ], [ F16 ] }; | ||
200 | + key <OPEN> { [ SunOpen ], [ F17 ] }; | ||
201 | + key <PAST> { [ SunPaste ], [ F18 ] }; | ||
202 | + key <FIND> { [ Find ], [ F19 ] }; | ||
203 | + key <CUT> { [ SunCut ], [ F20 ] }; | ||
204 | + | ||
205 | + key <HELP> { [ Help ] }; | ||
206 | + | ||
207 | + // begin modifier mappings | ||
208 | +// XXX should Shift_L be here too? | ||
209 | + modifier_map Shift { Shift_R }; | ||
210 | + modifier_map Mod1 { Alt_L, Alt_R }; | ||
211 | + modifier_map Mod2 { Num_Lock }; | ||
212 | + modifier_map Mod3 { Multi_key }; | ||
213 | + modifier_map Mod4 { Meta_L, Meta_R }; | ||
214 | + modifier_map Mod5 { Scroll_Lock }; | ||
215 | +}; | ||
216 | + | ||
217 | // definition of Euro-style, Right "logo" key == [Mode_switch, Multi_key] | ||
218 | xkb_symbols "pc104euro" { | ||
219 | include "us(pc104)" |