blob: acd6a90127de1e4593ac09b2489a70377f0a40e4 [file] [log] [blame]
Thomas Chou836fcc52010-04-30 11:34:14 +08001/*
2 * Status LED driver based on GPIO access conventions of Linux
3 *
4 * Copyright (C) 2010 Thomas Chou <thomas@wytron.com.tw>
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License version 2 as
8 * published by the Free Software Foundation.
9 */
10
11#include <common.h>
12#include <status_led.h>
13#include <asm/gpio.h>
14
15/* assume led is active low */
16
17void __led_init(led_id_t mask, int state)
18{
19 gpio_direction_output(mask, (state == STATUS_LED_ON) ? 0 : 1);
20}
21
22void __led_set(led_id_t mask, int state)
23{
24 gpio_set_value(mask, (state == STATUS_LED_ON) ? 0 : 1);
25}
26
27void __led_toggle(led_id_t mask)
28{
29 gpio_set_value(mask, !gpio_get_value(mask));
30}