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-next>] [day] [month] [year] [list]
Date:	Thu, 24 Jun 2010 18:11:01 +0530
From:	"Datta, Shubhrajyoti" <shubhrajyoti@...com>
To:	"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>
CC:	Jonathan Cameron <kernel@...23.retrosnub.co.uk>,
	Christoph Mair <christoph.mair@...il.com>,
	Andrew Morton <akpm@...ux-foundation.org>
Subject: [PATCH] BMP085  : Change the macro to swap 


Changing the macro to swap the bytes as the reason that the first byte is the MSB and the next is LSB.

Signed-off-by: Shubhrajyoti D <shubhrajyoti@...com>
---
 drivers/misc/bmp085.c |   41 +++++++++++++++++++++++++++++------------
 1 files changed, 29 insertions(+), 12 deletions(-)

diff --git a/drivers/misc/bmp085.c b/drivers/misc/bmp085.c
index 8af6f1b..74c5b12 100644
--- a/drivers/misc/bmp085.c
+++ b/drivers/misc/bmp085.c
@@ -79,18 +79,35 @@ static s32 bmp085_read_calibration_data(struct i2c_client *client)
 
 	if (status != BMP085_CALIBRATION_DATA_LENGTH*sizeof(u16))
 		return -EIO;
-
-	cali->AC1 =  be16_to_cpu(tmp[0]);
-	cali->AC2 =  be16_to_cpu(tmp[1]);
-	cali->AC3 =  be16_to_cpu(tmp[2]);
-	cali->AC4 =  be16_to_cpu(tmp[3]);
-	cali->AC5 =  be16_to_cpu(tmp[4]);
-	cali->AC6 = be16_to_cpu(tmp[5]);
-	cali->B1 = be16_to_cpu(tmp[6]);
-	cali->B2 = be16_to_cpu(tmp[7]);
-	cali->MB = be16_to_cpu(tmp[8]);
-	cali->MC = be16_to_cpu(tmp[9]);
-	cali->MD = be16_to_cpu(tmp[10]);
+/*
+ * From the datasheet
+ *
+ * BMP085 Reg Addr
+ * parameter	|	MSB	|	LSB
+ * AC1		|	0xAA	|	0xAB
+ * AC2		|	0xAC	|	0xAD
+ * AC3		|	0xAE	|	0xAF
+ * AC4		|	0xB0	|	0xB1
+ * AC5		|	0xB2	|	0xB3
+ * AC6		|	0xB4	|	0xB5
+ * B1		|	0xB6	|	0xB7
+ * B2		|	0xB8	|	0xB9
+ * MB		|	0xBA	|	0xBB
+ * MC		|	0xBC	|	0xBD
+ * MC		|	0xBE	|	0xBF
+ *
+ */
+	cali->AC1 =  swab16(tmp[0]);
+	cali->AC2 =  swab16(tmp[1]);
+	cali->AC3 =  swab16(tmp[2]);
+	cali->AC4 =  swab16(tmp[3]);
+	cali->AC5 =  swab16(tmp[4]);
+	cali->AC6 = swab16(tmp[5]);
+	cali->B1 = swab16(tmp[6]);
+	cali->B2 = swab16(tmp[7]);
+	cali->MB = swab16(tmp[8]);
+	cali->MC = swab16(tmp[9]);
+	cali->MD = swab16(tmp[10]);
 	return 0;
 }
 
-- 
1.5.4.7

--
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