lkml.org 
[lkml]   [2004]   [Dec]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
Subject[PATCH] lcd: replace cli()/sti() with spin_lock_irqsave()/spin_unlock_irqrestore()
Date
Remove the cli()/sti() calls in drivers/char/lcd.c

Signed-off-by: James Nelson <james4765@gmail.com>

diff -urN --exclude='*~' linux-2.6.10-rc3-mm1-original/drivers/char/lcd.c linux-2.6.10-rc3-mm1/drivers/char/lcd.c
--- linux-2.6.10-rc3-mm1-original/drivers/char/lcd.c 2004-12-03 16:53:42.000000000 -0500
+++ linux-2.6.10-rc3-mm1/drivers/char/lcd.c 2004-12-17 18:57:10.760197439 -0500
@@ -33,6 +33,8 @@

#include "lcd.h"

+static spinlock_t lcd_lock = SPIN_LOCK_UNLOCKED;
+
static int lcd_ioctl(struct inode *inode, struct file *file,
unsigned int cmd, unsigned long arg);

@@ -464,14 +466,13 @@
}

printk("Churning and Burning -");
- save_flags(flags);
for (i = 0; i < FLASH_SIZE; i = i + 128) {

if (copy_from_user
(rom, display.RomImage + i, 128))
return -EFAULT;
burn_addr = kFlashBase + i;
- cli();
+ spin_lock_irqsave(&lcd_lock, flags);
for (index = 0; index < (128); index++) {

WRITE_FLASH(kFlash_Addr1,
@@ -492,7 +493,7 @@
}
burn_addr++;
}
- restore_flags(flags);
+ spin_unlock_irqrestore(&lcd_lock, flags);
if (*
((volatile unsigned char *) (burn_addr
- 1)) ==
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2005-03-22 14:08    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site