1
0
mirror of https://git.openwrt.org/openwrt/openwrt.git synced 2024-11-18 22:43:53 +01:00

Bring mach-bcm947xx/gpio.h into line with new SSB code, as per #1640

SVN-Revision: 7814
This commit is contained in:
Peter Denison 2007-06-30 23:10:22 +00:00
parent b24263a9b6
commit c63f9b3097

@ -18,10 +18,10 @@ static inline void gpio_free(unsigned gpio)
static inline int gpio_direction_input(unsigned gpio)
{
if (ssb.chipco->dev)
ssb_chipco_gpioouten(&ssb.chipco, 1 << gpio, 0);
else if (ssb.extif->dev)
ssb_extif_gpioouten(&ssb.extif, 1 << gpio, 0);
if (ssb.chipco.dev)
ssb_chipco_gpio_outen(&ssb.chipco, 1 << gpio, 0);
else if (ssb.extif.dev)
ssb_extif_gpio_outen(&ssb.extif, 1 << gpio, 0);
else
return -EINVAL;
return 0;
@ -29,10 +29,10 @@ static inline int gpio_direction_input(unsigned gpio)
static inline int gpio_direction_output(unsigned gpio)
{
if (ssb.chipco->dev)
ssb_chipco_gpioouten(&ssb.chipco, 1 << gpio, 1 << gpio);
else if (ssb.extif->dev)
ssb_extif_gpioouten(&ssb.extif, 1 << gpio, 1 << gpio);
if (ssb.chipco.dev)
ssb_chipco_gpio_outen(&ssb.chipco, 1 << gpio, 1 << gpio);
else if (ssb.extif.dev)
ssb_extif_gpio_outen(&ssb.extif, 1 << gpio, 1 << gpio);
else
return -EINVAL;
@ -44,9 +44,9 @@ static inline int gpio_to_irq(unsigned gpio)
{
struct ssb_device *dev;
dev = ssb.chipco->dev;
dev = ssb.chipco.dev;
if (!dev)
dev = ssb.extif->dev;
dev = ssb.extif.dev;
if (!dev)
return -EINVAL;
@ -61,20 +61,20 @@ static inline int irq_to_gpio(unsigned gpio)
static inline int gpio_get_value(unsigned gpio)
{
if (ssb.chipco->dev)
return ssb_chipco_gpioin(&ssb.chipco, 1 << gpio) ? 1 : 0;
else if (ssb.extif->dev)
return ssb_extif_gpioin(&ssb.extif, 1 << gpio) ? 1 : 0;
if (ssb.chipco.dev)
return ssb_chipco_gpio_in(&ssb.chipco, 1 << gpio) ? 1 : 0;
else if (ssb.extif.dev)
return ssb_extif_gpio_in(&ssb.extif, 1 << gpio) ? 1 : 0;
else
return 0;
}
static inline int gpio_set_value(unsigned gpio, int value)
{
if (ssb.chipco->dev)
ssb_chipco_gpioout(&ssb.chipco, 1 << gpio, (value ? 1 << gpio : 0));
else if (ssb.extif->dev)
ssb_extif_gpioout(&ssb.extif, 1 << gpio, (value ? 1 << gpio : 0));
if (ssb.chipco.dev)
ssb_chipco_gpio_out(&ssb.chipco, 1 << gpio, (value ? 1 << gpio : 0));
else if (ssb.extif.dev)
ssb_extif_gpio_out(&ssb.extif, 1 << gpio, (value ? 1 << gpio : 0));
return 0;
}