gpio/pch_gpio: Fix output value of pch_gpio_direction_output()
authorPeter Tyser <ptyser@xes-inc.com>
Fri, 25 Mar 2011 15:04:00 +0000 (10:04 -0500)
committerGrant Likely <grant.likely@secretlab.ca>
Thu, 31 Mar 2011 21:17:40 +0000 (15:17 -0600)
The pch_gpio_direction_output() function was missing a write to set the
desired output value.  The function would properly set the GPIO
direction, but not the output value.  The value would have to manually
be set with a follow up call to pch_gpio_set().

Add the missing write so that pch_gpio_direction_output() sets both the
GPIO direction and value.

Signed-off-by: Peter Tyser <ptyser@xes-inc.com>
Tested-by: Tomoya MORINAGA <tomoya-linux@dsn.okisemi.com>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
drivers/gpio/pch_gpio.c

index 2c6af87051030b1017cc5670fcbfd2bfddad61fa..f970a5f3585e03b5395b74f32f6103d21a67128d 100644 (file)
@@ -105,6 +105,7 @@ static int pch_gpio_direction_output(struct gpio_chip *gpio, unsigned nr,
                reg_val |= (1 << nr);
        else
                reg_val &= ~(1 << nr);
+       iowrite32(reg_val, &chip->reg->po);
 
        mutex_unlock(&chip->lock);