Преглед на файлове

gpio/ml_ioh_gpio: Fix output value of ioh_gpio_direction_output()

The ioh_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 ioh_gpio_set().

Add the missing write so that ioh_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>
Peter Tyser преди 14 години
родител
ревизия
ba43861277
променени са 1 файла, в които са добавени 1 реда и са изтрити 0 реда
  1. 1 0
      drivers/gpio/ml_ioh_gpio.c

+ 1 - 0
drivers/gpio/ml_ioh_gpio.c

@@ -116,6 +116,7 @@ static int ioh_gpio_direction_output(struct gpio_chip *gpio, unsigned nr,
 		reg_val |= (1 << nr);
 		reg_val |= (1 << nr);
 	else
 	else
 		reg_val &= ~(1 << nr);
 		reg_val &= ~(1 << nr);
+	iowrite32(reg_val, &chip->reg->regs[chip->ch].po);
 
 
 	mutex_unlock(&chip->lock);
 	mutex_unlock(&chip->lock);