diff options
author | Olof Johansson <olof@lixom.net> | 2012-10-01 14:33:55 -0700 |
---|---|---|
committer | Olof Johansson <olof@lixom.net> | 2012-10-01 14:33:55 -0700 |
commit | 8b1a13b02812b60b88920801363920956691feb3 (patch) | |
tree | cf140e1dfd5754aef0a59003cf9266aad003b8f5 /arch/arm/mach-ks8695/leds.c | |
parent | 5c008d7029fcd12a9a54fa618781b71353f6c4bd (diff) | |
parent | 04ef037c926ddb31088c976538e29eada4fd1490 (diff) |
Merge branch 'next/drivers' into HEAD
Conflicts:
arch/arm/boot/dts/omap4.dtsi
arch/arm/mach-clps711x/common.c
arch/arm/mach-omap1/board-h2.c
arch/arm/mach-omap1/board-h3.c
arch/arm/mach-omap1/leds-h2p2-debug.c
arch/arm/mach-omap1/leds.c
arch/arm/mach-pnx4008/time.c
arch/arm/plat-omap/debug-leds.c
drivers/Makefile
drivers/bus/omap_l3_noc.c
Diffstat (limited to 'arch/arm/mach-ks8695/leds.c')
-rw-r--r-- | arch/arm/mach-ks8695/leds.c | 92 |
1 files changed, 0 insertions, 92 deletions
diff --git a/arch/arm/mach-ks8695/leds.c b/arch/arm/mach-ks8695/leds.c deleted file mode 100644 index 4bd70754729..00000000000 --- a/arch/arm/mach-ks8695/leds.c +++ /dev/null @@ -1,92 +0,0 @@ -/* - * LED driver for KS8695-based boards. - * - * Copyright (C) Andrew Victor - * - * This program is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License version 2 as - * published by the Free Software Foundation. - */ -#include <linux/gpio.h> -#include <linux/kernel.h> -#include <linux/module.h> -#include <linux/init.h> - -#include <asm/leds.h> -#include <mach/devices.h> - - -static inline void ks8695_led_on(unsigned int led) -{ - gpio_set_value(led, 0); -} - -static inline void ks8695_led_off(unsigned int led) -{ - gpio_set_value(led, 1); -} - -static inline void ks8695_led_toggle(unsigned int led) -{ - unsigned long is_off = gpio_get_value(led); - if (is_off) - ks8695_led_on(led); - else - ks8695_led_off(led); -} - - -/* - * Handle LED events. - */ -static void ks8695_leds_event(led_event_t evt) -{ - unsigned long flags; - - local_irq_save(flags); - - switch(evt) { - case led_start: /* System startup */ - ks8695_led_on(ks8695_leds_cpu); - break; - - case led_stop: /* System stop / suspend */ - ks8695_led_off(ks8695_leds_cpu); - break; - -#ifdef CONFIG_LEDS_TIMER - case led_timer: /* Every 50 timer ticks */ - ks8695_led_toggle(ks8695_leds_timer); - break; -#endif - -#ifdef CONFIG_LEDS_CPU - case led_idle_start: /* Entering idle state */ - ks8695_led_off(ks8695_leds_cpu); - break; - - case led_idle_end: /* Exit idle state */ - ks8695_led_on(ks8695_leds_cpu); - break; -#endif - - default: - break; - } - - local_irq_restore(flags); -} - - -static int __init leds_init(void) -{ - if ((ks8695_leds_timer == -1) || (ks8695_leds_cpu == -1)) - return -ENODEV; - - leds_event = ks8695_leds_event; - - leds_event(led_start); - return 0; -} - -__initcall(leds_init); |