mirror of
git://projects.qi-hardware.com/openwrt-xburst.git
synced 2024-09-12 07:01:10 +03:00
Make the architecture gpio more readable
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@8504 3c298f89-4303-0410-b956-a3cf2f4a3e73
This commit is contained in:
parent
a1da927102
commit
2fddc9a438
@ -15,8 +15,12 @@
|
|||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/delay.h>
|
#include <linux/delay.h>
|
||||||
|
|
||||||
#define RDC3210_CFGREG_ADDR 0x0CF8
|
#include <asm/mach-rdc/rdc321x_defs.h>
|
||||||
#define RDC3210_CFGREG_DATA 0x0CFC
|
|
||||||
|
static inline int rdc_gpio_is_valid(unsigned gpio)
|
||||||
|
{
|
||||||
|
return ((gpio > RDC_MAX_GPIO) ? 0 : 1);
|
||||||
|
}
|
||||||
|
|
||||||
static unsigned int rdc_gpio_read(unsigned gpio)
|
static unsigned int rdc_gpio_read(unsigned gpio)
|
||||||
{
|
{
|
||||||
@ -47,7 +51,8 @@ static void rdc_gpio_write(unsigned int val)
|
|||||||
|
|
||||||
int rdc_gpio_get_value(unsigned gpio)
|
int rdc_gpio_get_value(unsigned gpio)
|
||||||
{
|
{
|
||||||
return (gpio>0x3A?-EINVAL:(int)rdc_gpio_read(gpio));
|
if (rdc_gpio_is_valid(gpio))
|
||||||
|
return (int)rdc_gpio_read(gpio);
|
||||||
}
|
}
|
||||||
EXPORT_SYMBOL(rdc_gpio_get_value);
|
EXPORT_SYMBOL(rdc_gpio_get_value);
|
||||||
|
|
||||||
@ -55,7 +60,9 @@ void rdc_gpio_set_value(unsigned gpio, int value)
|
|||||||
{
|
{
|
||||||
unsigned int val;
|
unsigned int val;
|
||||||
|
|
||||||
if (gpio > 0x3A) return;
|
if (!rdc_gpio_is_valid(gpio))
|
||||||
|
return;
|
||||||
|
|
||||||
val = rdc_gpio_read(gpio);
|
val = rdc_gpio_read(gpio);
|
||||||
|
|
||||||
if (value)
|
if (value)
|
||||||
|
Loading…
Reference in New Issue
Block a user