diff options
| author | Arnd Bergmann <arnd@arndb.de> | 2012-08-13 16:45:48 +0200 | 
|---|---|---|
| committer | Arnd Bergmann <arnd@arndb.de> | 2012-08-13 16:45:48 +0200 | 
| commit | 19e4ab54e7f5fe46a3c931afa7e786f11d57b558 (patch) | |
| tree | aeada0b9d0800b94cb795020a856c625ddc4f41c /drivers/char/nwflash.c | |
| parent | 0d7614f09c1ebdbaa1599a5aba7593f147bf96ee (diff) | |
| parent | fa8bbb13ab49e77c00fa09e5504ec25b7176fb4b (diff) | |
| download | olio-linux-3.10-19e4ab54e7f5fe46a3c931afa7e786f11d57b558.tar.xz olio-linux-3.10-19e4ab54e7f5fe46a3c931afa7e786f11d57b558.zip  | |
Merge branch 'for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds into next/drivers
From Bryan Wu <bryan.wu@canonical.com>:
Based on Linus Walleij's ARM LED consolidation work, this patchset introduce a
new generic led trigger for CPU not only for ARM but also for others.
For enabling CPU idle event, CPU arch code should call ledtrig_cpu() stub to
trigger idle start or idle end event.
These patches convert old style LED driver in arch/arm to gpio_led or new led
driver interface. Against 3.5 release and build successfully for all the machines.
Test ledtrig-cpu driver on OMAP4 Panda board.
v9 --> v10
 * fix compiling issue on versatile_defconfig reported by Russell King
 * rebase to 3.5 kernel and move patches to new git tree
v8 --> v9:
 * use mutex to replace rw_sema pointed out by Tim Gardner
 * add a new struct led_trigger_cpu
 * add lock_is_inited to record mutex lock initialization
v6 --> v7:
 * add a patch to unify the led-trigger name
 * fix some typo pointed
 * use BUG_ON to detect CPU numbers during building stage
v5 --> v6:
 * replace  __get_cpu_var() to per_cpu()
 * remove smp_processor_id() which is wrong with for_each_possible_cpu()
 * test on real OMAP4 Panda board
 * add comments about CPU hotplug in the CPU LED trigger driver
v4 --> v5:
 * rebase all the patches on top of latest linux-next
 * replace on_each_cpu() with for_each_possible_cpu()
 * add some description of ledtrig_cpu() API
 * remove old leds code from driver nwflash.c, which should use a new led trigger then
 * this trigger driver can be built as module now
v3 --> v4:
 * fix a typo pointed by Jochen Friedrich
 * fix some building errors
 * add Reviewed-by and Tested-by into patch log
v2 --> v3:
 * almost rewrote the whole ledtrig-cpu driver, which is more simple
 * every CPU will have a per-CPU trigger
 * cpu trigger can be assigned to any leds
 * fix a lockdep issue in led-trigger common code
 * other fix according to review
v1 --> v2:
 * remove select operations in Kconfig of every machines
 * add back supporting of led in core module of mach-integrator
 * solidate name scheme in ledtrig-cpu.c
 * add comments of CPU_LED_* cpu led events
 * fold patches of RealView and Versatile together
 * add machine_is_ check during assabet led driver init
 * add some Acked-by in patch logs
 * remove code for simpad machine in machine-sa11000, since Jochen Friedrich
   introduced gpiolib and gpio-led driver for simpad
 * on Assabet and Netwinder machine, LED operations is reversed like:
   setting bit means turn off leds
   clearing bit means turn on leds
 * add a new function to read CM_CTRL register for led driver
* 'for-arm-soc' of git://git.kernel.org/pub/scm/linux/kernel/git/cooloney/linux-leds:
  ARM: use new LEDS CPU trigger stub to replace old one
  ARM: mach-sa1100: retire custom LED code
  ARM: mach-omap1: retire custom LED code
  ARM: mach-pnx4008: remove including old leds event API header file
  ARM: plat-samsung: remove including old leds event API header file
  ARM: mach-pxa: retire custom LED code
  char: nwflash: remove old led event code
  ARM: mach-footbridge: retire custom LED code
  ARM: mach-ebsa110: retire custom LED code
  ARM: mach-clps711x: retire custom LED code of P720T machine
  ARM: mach-integrator: retire custom LED code
  ARM: mach-integrator: move CM_CTRL to header file for accessing by other functions
  ARM: mach-orion5x: convert custom LED code to gpio_led and LED CPU trigger
  ARM: mach-shark: retire custom LED code
  ARM: mach-ks8695: remove leds driver, since nobody use it
  ARM: mach-realview and mach-versatile: retire custom LED code
  ARM: at91: convert old leds drivers to gpio_led and led_trigger drivers
  led-triggers: create a trigger for CPU activity
Conflicts:
	arch/arm/mach-clps711x/p720t.c
	arch/arm/mach-sa1100/leds-cerf.c
	arch/arm/mach-sa1100/leds-lart.c
Let's hope this is the last time we pull this and it doesn't cause
more trouble. I have verified that version 10 causes no build
warnings or errors any more, and the patches still look good.
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'drivers/char/nwflash.c')
| -rw-r--r-- | drivers/char/nwflash.c | 34 | 
1 files changed, 0 insertions, 34 deletions
diff --git a/drivers/char/nwflash.c b/drivers/char/nwflash.c index d45c3345b4a..a0e2f7d7035 100644 --- a/drivers/char/nwflash.c +++ b/drivers/char/nwflash.c @@ -30,7 +30,6 @@  #include <asm/hardware/dec21285.h>  #include <asm/io.h> -#include <asm/leds.h>  #include <asm/mach-types.h>  #include <asm/uaccess.h> @@ -179,9 +178,6 @@ static ssize_t flash_write(struct file *file, const char __user *buf,  	written = 0; -	leds_event(led_claim); -	leds_event(led_green_on); -  	nBlock = (int) p >> 16;	//block # of 64K bytes  	/* @@ -258,11 +254,6 @@ static ssize_t flash_write(struct file *file, const char __user *buf,  			printk(KERN_DEBUG "flash_write: written 0x%X bytes OK.\n", written);  	} -	/* -	 * restore reg on exit -	 */ -	leds_event(led_release); -  	mutex_unlock(&nwflash_mutex);  	return written; @@ -334,11 +325,6 @@ static int erase_block(int nBlock)  	int temp, temp1;  	/* -	 * orange LED == erase -	 */ -	leds_event(led_amber_on); - -	/*  	 * reset footbridge to the correct offset 0 (...0..3)  	 */  	*CSR_ROMWRITEREG = 0; @@ -446,12 +432,6 @@ static int write_block(unsigned long p, const char __user *buf, int count)  	unsigned long timeout;  	unsigned long timeout1; -	/* -	 * red LED == write -	 */ -	leds_event(led_amber_off); -	leds_event(led_red_on); -  	pWritePtr = (unsigned char *) ((unsigned int) (FLASH_BASE + p));  	/* @@ -558,17 +538,9 @@ static int write_block(unsigned long p, const char __user *buf, int count)  					       pWritePtr - FLASH_BASE);  				/* -				 * no LED == waiting -				 */ -				leds_event(led_amber_off); -				/*  				 * wait couple ms  				 */  				msleep(10); -				/* -				 * red LED == write -				 */ -				leds_event(led_red_on);  				goto WriteRetry;  			} else { @@ -583,12 +555,6 @@ static int write_block(unsigned long p, const char __user *buf, int count)  		}  	} -	/* -	 * green LED == read/verify -	 */ -	leds_event(led_amber_off); -	leds_event(led_green_on); -  	msleep(10);  	pWritePtr = (unsigned char *) ((unsigned int) (FLASH_BASE + p));  |