diff options
author | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-04 16:15:48 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-04 16:15:48 -0500 |
commit | 42270035c6550101f7dc742a630c2590dd2d3ae0 (patch) | |
tree | 7b3d198f01b5c4c6b64f4cedf747f729438b7247 /arch/arm/mach-omap2/board-h4.c | |
parent | 2c89a8d09f03bc569d3237d97e2293d67c36d75d (diff) | |
parent | 8d91cbad8e6fd5b37bf584740f134508709ba035 (diff) |
Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm: (30 commits)
[ARM] Acorn: move the i2c bus driver into drivers/i2c
[ARM] ARM SCSI: Don't try to dma_map_sg too many scatterlist entries
[ARM] ARM FAS216: don't modify scsi_cmnd request_bufflen
[ARM] rtc-pcf8583: Final fixes for this RTC on RiscPC
[ARM] rtc-pcf8583: correct month and year offsets
[ARM] rtc-pcf8583: don't use BCD_TO_BIN/BIN_TO_BCD
[ARM] EBSA110: Work around build errors
[ARM] 4241/1: Define mb() as compiler barrier on a uniprocessor system
[ARM] 4239/1: S3C24XX: Update kconfig entries for PM
[ARM] 4238/1: S3C24XX: docs: update suspend and resume
[ARM] 4237/2: oprofile: Always allow backtraces on ARM
[ARM] Yet more asm/apm-emulation.h stuff
ARM: OMAP: Add missing get_irqnr_preamble and arch_ret_to_user for omap2
ARM: OMAP: Use linux/delay.h not asm/delay.h
ARM: OMAP: Remove obsolete alsa typedefs
ARM: OMAP: omap1510->15xx conversions needed for sx1
ARM: OMAP: Add missing includes to board-nokia770
ARM: OMAP: Workqueue changes for board-h4.c
ARM: OMAP: dmtimer.c omap1 register fix
ARM: OMAP: board-nokia770: correct lcd name
...
Diffstat (limited to 'arch/arm/mach-omap2/board-h4.c')
-rw-r--r-- | arch/arm/mach-omap2/board-h4.c | 13 |
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/arm/mach-omap2/board-h4.c b/arch/arm/mach-omap2/board-h4.c index 3b1ad1d981a3..1e7ed6d22ca9 100644 --- a/arch/arm/mach-omap2/board-h4.c +++ b/arch/arm/mach-omap2/board-h4.c | |||
@@ -39,7 +39,6 @@ | |||
39 | #include "prcm-regs.h" | 39 | #include "prcm-regs.h" |
40 | 40 | ||
41 | #include <asm/io.h> | 41 | #include <asm/io.h> |
42 | #include <asm/delay.h> | ||
43 | 42 | ||
44 | static unsigned int row_gpios[6] = { 88, 89, 124, 11, 6, 96 }; | 43 | static unsigned int row_gpios[6] = { 88, 89, 124, 11, 6, 96 }; |
45 | static unsigned int col_gpios[7] = { 90, 91, 100, 36, 12, 97, 98 }; | 44 | static unsigned int col_gpios[7] = { 90, 91, 100, 36, 12, 97, 98 }; |
@@ -179,9 +178,11 @@ static int h4_select_irda(struct device *dev, int state) | |||
179 | return err; | 178 | return err; |
180 | } | 179 | } |
181 | 180 | ||
182 | static void set_trans_mode(void *data) | 181 | static void set_trans_mode(struct work_struct *work) |
183 | { | 182 | { |
184 | int *mode = data; | 183 | struct omap_irda_config *irda_config = |
184 | container_of(work, struct omap_irda_config, gpio_expa.work); | ||
185 | int mode = irda_config->mode; | ||
185 | unsigned char expa; | 186 | unsigned char expa; |
186 | int err = 0; | 187 | int err = 0; |
187 | 188 | ||
@@ -191,7 +192,7 @@ static void set_trans_mode(void *data) | |||
191 | 192 | ||
192 | expa &= ~0x01; | 193 | expa &= ~0x01; |
193 | 194 | ||
194 | if (!(*mode & IR_SIRMODE)) { /* MIR/FIR */ | 195 | if (!(mode & IR_SIRMODE)) { /* MIR/FIR */ |
195 | expa |= 0x01; | 196 | expa |= 0x01; |
196 | } | 197 | } |
197 | 198 | ||
@@ -204,9 +205,9 @@ static int h4_transceiver_mode(struct device *dev, int mode) | |||
204 | { | 205 | { |
205 | struct omap_irda_config *irda_config = dev->platform_data; | 206 | struct omap_irda_config *irda_config = dev->platform_data; |
206 | 207 | ||
208 | irda_config->mode = mode; | ||
207 | cancel_delayed_work(&irda_config->gpio_expa); | 209 | cancel_delayed_work(&irda_config->gpio_expa); |
208 | PREPARE_WORK(&irda_config->gpio_expa, set_trans_mode, &mode); | 210 | PREPARE_DELAYED_WORK(&irda_config->gpio_expa, set_trans_mode); |
209 | #error this is not permitted - mode is an argument variable | ||
210 | schedule_delayed_work(&irda_config->gpio_expa, 0); | 211 | schedule_delayed_work(&irda_config->gpio_expa, 0); |
211 | 212 | ||
212 | return 0; | 213 | return 0; |