[PATCH 2/2] staging: ft1000: remove code indention

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



modified the code to keep the logic same but removed some indention.

Signed-off-by: Sudip Mukherjee <sudip@xxxxxxxxxxxxxxx>
---

this patch will generate checkpatch warning about line more than 80char,
and too many use of tab. but unless the total function is rewrtten it will
be difficult to fix that.

 drivers/staging/ft1000/ft1000-usb/ft1000_debug.c | 44 +++++++++++-------------
 1 file changed, 21 insertions(+), 23 deletions(-)

diff --git a/drivers/staging/ft1000/ft1000-usb/ft1000_debug.c b/drivers/staging/ft1000/ft1000-usb/ft1000_debug.c
index 86dd699..584c59a 100644
--- a/drivers/staging/ft1000/ft1000-usb/ft1000_debug.c
+++ b/drivers/staging/ft1000/ft1000-usb/ft1000_debug.c
@@ -587,32 +587,30 @@ static long ft1000_ioctl(struct file *file, unsigned int command,
 				if (qtype) {
 				} else {
 					/* Put message into Slow Queue */
-					/* Only put a message into the DPRAM if msg doorbell is available */
-					ft1000_read_register(ft1000dev, &tempword, FT1000_REG_DOORBELL);
-					/* pr_debug("READ REGISTER tempword=%x\n", tempword); */
-					if (tempword & FT1000_DB_DPRAM_TX) {
-						/* Suspend for 2ms and try again due to DSP doorbell busy */
-						mdelay(2);
+					u8 cnt = 0;
+
+					do {
+						/* Only put a message into the DPRAM if msg doorbell is available */
 						ft1000_read_register(ft1000dev, &tempword, FT1000_REG_DOORBELL);
+						/* pr_debug("READ REGISTER tempword=%x\n", tempword); */
 						if (tempword & FT1000_DB_DPRAM_TX) {
+							/* Suspend for 2ms and try again due to DSP doorbell busy */
+							if (cnt == 0)
+								mdelay(2);
 							/* Suspend for 1ms and try again due to DSP doorbell busy */
-							mdelay(1);
-							ft1000_read_register(ft1000dev, &tempword, FT1000_REG_DOORBELL);
-							if (tempword & FT1000_DB_DPRAM_TX) {
-								ft1000_read_register(ft1000dev, &tempword, FT1000_REG_DOORBELL);
-								if (tempword & FT1000_DB_DPRAM_TX) {
-									/* Suspend for 3ms and try again due to DSP doorbell busy */
-									mdelay(3);
-									ft1000_read_register(ft1000dev, &tempword, FT1000_REG_DOORBELL);
-									if (tempword & FT1000_DB_DPRAM_TX) {
-										pr_debug("Doorbell not available\n");
-										result = -ENOTTY;
-										kfree(dpram_data);
-										break;
-									}
-								}
-							}
-						}
+							else if (cnt == 1)
+								mdelay(1);
+							/* Suspend for 3ms and try again due to DSP doorbell busy */
+							else
+								mdelay(3);
+						} else
+							break;
+					} while (++cnt < 3);
+					if (tempword & FT1000_DB_DPRAM_TX) {
+						pr_debug("Doorbell not available\n");
+						result = -ENOTTY;
+						kfree(dpram_data);
+						break;
 					}
 
 					/*pr_debug("finished reading register\n"); */
-- 
1.8.1.2

_______________________________________________
devel mailing list
devel@xxxxxxxxxxxxxxxxxxxxxx
http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel




[Index of Archives]     [Linux Driver Backports]     [DMA Engine]     [Linux GPIO]     [Linux SPI]     [Video for Linux]     [Linux USB Devel]     [Linux Coverity]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux