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]
Message-ID: <56FC9979.1070905@electromag.com.au>
Date:	Thu, 31 Mar 2016 11:28:57 +0800
From:	Phil Reid <preid@...ctromag.com.au>
To:	Yong Li <sdliyong@...il.com>, linus.walleij@...aro.org,
	gnurou@...il.com, linux-gpio@...r.kernel.org,
	linux-kernel@...r.kernel.org, alexander.stein@...tec-electronic.com
Subject: Re: [PATCH v2] gpio: pca953x: Use correct u16 value for register word
 write

On 30/03/2016 2:49 PM, Yong Li wrote:
> The current implementation only uses the first byte in val,
> the second byte is always 0. Change it to use cpu_to_le16
> to write the two bytes into the register
>
> Signed-off-by: Yong Li <sdliyong@...il.com>

Reviewed-by: Phil Reid <preid@...ctromag.com.au>
> ---
>   drivers/gpio/gpio-pca953x.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpio/gpio-pca953x.c b/drivers/gpio/gpio-pca953x.c
> index d0d3065..e66084c 100644
> --- a/drivers/gpio/gpio-pca953x.c
> +++ b/drivers/gpio/gpio-pca953x.c
> @@ -18,6 +18,7 @@
>   #include <linux/i2c.h>
>   #include <linux/platform_data/pca953x.h>
>   #include <linux/slab.h>
> +#include <asm/unaligned.h>
>   #include <linux/of_platform.h>
>   #include <linux/acpi.h>
>
> @@ -159,7 +160,7 @@ static int pca953x_write_regs(struct pca953x_chip *chip, int reg, u8 *val)
>   		switch (chip->chip_type) {
>   		case PCA953X_TYPE:
>   			ret = i2c_smbus_write_word_data(chip->client,
> -							reg << 1, (u16) *val);
> +			    reg << 1, cpu_to_le16(get_unaligned((u16 *)val)));
>   			break;
>   		case PCA957X_TYPE:
>   			ret = i2c_smbus_write_byte_data(chip->client, reg << 1,
>


-- 
Regards
Phil Reid

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ