diff options
Diffstat (limited to 'meta/recipes-kernel/linux/linux-rp-2.6.26/spitz_h_rewrite.patch')
-rw-r--r-- | meta/recipes-kernel/linux/linux-rp-2.6.26/spitz_h_rewrite.patch | 497 |
1 files changed, 497 insertions, 0 deletions
diff --git a/meta/recipes-kernel/linux/linux-rp-2.6.26/spitz_h_rewrite.patch b/meta/recipes-kernel/linux/linux-rp-2.6.26/spitz_h_rewrite.patch new file mode 100644 index 0000000000..3dcf4ed8af --- /dev/null +++ b/meta/recipes-kernel/linux/linux-rp-2.6.26/spitz_h_rewrite.patch | |||
@@ -0,0 +1,497 @@ | |||
1 | http://www.uwsg.indiana.edu/hypermail/linux/kernel/0802.1/3541.html | ||
2 | |||
3 | Here is a rewrite of spitz.h, which includes comments documenting | ||
4 | function of particular GPIO pins. | ||
5 | |||
6 | spitz_h_rewrite.patch provides: | ||
7 | - no changes in compiled code | ||
8 | - partial spitz.h rewrite: | ||
9 | * organized by function | ||
10 | * describes complete GPIO pinout | ||
11 | * comments added | ||
12 | * removed defines cloning pxa-regs.h | ||
13 | - prefer generic pxa-regs.h GPIO if available | ||
14 | - use GPIO names instead of numbers | ||
15 | |||
16 | Thanks to Trisoft for providing needed information. | ||
17 | |||
18 | Index: linux-2.6.26-rc4/arch/arm/mach-pxa/spitz_pm.c | ||
19 | =================================================================== | ||
20 | --- linux-2.6.26-rc4.orig/arch/arm/mach-pxa/spitz_pm.c 2008-06-02 00:13:53.000000000 +0100 | ||
21 | +++ linux-2.6.26-rc4/arch/arm/mach-pxa/spitz_pm.c 2008-06-02 00:13:53.000000000 +0100 | ||
22 | @@ -111,9 +111,9 @@ | ||
23 | pxa_gpio_mode(GPIO18_RDY|GPIO_OUT | GPIO_DFLT_HIGH); | ||
24 | |||
25 | PRER = GPIO_bit(SPITZ_GPIO_KEY_INT); | ||
26 | - PFER = GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(SPITZ_GPIO_RESET); | ||
27 | - PWER = GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(SPITZ_GPIO_RESET) | PWER_RTC; | ||
28 | - PKWR = GPIO_bit(SPITZ_GPIO_SYNC) | GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(SPITZ_GPIO_RESET); | ||
29 | + PFER = GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(GPIO1_RST); | ||
30 | + PWER = GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(GPIO1_RST) | PWER_RTC; | ||
31 | + PKWR = GPIO_bit(SPITZ_GPIO_SYNC) | GPIO_bit(SPITZ_GPIO_KEY_INT) | GPIO_bit(GPIO1_RST); | ||
32 | PKSR = 0xffffffff; // clear | ||
33 | |||
34 | /* nRESET_OUT Disable */ | ||
35 | @@ -126,7 +126,7 @@ | ||
36 | static void spitz_postsuspend(void) | ||
37 | { | ||
38 | pxa_gpio_mode(GPIO18_RDY_MD); | ||
39 | - pxa_gpio_mode(10 | GPIO_IN); | ||
40 | + pxa_gpio_mode(SPITZ_GPIO_NC_10 | GPIO_IN); | ||
41 | } | ||
42 | |||
43 | static int spitz_should_wakeup(unsigned int resume_on_alarm) | ||
44 | Index: linux-2.6.26-rc4/drivers/video/pxafb.c | ||
45 | =================================================================== | ||
46 | --- linux-2.6.26-rc4.orig/drivers/video/pxafb.c 2008-05-26 19:08:11.000000000 +0100 | ||
47 | +++ linux-2.6.26-rc4/drivers/video/pxafb.c 2008-06-02 00:15:22.000000000 +0100 | ||
48 | @@ -966,7 +966,7 @@ | ||
49 | return; | ||
50 | } | ||
51 | |||
52 | - for (gpio = 58; ldd_bits; gpio++, ldd_bits--) | ||
53 | + for (gpio = GPIO58_LDD_0; ldd_bits; gpio++, ldd_bits--) | ||
54 | pxa_gpio_mode(gpio | GPIO_ALT_FN_2_OUT); | ||
55 | pxa_gpio_mode(GPIO74_LCD_FCLK_MD); | ||
56 | pxa_gpio_mode(GPIO75_LCD_LCLK_MD); | ||
57 | Index: linux-2.6.26-rc4/include/asm-arm/arch-pxa/akita.h | ||
58 | =================================================================== | ||
59 | --- linux-2.6.26-rc4.orig/include/asm-arm/arch-pxa/akita.h 2008-05-26 19:08:11.000000000 +0100 | ||
60 | +++ linux-2.6.26-rc4/include/asm-arm/arch-pxa/akita.h 2008-06-02 00:13:53.000000000 +0100 | ||
61 | @@ -12,11 +12,11 @@ | ||
62 | /* Akita IO Expander GPIOs */ | ||
63 | |||
64 | #define AKITA_IOEXP_RESERVED_7 (1 << 7) | ||
65 | -#define AKITA_IOEXP_IR_ON (1 << 6) | ||
66 | -#define AKITA_IOEXP_AKIN_PULLUP (1 << 5) | ||
67 | -#define AKITA_IOEXP_BACKLIGHT_CONT (1 << 4) | ||
68 | -#define AKITA_IOEXP_BACKLIGHT_ON (1 << 3) | ||
69 | -#define AKITA_IOEXP_MIC_BIAS (1 << 2) | ||
70 | +#define AKITA_IOEXP_IR_ON (1 << 6) /* IrDA On */ | ||
71 | +#define AKITA_IOEXP_AKIN_PULLUP (1 << 5) /* Pull-Up for Remote */ | ||
72 | +#define AKITA_IOEXP_BACKLIGHT_CONT (1 << 4) /* Backlight Control */ | ||
73 | +#define AKITA_IOEXP_BACKLIGHT_ON (1 << 3) /* Backlight On */ | ||
74 | +#define AKITA_IOEXP_MIC_BIAS (1 << 2) /* Mic Bias On */ | ||
75 | #define AKITA_IOEXP_RESERVED_1 (1 << 1) | ||
76 | #define AKITA_IOEXP_RESERVED_0 (1 << 0) | ||
77 | |||
78 | Index: linux-2.6.26-rc4/include/asm-arm/arch-pxa/spitz.h | ||
79 | =================================================================== | ||
80 | --- linux-2.6.26-rc4.orig/include/asm-arm/arch-pxa/spitz.h 2008-05-26 19:08:11.000000000 +0100 | ||
81 | +++ linux-2.6.26-rc4/include/asm-arm/arch-pxa/spitz.h 2008-06-02 00:13:53.000000000 +0100 | ||
82 | @@ -1,8 +1,9 @@ | ||
83 | /* | ||
84 | - * Hardware specific definitions for SL-Cx000 series of PDAs | ||
85 | + * Hardware specific definitions for SL-Cxx00 series of PDAs | ||
86 | * | ||
87 | * Copyright (c) 2005 Alexander Wykes | ||
88 | * Copyright (c) 2005 Richard Purdie | ||
89 | + * Copyright (c) 2008 Stanislav Brabec | ||
90 | * | ||
91 | * Based on Sharp's 2.4 kernel patches | ||
92 | * | ||
93 | @@ -13,140 +14,257 @@ | ||
94 | */ | ||
95 | #ifndef __ASM_ARCH_SPITZ_H | ||
96 | #define __ASM_ARCH_SPITZ_H 1 | ||
97 | -#endif | ||
98 | |||
99 | -#include <linux/fb.h> | ||
100 | +#include <asm-arm/arch-pxa/irqs.h> | ||
101 | +#include <linux/platform_device.h> | ||
102 | |||
103 | /* Spitz/Akita GPIOs */ | ||
104 | |||
105 | -#define SPITZ_GPIO_KEY_INT (0) /* Key Interrupt */ | ||
106 | -#define SPITZ_GPIO_RESET (1) | ||
107 | -#define SPITZ_GPIO_nSD_DETECT (9) | ||
108 | -#define SPITZ_GPIO_TP_INT (11) /* Touch Panel interrupt */ | ||
109 | -#define SPITZ_GPIO_AK_INT (13) /* Remote Control */ | ||
110 | -#define SPITZ_GPIO_ADS7846_CS (14) | ||
111 | -#define SPITZ_GPIO_SYNC (16) | ||
112 | -#define SPITZ_GPIO_MAX1111_CS (20) | ||
113 | -#define SPITZ_GPIO_FATAL_BAT (21) | ||
114 | -#define SPITZ_GPIO_HSYNC (22) | ||
115 | -#define SPITZ_GPIO_nSD_CLK (32) | ||
116 | -#define SPITZ_GPIO_USB_DEVICE (35) | ||
117 | -#define SPITZ_GPIO_USB_HOST (37) | ||
118 | -#define SPITZ_GPIO_USB_CONNECT (41) | ||
119 | -#define SPITZ_GPIO_LCDCON_CS (53) | ||
120 | -#define SPITZ_GPIO_nPCE (54) | ||
121 | -#define SPITZ_GPIO_nSD_WP (81) | ||
122 | -#define SPITZ_GPIO_ON_RESET (89) | ||
123 | -#define SPITZ_GPIO_BAT_COVER (90) | ||
124 | -#define SPITZ_GPIO_CF_CD (94) | ||
125 | -#define SPITZ_GPIO_ON_KEY (95) | ||
126 | -#define SPITZ_GPIO_SWA (97) | ||
127 | -#define SPITZ_GPIO_SWB (96) | ||
128 | -#define SPITZ_GPIO_CHRG_FULL (101) | ||
129 | -#define SPITZ_GPIO_CO (101) | ||
130 | -#define SPITZ_GPIO_CF_IRQ (105) | ||
131 | -#define SPITZ_GPIO_AC_IN (115) | ||
132 | -#define SPITZ_GPIO_HP_IN (116) | ||
133 | +/* This list refers to all GPIO pins either in defines or in comments. | ||
134 | + * | ||
135 | + * GPIO pins not listed: | ||
136 | + * GPIO2 SYS_EN: System Power Enable | ||
137 | + * GPIO5-GPIO8 PWR_CAP0-PWR_CAP3: sleep DC-DC converter power capacitors | ||
138 | + * GPIO40 not connected | ||
139 | + */ | ||
140 | |||
141 | -/* Spitz Only GPIOs */ | ||
142 | |||
143 | -#define SPITZ_GPIO_CF2_IRQ (106) /* CF slot1 Ready */ | ||
144 | -#define SPITZ_GPIO_CF2_CD (93) | ||
145 | +/* Spitz/Akita System GPIO */ | ||
146 | + | ||
147 | +#define SPITZ_GPIO_KEY_INT (0) /* Key Interrupt */ | ||
148 | +#define SPITZ_GPIO_SYNC (16) /* IOPORT Wake Up (input) */ | ||
149 | +#define SPITZ_GPIO_NAND_CS (79) /* NAND Flash Chip Select */ | ||
150 | +#define SPITZ_GPIO_NC_10 (10) /* Not Connected (but used in kernel) */ | ||
151 | +/* This GPIO pin is connected: | ||
152 | + * GPIO1_RST | ||
153 | + */ | ||
154 | |||
155 | |||
156 | +/* Compact Flash Interface */ | ||
157 | + | ||
158 | +/* Spitz/Akita Compact Flash Interface */ | ||
159 | +#define SPITZ_GPIO_CF_CD (94) /* CF IRQ */ | ||
160 | +#define SPITZ_GPIO_CF_IRQ (105) /* CF Ready */ | ||
161 | +/* These GPIO pins are connected: | ||
162 | + * GPIO48_nPOE | ||
163 | + * GPIO49_nPWE | ||
164 | + * GPIO50_nPIOR | ||
165 | + * GPIO51_nPIOW | ||
166 | + * GPIO54_nPCE_2 | ||
167 | + * GPIO55_nPREG | ||
168 | + * GPIO56_nPWAIT | ||
169 | + * GPIO57_nIOIS16 | ||
170 | + * GPIO80_nCS_4 | ||
171 | + * GPIO85_nPCE_1 | ||
172 | + * GPIO104_pSKTSEL | ||
173 | + */ | ||
174 | + | ||
175 | +/* Spitz only Compact Flash Interface */ | ||
176 | +#define SPITZ_GPIO_CF2_CD (93) /* CF slot1 IRQ */ | ||
177 | +#define SPITZ_GPIO_CF2_IRQ (106) /* CF slot1 Ready */ | ||
178 | +/* This GPIO pin is connected: | ||
179 | + * GPIO78_nCS_2 | ||
180 | + */ | ||
181 | + | ||
182 | + | ||
183 | +/* Spitz/Akita Battery, Power and Service Connector */ | ||
184 | + | ||
185 | +#define SPITZ_GPIO_FATAL_BAT (21) /* Fatal Battery */ | ||
186 | +#define SPITZ_GPIO_BAT_COVER (90) /* Battery Cover switch */ | ||
187 | +#define SPITZ_GPIO_BAT_COVER2 (15) /* Battery Cover switch, parallel pin */ | ||
188 | +#define SPITZ_GPIO_CHRG_FULL (101) /* Battery Full */ | ||
189 | +#define SPITZ_GPIO_AC_IN (115) /* External Power Supply is active */ | ||
190 | +#define SPITZ_GPIO_ON_RESET (89) /* Software Reset */ | ||
191 | +#define SPITZ_GPIO_SERVICE0 (83) /* Service Connector */ | ||
192 | +#define SPITZ_GPIO_SERVICE1 (84) /* Service Connector */ | ||
193 | +/* This GPIO pin is connected: | ||
194 | + * GPIO18_RDY | ||
195 | + */ | ||
196 | + | ||
197 | + | ||
198 | +/* Spitz/Akita Display Controller */ | ||
199 | + | ||
200 | +#define SPITZ_GPIO_HSYNC (22) /* Line Sync Feedback */ | ||
201 | +/* These GPIO pins are connected: | ||
202 | + * GPIO58_LDD_0-GPIO58_LDD_15 | ||
203 | + * GPIO74_LCD_FCLK | ||
204 | + * GPIO75_LCD_LCLK | ||
205 | + * GPIO76_LCD_PCLK | ||
206 | + * GPIO77_LCD_ACBIAS | ||
207 | + */ | ||
208 | + | ||
209 | + | ||
210 | +/* Spitz/Akita SSP/SPI Bus and Devices */ | ||
211 | + | ||
212 | +#define SPITZ_GPIO_SSP_CLK (19) /* SSP bus Clock */ | ||
213 | +#define SPITZ_GPIO_SSP_RXD (86) /* SSP bus RxD */ | ||
214 | +#define SPITZ_GPIO_SSP_TXD (87) /* SSP bus TxD */ | ||
215 | +#define SPITZ_GPIO_TP_INT (11) /* Touch Panel IRQ */ | ||
216 | +#define SPITZ_GPIO_ADS7846_CS (14) /* Touch Panel Controller Chip Select */ | ||
217 | +#define SPITZ_GPIO_MAX1111_CS (20) /* Multi Channel ADC Chip Select */ | ||
218 | +#define SPITZ_GPIO_LCDCON_CS (53) /* LCD Controller Chip Select */ | ||
219 | + | ||
220 | + | ||
221 | +/* Spitz/Akita Supplementary USB OTG Pins */ | ||
222 | + | ||
223 | +#define SPITZ_GPIO_USB_DEVICE (35) /* USB Client power is present */ | ||
224 | +#define SPITZ_GPIO_USB_HOST (37) /* USB OTG 5V Host power supply control */ | ||
225 | +#define SPITZ_GPIO_USB_CONNECT (41) /* USB Host Cable is connected */ | ||
226 | + | ||
227 | + | ||
228 | +/* Spitz/Akita Audio */ | ||
229 | + | ||
230 | +#define SPITZ_GPIO_HP_IN (116) /* CPU Headphone detect */ | ||
231 | +#define SPITZ_GPIO_AK_INT (13) /* Remote Control detect */ | ||
232 | +/* These GPIO AC97 pins are connected: | ||
233 | + * GPIO28_BITCLK | ||
234 | + * GPIO29_SDATA_IN | ||
235 | + * GPIO30_SDATA_OUT | ||
236 | + * GPIO31_SYNC | ||
237 | + * GPIO113_AC97_RESET_N | ||
238 | + */ | ||
239 | + | ||
240 | + | ||
241 | +/* Spitz/Akita SD Slot */ | ||
242 | + | ||
243 | +#define SPITZ_GPIO_nSD_DETECT (9) /* SD Card Presence */ | ||
244 | +#define SPITZ_GPIO_nSD_WP (81) /* SD Write Protection */ | ||
245 | +/* These GPIO pins are connected: | ||
246 | + * GPIO32_MMCCLK | ||
247 | + * GPIO92_MMCDAT0 | ||
248 | + * GPIO109_MMCDAT1 | ||
249 | + * GPIO110_MMCDAT2 | ||
250 | + * GPIO111_MMCDAT3 | ||
251 | + * GPIO112_MMCCMD | ||
252 | + */ | ||
253 | + | ||
254 | +/* Spitz/Akita I2C bus */ | ||
255 | +#define SPITZ_GPIO_SCL (117) /* I2C SCL */ | ||
256 | +#define SPITZ_GPIO_SDA (118) /* I2C SDA */ | ||
257 | +#define SPITZ_GPIO_PWR_SCL (3) /* I2C SCL power */ | ||
258 | +#define SPITZ_GPIO_PWR_SDA (4) /* I2C SDA power */ | ||
259 | + | ||
260 | +/* audio codec pins */ | ||
261 | + | ||
262 | + | ||
263 | +/* Spitz/Akita UART ports */ | ||
264 | + | ||
265 | +/* Fully Featured UART - connected to IOPORT connector */ | ||
266 | +#define SPITZ_GPIO_FFRXD (102) /* IOPORT has nRXD inverted levels */ | ||
267 | +#define SPITZ_GPIO_FFTXD (99) /* IOPORT has nTXD inverted levels */ | ||
268 | +#define SPITZ_GPIO_FFRTS (98) | ||
269 | +#define SPITZ_GPIO_FFCTS (100) | ||
270 | +#define SPITZ_GPIO_FFDTR (82) | ||
271 | +#define SPITZ_GPIO_FFDSR (33) | ||
272 | + | ||
273 | +/* These UART GPIO pins are connected to Bluetooth | ||
274 | + * (only on Akita version with Bluetooth) | ||
275 | + * GPIO42_BTRXD | ||
276 | + * GPIO43_BTTXD | ||
277 | + * GPIO44_BTCTS | ||
278 | + * GPIO45_BTRTS | ||
279 | + */ | ||
280 | + | ||
281 | +/* These UART GPIO pins are connected to IrDA: | ||
282 | + * GPIO46_STRXD | ||
283 | + * GPIO47_STTXD | ||
284 | + */ | ||
285 | + | ||
286 | /* Spitz/Akita Keyboard Definitions */ | ||
287 | |||
288 | -#define SPITZ_KEY_STROBE_NUM (11) | ||
289 | -#define SPITZ_KEY_SENSE_NUM (7) | ||
290 | -#define SPITZ_GPIO_G0_STROBE_BIT 0x0f800000 | ||
291 | -#define SPITZ_GPIO_G1_STROBE_BIT 0x00100000 | ||
292 | -#define SPITZ_GPIO_G2_STROBE_BIT 0x01000000 | ||
293 | -#define SPITZ_GPIO_G3_STROBE_BIT 0x00041880 | ||
294 | -#define SPITZ_GPIO_G0_SENSE_BIT 0x00021000 | ||
295 | -#define SPITZ_GPIO_G1_SENSE_BIT 0x000000d4 | ||
296 | -#define SPITZ_GPIO_G2_SENSE_BIT 0x08000000 | ||
297 | -#define SPITZ_GPIO_G3_SENSE_BIT 0x00000000 | ||
298 | - | ||
299 | -#define SPITZ_GPIO_KEY_STROBE0 88 | ||
300 | -#define SPITZ_GPIO_KEY_STROBE1 23 | ||
301 | -#define SPITZ_GPIO_KEY_STROBE2 24 | ||
302 | -#define SPITZ_GPIO_KEY_STROBE3 25 | ||
303 | -#define SPITZ_GPIO_KEY_STROBE4 26 | ||
304 | -#define SPITZ_GPIO_KEY_STROBE5 27 | ||
305 | -#define SPITZ_GPIO_KEY_STROBE6 52 | ||
306 | -#define SPITZ_GPIO_KEY_STROBE7 103 | ||
307 | -#define SPITZ_GPIO_KEY_STROBE8 107 | ||
308 | -#define SPITZ_GPIO_KEY_STROBE9 108 | ||
309 | -#define SPITZ_GPIO_KEY_STROBE10 114 | ||
310 | - | ||
311 | -#define SPITZ_GPIO_KEY_SENSE0 12 | ||
312 | -#define SPITZ_GPIO_KEY_SENSE1 17 | ||
313 | -#define SPITZ_GPIO_KEY_SENSE2 91 | ||
314 | -#define SPITZ_GPIO_KEY_SENSE3 34 | ||
315 | -#define SPITZ_GPIO_KEY_SENSE4 36 | ||
316 | -#define SPITZ_GPIO_KEY_SENSE5 38 | ||
317 | -#define SPITZ_GPIO_KEY_SENSE6 39 | ||
318 | +#define SPITZ_KEY_STROBE_NUM (11) | ||
319 | +#define SPITZ_KEY_SENSE_NUM (7) | ||
320 | +#define SPITZ_GPIO_G0_STROBE_BIT 0x0f800000 | ||
321 | +#define SPITZ_GPIO_G1_STROBE_BIT 0x00100000 | ||
322 | +#define SPITZ_GPIO_G2_STROBE_BIT 0x01000000 | ||
323 | +#define SPITZ_GPIO_G3_STROBE_BIT 0x00041880 | ||
324 | +#define SPITZ_GPIO_G0_SENSE_BIT 0x00021000 | ||
325 | +#define SPITZ_GPIO_G1_SENSE_BIT 0x000000d4 | ||
326 | +#define SPITZ_GPIO_G2_SENSE_BIT 0x08000000 | ||
327 | +#define SPITZ_GPIO_G3_SENSE_BIT 0x00000000 | ||
328 | +#define SPITZ_GPIO_KEY_STROBE0 (88) | ||
329 | +#define SPITZ_GPIO_KEY_STROBE1 (23) | ||
330 | +#define SPITZ_GPIO_KEY_STROBE2 (24) | ||
331 | +#define SPITZ_GPIO_KEY_STROBE3 (25) | ||
332 | +#define SPITZ_GPIO_KEY_STROBE4 (26) | ||
333 | +#define SPITZ_GPIO_KEY_STROBE5 (27) | ||
334 | +#define SPITZ_GPIO_KEY_STROBE6 (52) | ||
335 | +#define SPITZ_GPIO_KEY_STROBE7 (103) | ||
336 | +#define SPITZ_GPIO_KEY_STROBE8 (107) | ||
337 | +#define SPITZ_GPIO_KEY_STROBE9 (108) | ||
338 | +#define SPITZ_GPIO_KEY_STROBE10 (114) | ||
339 | +#define SPITZ_GPIO_KEY_SENSE0 (12) | ||
340 | +#define SPITZ_GPIO_KEY_SENSE1 (17) | ||
341 | +#define SPITZ_GPIO_KEY_SENSE2 (91) | ||
342 | +#define SPITZ_GPIO_KEY_SENSE3 (34) | ||
343 | +#define SPITZ_GPIO_KEY_SENSE4 (36) | ||
344 | +#define SPITZ_GPIO_KEY_SENSE5 (38) | ||
345 | +#define SPITZ_GPIO_KEY_SENSE6 (39) | ||
346 | + | ||
347 | +#define SPITZ_GPIO_SWA (97) /* Keyboard Interrupt A */ | ||
348 | +#define SPITZ_GPIO_SWB (96) /* Keyboard Interrupt B */ | ||
349 | +#define SPITZ_GPIO_ON_KEY (95) /* Power On Key */ | ||
350 | |||
351 | |||
352 | -/* Spitz Scoop Device (No. 1) GPIOs */ | ||
353 | +/* Spitz/Akita Scoop Device (No. 1) GPIOs */ | ||
354 | /* Suspend States in comments */ | ||
355 | -#define SPITZ_SCP_LED_GREEN SCOOP_GPCR_PA11 /* Keep */ | ||
356 | -#define SPITZ_SCP_JK_B SCOOP_GPCR_PA12 /* Keep */ | ||
357 | -#define SPITZ_SCP_CHRG_ON SCOOP_GPCR_PA13 /* Keep */ | ||
358 | -#define SPITZ_SCP_MUTE_L SCOOP_GPCR_PA14 /* Low */ | ||
359 | -#define SPITZ_SCP_MUTE_R SCOOP_GPCR_PA15 /* Low */ | ||
360 | -#define SPITZ_SCP_CF_POWER SCOOP_GPCR_PA16 /* Keep */ | ||
361 | -#define SPITZ_SCP_LED_ORANGE SCOOP_GPCR_PA17 /* Keep */ | ||
362 | -#define SPITZ_SCP_JK_A SCOOP_GPCR_PA18 /* Low */ | ||
363 | -#define SPITZ_SCP_ADC_TEMP_ON SCOOP_GPCR_PA19 /* Low */ | ||
364 | +#define SPITZ_SCP_LED_GREEN SCOOP_GPCR_PA11 /* Green LED, Keep */ | ||
365 | +#define SPITZ_SCP_JK_B SCOOP_GPCR_PA12 /* Fast Charge On, Keep */ | ||
366 | +#define SPITZ_SCP_CHRG_ON SCOOP_GPCR_PA13 /* Charge On, Keep */ | ||
367 | +#define SPITZ_SCP_MUTE_L SCOOP_GPCR_PA14 /* Extra Mute Left, Low */ | ||
368 | +#define SPITZ_SCP_MUTE_R SCOOP_GPCR_PA15 /* Extra Mute Right, Low */ | ||
369 | +#define SPITZ_SCP_CF_POWER SCOOP_GPCR_PA16 /* CF+SD Power Circuit, Keep */ | ||
370 | +#define SPITZ_SCP_LED_ORANGE SCOOP_GPCR_PA17 /* Orange LED, Keep */ | ||
371 | +#define SPITZ_SCP_JK_A SCOOP_GPCR_PA18 /* Dummy Load, Low */ | ||
372 | +#define SPITZ_SCP_ADC_TEMP_ON SCOOP_GPCR_PA19 /* Battery Sensor On, Low */ | ||
373 | |||
374 | #define SPITZ_SCP_IO_DIR (SPITZ_SCP_LED_GREEN | SPITZ_SCP_JK_B | SPITZ_SCP_CHRG_ON | \ | ||
375 | - SPITZ_SCP_MUTE_L | SPITZ_SCP_MUTE_R | SPITZ_SCP_LED_ORANGE | \ | ||
376 | - SPITZ_SCP_CF_POWER | SPITZ_SCP_JK_A | SPITZ_SCP_ADC_TEMP_ON) | ||
377 | + SPITZ_SCP_MUTE_L | SPITZ_SCP_MUTE_R | SPITZ_SCP_LED_ORANGE | \ | ||
378 | + SPITZ_SCP_CF_POWER | SPITZ_SCP_JK_A | SPITZ_SCP_ADC_TEMP_ON) | ||
379 | #define SPITZ_SCP_IO_OUT (SPITZ_SCP_CHRG_ON | SPITZ_SCP_MUTE_L | SPITZ_SCP_MUTE_R) | ||
380 | #define SPITZ_SCP_SUS_CLR (SPITZ_SCP_MUTE_L | SPITZ_SCP_MUTE_R | SPITZ_SCP_JK_A | SPITZ_SCP_ADC_TEMP_ON) | ||
381 | #define SPITZ_SCP_SUS_SET 0 | ||
382 | |||
383 | /* Spitz Scoop Device (No. 2) GPIOs */ | ||
384 | -/* Suspend States in comments */ | ||
385 | -#define SPITZ_SCP2_IR_ON SCOOP_GPCR_PA11 /* High */ | ||
386 | -#define SPITZ_SCP2_AKIN_PULLUP SCOOP_GPCR_PA12 /* Keep */ | ||
387 | -#define SPITZ_SCP2_RESERVED_1 SCOOP_GPCR_PA13 /* High */ | ||
388 | -#define SPITZ_SCP2_RESERVED_2 SCOOP_GPCR_PA14 /* Low */ | ||
389 | -#define SPITZ_SCP2_RESERVED_3 SCOOP_GPCR_PA15 /* Low */ | ||
390 | -#define SPITZ_SCP2_RESERVED_4 SCOOP_GPCR_PA16 /* Low */ | ||
391 | -#define SPITZ_SCP2_BACKLIGHT_CONT SCOOP_GPCR_PA17 /* Low */ | ||
392 | -#define SPITZ_SCP2_BACKLIGHT_ON SCOOP_GPCR_PA18 /* Low */ | ||
393 | -#define SPITZ_SCP2_MIC_BIAS SCOOP_GPCR_PA19 /* Low */ | ||
394 | +/* Suspend States in comments | ||
395 | + * Spitz only, Akita uses corresponding AKITA_IOEXP_ */ | ||
396 | +#define SPITZ_SCP2_IR_ON SCOOP_GPCR_PA11 /* IrDA On, High */ | ||
397 | +#define SPITZ_SCP2_AKIN_PULLUP SCOOP_GPCR_PA12 /* Pull-Up for Remote, Keep */ | ||
398 | +#define SPITZ_SCP2_RESERVED_1 SCOOP_GPCR_PA13 /* High */ | ||
399 | +#define SPITZ_SCP2_RESERVED_2 SCOOP_GPCR_PA14 /* Low */ | ||
400 | +#define SPITZ_SCP2_RESERVED_3 SCOOP_GPCR_PA15 /* Low */ | ||
401 | +#define SPITZ_SCP2_RESERVED_4 SCOOP_GPCR_PA16 /* Low */ | ||
402 | +#define SPITZ_SCP2_BACKLIGHT_CONT SCOOP_GPCR_PA17 /* Backlight Control, Low */ | ||
403 | +#define SPITZ_SCP2_BACKLIGHT_ON SCOOP_GPCR_PA18 /* Backlight On, Low */ | ||
404 | +#define SPITZ_SCP2_MIC_BIAS SCOOP_GPCR_PA19 /* Mic Bias On, Low */ | ||
405 | |||
406 | #define SPITZ_SCP2_IO_DIR (SPITZ_SCP2_IR_ON | SPITZ_SCP2_AKIN_PULLUP | SPITZ_SCP2_RESERVED_1 | \ | ||
407 | - SPITZ_SCP2_RESERVED_2 | SPITZ_SCP2_RESERVED_3 | SPITZ_SCP2_RESERVED_4 | \ | ||
408 | - SPITZ_SCP2_BACKLIGHT_CONT | SPITZ_SCP2_BACKLIGHT_ON | SPITZ_SCP2_MIC_BIAS) | ||
409 | + SPITZ_SCP2_RESERVED_2 | SPITZ_SCP2_RESERVED_3 | SPITZ_SCP2_RESERVED_4 | \ | ||
410 | + SPITZ_SCP2_BACKLIGHT_CONT | SPITZ_SCP2_BACKLIGHT_ON | SPITZ_SCP2_MIC_BIAS) | ||
411 | |||
412 | #define SPITZ_SCP2_IO_OUT (SPITZ_SCP2_IR_ON | SPITZ_SCP2_AKIN_PULLUP | SPITZ_SCP2_RESERVED_1) | ||
413 | #define SPITZ_SCP2_SUS_CLR (SPITZ_SCP2_RESERVED_2 | SPITZ_SCP2_RESERVED_3 | SPITZ_SCP2_RESERVED_4 | \ | ||
414 | - SPITZ_SCP2_BACKLIGHT_CONT | SPITZ_SCP2_BACKLIGHT_ON | SPITZ_SCP2_MIC_BIAS) | ||
415 | + SPITZ_SCP2_BACKLIGHT_CONT | SPITZ_SCP2_BACKLIGHT_ON | SPITZ_SCP2_MIC_BIAS) | ||
416 | #define SPITZ_SCP2_SUS_SET (SPITZ_SCP2_IR_ON | SPITZ_SCP2_RESERVED_1) | ||
417 | |||
418 | |||
419 | -/* Spitz IRQ Definitions */ | ||
420 | +/* Spitz/Akita IRQ Definitions */ | ||
421 | |||
422 | -#define SPITZ_IRQ_GPIO_KEY_INT IRQ_GPIO(SPITZ_GPIO_KEY_INT) | ||
423 | -#define SPITZ_IRQ_GPIO_AC_IN IRQ_GPIO(SPITZ_GPIO_AC_IN) | ||
424 | -#define SPITZ_IRQ_GPIO_AK_INT IRQ_GPIO(SPITZ_GPIO_AK_INT) | ||
425 | -#define SPITZ_IRQ_GPIO_HP_IN IRQ_GPIO(SPITZ_GPIO_HP_IN) | ||
426 | -#define SPITZ_IRQ_GPIO_TP_INT IRQ_GPIO(SPITZ_GPIO_TP_INT) | ||
427 | -#define SPITZ_IRQ_GPIO_SYNC IRQ_GPIO(SPITZ_GPIO_SYNC) | ||
428 | -#define SPITZ_IRQ_GPIO_ON_KEY IRQ_GPIO(SPITZ_GPIO_ON_KEY) | ||
429 | -#define SPITZ_IRQ_GPIO_SWA IRQ_GPIO(SPITZ_GPIO_SWA) | ||
430 | -#define SPITZ_IRQ_GPIO_SWB IRQ_GPIO(SPITZ_GPIO_SWB) | ||
431 | +#define SPITZ_IRQ_GPIO_KEY_INT IRQ_GPIO(SPITZ_GPIO_KEY_INT) | ||
432 | +#define SPITZ_IRQ_GPIO_AC_IN IRQ_GPIO(SPITZ_GPIO_AC_IN) | ||
433 | +#define SPITZ_IRQ_GPIO_AK_INT IRQ_GPIO(SPITZ_GPIO_AK_INT) | ||
434 | +#define SPITZ_IRQ_GPIO_HP_IN IRQ_GPIO(SPITZ_GPIO_HP_IN) | ||
435 | +#define SPITZ_IRQ_GPIO_TP_INT IRQ_GPIO(SPITZ_GPIO_TP_INT) | ||
436 | +#define SPITZ_IRQ_GPIO_SYNC IRQ_GPIO(SPITZ_GPIO_SYNC) | ||
437 | +#define SPITZ_IRQ_GPIO_ON_KEY IRQ_GPIO(SPITZ_GPIO_ON_KEY) | ||
438 | +#define SPITZ_IRQ_GPIO_SWA IRQ_GPIO(SPITZ_GPIO_SWA) | ||
439 | +#define SPITZ_IRQ_GPIO_SWB IRQ_GPIO(SPITZ_GPIO_SWB) | ||
440 | #define SPITZ_IRQ_GPIO_BAT_COVER IRQ_GPIO(SPITZ_GPIO_BAT_COVER) | ||
441 | #define SPITZ_IRQ_GPIO_FATAL_BAT IRQ_GPIO(SPITZ_GPIO_FATAL_BAT) | ||
442 | -#define SPITZ_IRQ_GPIO_CO IRQ_GPIO(SPITZ_GPIO_CO) | ||
443 | -#define SPITZ_IRQ_GPIO_CF_IRQ IRQ_GPIO(SPITZ_GPIO_CF_IRQ) | ||
444 | -#define SPITZ_IRQ_GPIO_CF_CD IRQ_GPIO(SPITZ_GPIO_CF_CD) | ||
445 | -#define SPITZ_IRQ_GPIO_CF2_IRQ IRQ_GPIO(SPITZ_GPIO_CF2_IRQ) | ||
446 | -#define SPITZ_IRQ_GPIO_nSD_INT IRQ_GPIO(SPITZ_GPIO_nSD_INT) | ||
447 | +#define SPITZ_IRQ_GPIO_CF_IRQ IRQ_GPIO(SPITZ_GPIO_CF_IRQ) | ||
448 | +#define SPITZ_IRQ_GPIO_CF_CD IRQ_GPIO(SPITZ_GPIO_CF_CD) | ||
449 | +#define SPITZ_IRQ_GPIO_CF2_IRQ IRQ_GPIO(SPITZ_GPIO_CF2_IRQ) | ||
450 | +#define SPITZ_IRQ_GPIO_nSD_INT IRQ_GPIO(SPITZ_GPIO_nSD_INT) | ||
451 | #define SPITZ_IRQ_GPIO_nSD_DETECT IRQ_GPIO(SPITZ_GPIO_nSD_DETECT) | ||
452 | |||
453 | /* | ||
454 | @@ -156,3 +274,5 @@ | ||
455 | extern struct platform_device spitzscoop2_device; | ||
456 | extern struct platform_device spitzssp_device; | ||
457 | extern struct sharpsl_charger_machinfo spitz_pm_machinfo; | ||
458 | + | ||
459 | +#endif | ||
460 | Index: linux-2.6.26-rc4/sound/arm/pxa2xx-ac97.c | ||
461 | =================================================================== | ||
462 | --- linux-2.6.26-rc4.orig/sound/arm/pxa2xx-ac97.c 2008-05-26 19:08:11.000000000 +0100 | ||
463 | +++ linux-2.6.26-rc4/sound/arm/pxa2xx-ac97.c 2008-06-02 00:19:38.000000000 +0100 | ||
464 | @@ -156,10 +156,10 @@ | ||
465 | #ifdef CONFIG_PXA27x | ||
466 | /* warm reset broken on Bulverde, | ||
467 | so manually keep AC97 reset high */ | ||
468 | - pxa_gpio_mode(113 | GPIO_OUT | GPIO_DFLT_HIGH); | ||
469 | + pxa_gpio_mode(GPIO113_AC97_RESET_N | GPIO_OUT | GPIO_DFLT_HIGH); | ||
470 | udelay(10); | ||
471 | GCR |= GCR_WARM_RST; | ||
472 | - pxa_gpio_mode(113 | GPIO_ALT_FN_2_OUT); | ||
473 | + pxa_gpio_mode(GPIO113_AC97_RESET_N_MD); | ||
474 | udelay(500); | ||
475 | #elif defined(CONFIG_PXA3xx) | ||
476 | timeout = 100; | ||
477 | @@ -364,7 +364,7 @@ | ||
478 | pxa_gpio_mode(GPIO29_SDATA_IN_AC97_MD); | ||
479 | #ifdef CONFIG_PXA27x | ||
480 | /* Use GPIO 113 as AC97 Reset on Bulverde */ | ||
481 | - pxa_gpio_mode(113 | GPIO_ALT_FN_2_OUT); | ||
482 | + pxa_gpio_mode(GPIO113_AC97_RESET_N_MD | GPIO_ALT_FN_2_OUT); | ||
483 | ac97conf_clk = clk_get(&dev->dev, "AC97CONFCLK"); | ||
484 | if (IS_ERR(ac97conf_clk)) { | ||
485 | ret = PTR_ERR(ac97conf_clk); | ||
486 | Index: linux-2.6.26-rc4/include/asm-arm/arch-pxa/pxa2xx-gpio.h | ||
487 | =================================================================== | ||
488 | --- linux-2.6.26-rc4.orig/include/asm-arm/arch-pxa/pxa2xx-gpio.h 2008-06-02 00:18:07.000000000 +0100 | ||
489 | +++ linux-2.6.26-rc4/include/asm-arm/arch-pxa/pxa2xx-gpio.h 2008-06-02 00:18:28.000000000 +0100 | ||
490 | @@ -138,6 +138,7 @@ | ||
491 | #define GPIO102_nPCE_1 102 /* PCMCIA (PXA27x) */ | ||
492 | #define GPIO103_CIF_DD_3 103 /* Camera data pin 3 */ | ||
493 | #define GPIO104_CIF_DD_2 104 /* Camera data pin 2 */ | ||
494 | +#define GPIO104_pSKTSEL 104 /* PCMCIA Socket Select (PXA27x) */ | ||
495 | #define GPIO105_CIF_DD_1 105 /* Camera data pin 1 */ | ||
496 | #define GPIO106_CIF_DD_9 106 /* Camera data pin 9 */ | ||
497 | #define GPIO107_CIF_DD_8 107 /* Camera data pin 8 */ | ||