[Armadeus-commitlog] armadeus branch, master, updated. release-3.2-507-g9d9d471
Brought to you by:
sszy
|
From: Julien B a. A. <ar...@us...> - 2010-06-25 17:20:03
|
This is an automated email from the git hooks/post-receive script. It was
generated because a ref change was pushed to the repository containing
the project "armadeus".
The branch, master has been updated
via 9d9d471c44c8df8d92bd4ccd07de7efb0cd98b73 (commit)
from 31cfdef71c95d991a4bf41d72a68a64744b89692 (commit)
Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.
- Log -----------------------------------------------------------------
commit 9d9d471c44c8df8d92bd4ccd07de7efb0cd98b73
Author: Julien Boibessot <jul...@ar...>
Date: Fri Jun 25 19:19:32 2010 +0200
The role of a patch is not to change the indentation of the patched file but rather try to be as small as possible in order to maintainable
-----------------------------------------------------------------------
Summary of changes:
...ing_mangling_capability_on_i2c_mxc_driver.patch | 133 +++++---------------
1 files changed, 29 insertions(+), 104 deletions(-)
diff --git a/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/358-armadeus-imx-adding_mangling_capability_on_i2c_mxc_driver.patch b/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/358-armadeus-imx-adding_mangling_capability_on_i2c_mxc_driver.patch
index 4b0d46d..731ba59 100644
--- a/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/358-armadeus-imx-adding_mangling_capability_on_i2c_mxc_driver.patch
+++ b/buildroot/target/device/armadeus/linux/kernel-patches/2.6.29/358-armadeus-imx-adding_mangling_capability_on_i2c_mxc_driver.patch
@@ -4,8 +4,8 @@ Signed-off-by: Fabien Marteau <fab...@ar...>
Index: linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c
===================================================================
---- linux-2.6.29.6.orig/drivers/i2c/busses/i2c-mxc.c 2010-06-25 18:19:38.000000000 +0200
-+++ linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c 2010-06-25 18:23:43.000000000 +0200
+--- linux-2.6.29.6.orig/drivers/i2c/busses/i2c-mxc.c 2010-06-25 18:56:39.000000000 +0200
++++ linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c 2010-06-25 19:09:05.000000000 +0200
@@ -45,6 +45,7 @@
struct clk *clk;
bool low_power;
@@ -14,48 +14,33 @@ Index: linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c
} imx_i2c_device;
/*
-@@ -99,7 +100,9 @@
- */
- for (;;) {
- unsigned int sr = readw(dev->membase + MXC_I2SR);
-- if ((sr & MXC_I2SR_IBB) == 0) break;
-+ if ((sr & MXC_I2SR_IBB) == 0) {
-+ break;
-+ }
- if (retry-- <= 0) {
- #ifdef I2C_DEBUG
- printk(KERN_DEBUG "Bus busy\n");
-@@ -118,7 +121,13 @@
+@@ -118,7 +119,12 @@
*/
static int imx_i2c_wait_for_tc(imx_i2c_device * dev, int trans_flag)
{
- int retry = 4;
+ int retry;
+
-+ if (trans_flag & I2C_M_IGNORE_NAK) {
++ if (trans_flag & I2C_M_IGNORE_NAK)
+ retry = 1;
-+ } else {
++ else
+ retry = 4;
-+ }
while (retry-- && !transfer_done) {
wait_event_interruptible_timeout(dev->wq,
-@@ -138,8 +147,12 @@
+@@ -138,7 +144,10 @@
#ifdef I2C_DEBUG
printk(KERN_DEBUG "Data not transmitted\n");
#endif
- return -1;
-- }
-+ if (trans_flag & I2C_M_IGNORE_NAK) {
++ if (trans_flag & I2C_M_IGNORE_NAK)
+ return 0;
-+ } else {
++ else
+ return -1;
-+ }
-+ }
+ }
return 0;
- }
-@@ -156,7 +169,9 @@
+@@ -156,7 +165,9 @@
* in the data register
*/
addr_trans = msg->addr << 1;
@@ -66,7 +51,7 @@ Index: linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c
addr_trans |= 0x01;
}
-@@ -196,7 +211,9 @@
+@@ -196,7 +207,9 @@
* in the data register
*/
addr_trans = msg->addr << 1;
@@ -77,30 +62,7 @@ Index: linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c
addr_trans |= 0x01;
}
cr = readw(dev->membase + MXC_I2CR);
-@@ -227,17 +244,19 @@
- /*
- * Clear the TXAK bit to gen an ack when receiving only one byte.
- */
-- if (len == 1)
-+ if (len == 1) {
- cr |= MXC_I2CR_TXAK;
-- else
-+ } else {
- cr &= ~MXC_I2CR_TXAK;
-+ }
-
- writew(cr, dev->membase + MXC_I2CR);
- /*
- * Dummy read only at the end of an address cycle
- */
-- if (addr_comp > 0)
-+ if (addr_comp > 0) {
- readw(dev->membase + MXC_I2DR);
-+ }
-
- for (i = 0; i < len; i++) {
- /* Wait for data transmission to complete */
-@@ -245,14 +264,21 @@
+@@ -245,10 +258,15 @@
imx_i2c_stop(dev);
return -1;
}
@@ -111,32 +73,14 @@ Index: linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c
if (i == (len - 2)) {
cr = readw(dev->membase + MXC_I2CR);
- cr |= MXC_I2CR_TXAK;
-+ if ((msg->flags & I2C_M_NO_RD_ACK) == 0) {
++ if ((msg->flags & I2C_M_NO_RD_ACK) == 0)
+ cr |= MXC_I2CR_TXAK;
-+ } else {
++ else
+ cr &= ~MXC_I2CR_TXAK;
-+ }
writew(cr, dev->membase + MXC_I2CR);
} else if (i == (len - 1)) {
-- if (last)
-+ if (last) {
- imx_i2c_stop(dev);
-+ }
- }
- /* Read the data */
- *buf++ = readw(dev->membase + MXC_I2DR);
-@@ -333,8 +359,9 @@
- return -EREMOTEIO;
- }
-
-- if (num < 1)
-+ if (num < 1) {
- return 0;
-+ }
-
- imx_i2c_module_en(dev, msgs[0].flags);
- sr = readw(dev->membase + MXC_I2SR);
-@@ -352,6 +379,7 @@
+ if (last)
+@@ -352,6 +370,7 @@
tx_success = false;
for (i = 0; i < num && ret >= 0; i++) {
addr_comp = 0;
@@ -144,36 +88,28 @@ Index: linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c
/*
* Send the slave address and transfer direction in the
* address cycle
-@@ -372,16 +400,18 @@
- * changed or the transfer direction changed
- */
+@@ -374,12 +393,14 @@
if ((msgs[i].addr != msgs[i - 1].addr) ||
-- ((msgs[i].flags & I2C_M_RD) !=
-- (msgs[i - 1].flags & I2C_M_RD))) {
+ ((msgs[i].flags & I2C_M_RD) !=
+ (msgs[i - 1].flags & I2C_M_RD))) {
- imx_i2c_repstart(dev, &msgs[i]);
- /* Wait for the address cycle to complete */
- if (imx_i2c_wait_for_tc(dev, msgs[i].flags)) {
- imx_i2c_stop(dev);
- imx_i2c_module_dis(dev);
- return -EREMOTEIO;
-- }
-- addr_comp = 1;
-+ ((msgs[i].flags & I2C_M_RD) !=
-+ (msgs[i - 1].flags & I2C_M_RD))) {
-+ if ((msgs[i].flags & I2C_M_NOSTART) == 0) {
-+ imx_i2c_repstart(dev, &msgs[i]);
-+ /* Wait for the address cycle to complete */
-+ if (imx_i2c_wait_for_tc(dev, msgs[i].flags)) {
-+ imx_i2c_stop(dev);
-+ imx_i2c_module_dis(dev);
-+ return -EREMOTEIO;
-+ }
++ if ((msgs[i].flags & I2C_M_NOSTART) == 0) {
++ imx_i2c_repstart(dev, &msgs[i]);
++ /* Wait for the address cycle to complete */
++ if (imx_i2c_wait_for_tc(dev, msgs[i].flags)) {
++ imx_i2c_stop(dev);
++ imx_i2c_module_dis(dev);
++ return -EREMOTEIO;
+ }
-+ addr_comp = 1;
+ }
+ addr_comp = 1;
}
- }
-
-@@ -414,7 +444,7 @@
+@@ -414,7 +435,7 @@
*/
static u32 imx_i2c_func(struct i2c_adapter *adap)
{
@@ -182,14 +118,3 @@ Index: linux-2.6.29.6/drivers/i2c/busses/i2c-mxc.c
}
/*
-@@ -505,8 +535,9 @@
- {
- imx_i2c_device *mxcdev = platform_get_drvdata(pdev);
-
-- if (mxcdev == NULL)
-+ if (mxcdev == NULL) {
- return -1;
-+ }
-
- mxcdev->low_power = false;
- mxcdev->pdata->init(pdev);
hooks/post-receive
--
armadeus
|