lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date:	Fri, 25 Mar 2011 10:04:00 -0500
From:	Peter Tyser <ptyser@...-inc.com>
To:	linux-kernel@...r.kernel.org
Cc:	Peter Tyser <ptyser@...-inc.com>,
	Tomoya MORINAGA <tomoya-linux@....okisemi.com>,
	Toshiharu Okada <toshiharu-linux@....okisemi.com>,
	Grant Likely <grant.likely@...retlab.ca>
Subject: [PATCH] gpio: pch_gpio: Fix output value of pch_gpio_direction_output()

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@...-inc.com>
Cc: Tomoya MORINAGA <tomoya-linux@....okisemi.com>
Cc: Toshiharu Okada <toshiharu-linux@....okisemi.com>
Cc: Grant Likely <grant.likely@...retlab.ca>
---
Just noticed this driver has the same bug.  This file looks nearly identical
to ml_ioh_gpio.c.  They could likely be combined with minimal effort.

 drivers/gpio/pch_gpio.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)

diff --git a/drivers/gpio/pch_gpio.c b/drivers/gpio/pch_gpio.c
index c59d953..fa52862 100644
--- a/drivers/gpio/pch_gpio.c
+++ b/drivers/gpio/pch_gpio.c
@@ -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);
 
-- 
1.7.0.4

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ