public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
From: Carlos Aguiar <carlos.aguiar@indt.org.br>
To: ext Hiroshi DOYU <Hiroshi.DOYU@nokia.com>
Cc: linux-omap-open-source@linux.omap.com
Subject: Re: [patch 5/5] MMC OMAP DBG CLEANUP
Date: Thu, 09 Mar 2006 10:58:44 -0400	[thread overview]
Message-ID: <441042A4.7070707@indt.org.br> (raw)
In-Reply-To: <20060308102739.b3e2958d.Hiroshi.DOYU@nokia.com>

[-- Attachment #1: Type: text/plain, Size: 724 bytes --]

Hi folks,

Find below my propose of debug cleanup in omap.c. I'm working now in a 
merging
of omap.c into mainline kernel 
(http://marc.theaimsgroup.com/?l=linux-kernel&m=114176508216915&w=2).

Following the Russell King's suggestion, there's no need to print
host->id - mmc_dev(host->mmc) will print the platform device bus_id,
which is generated from the platform device name and the platform
device id. This change was applied for dev_err, dev_dbg, dev_warn
and dev_info.

All suggestions and comments are welcome!

BR,

Carlos.

-- 
Carlos Eduardo
Software Engineer
Nokia Institute of Technology - INdT
Embedded Linux Laboratory - 10LE
Phone: +55 92 2126-1079
Mobile: +55 92 8127-1797
E-mail: carlos.aguiar@indt.org.br


[-- Attachment #2: mmc_omap_debug.diff --]
[-- Type: text/plain, Size: 12836 bytes --]

Index: linux-omap-2.6.git/drivers/mmc/omap.c
===================================================================
--- linux-omap-2.6.git.orig/drivers/mmc/omap.c	2006-02-24 12:14:09.000000000 -0400
+++ linux-omap-2.6.git/drivers/mmc/omap.c	2006-03-09 10:29:37.000000000 -0400
@@ -50,13 +50,6 @@
 
 #define DRIVER_NAME "mmci-omap"
 
-#ifdef CONFIG_MMC_DEBUG
-#define DBG(x...)	pr_debug(x)
-//#define DBG(x...)	printk(x)
-#else
-#define DBG(x...)	do { } while (0)
-#endif
-
 /* Specifies how often in millisecs to poll for card status changes
  * when the cover switch is open */
 #define OMAP_MMC_SWITCH_POLL_DELAY	500
@@ -160,13 +153,6 @@ mmc_omap_start_command(struct mmc_omap_h
 	u32 resptype;
 	u32 cmdtype;
 
-	pr_debug("MMC%d: CMD%d, argument 0x%08x%s%s%s%s\n",
-		host->id, cmd->opcode, cmd->arg,
-		(cmd->flags & MMC_RSP_SHORT) ?  ", 32-bit response" : "",
-		(cmd->flags & MMC_RSP_LONG) ?  ", 128-bit response" : "",
-		(cmd->flags & MMC_RSP_CRC) ?  ", CRC" : "",
-		(cmd->flags & MMC_RSP_BUSY) ?  ", busy notification" : "");
-
 	host->cmd = cmd;
 
 	resptype = 0;
@@ -309,7 +295,7 @@ mmc_omap_dma_timer(unsigned long data)
 {
 	struct mmc_omap_host *host = (struct mmc_omap_host *) data;
 
-	DBG("MMC%d: Freeing DMA channel %d\n", host->id, host->dma_ch);
+	dev_dbg(mmc_dev(host->mmc), "Freeing DMA channel %d\n", host->dma_ch);
 	BUG_ON(host->dma_ch < 0);
 	omap_free_dma(host->dma_ch);
 	host->dma_ch = -1;
@@ -351,7 +337,7 @@ mmc_omap_cmd_done(struct mmc_omap_host *
 		cmd->resp[0] =
 			OMAP_MMC_READ(host->base, RSP6) |
 			(OMAP_MMC_READ(host->base, RSP7) << 16);
-		DBG("MMC%d: Response %08x %08x %08x %08x\n", host->id,
+		dev_dbg(mmc_dev(host->mmc), "Response %08x %08x %08x %08x\n",
 		    cmd->resp[0], cmd->resp[1],
 		    cmd->resp[2], cmd->resp[3]);
 	} else {
@@ -359,15 +345,15 @@ mmc_omap_cmd_done(struct mmc_omap_host *
 		cmd->resp[0] =
 			OMAP_MMC_READ(host->base, RSP6) |
 			(OMAP_MMC_READ(host->base, RSP7) << 16);
-		DBG("MMC%d: Response %08x\n", host->id, cmd->resp[0]);
+		dev_dbg(mmc_dev(host->mmc), "Response %08x\n", cmd->resp[0]);
 		if (card_ready) {
-			pr_debug("MMC%d: Faking card ready based on EOFB\n", host->id);
+			dev_dbg(mmc_dev(host->mmc), "Faking card ready based on EOFB\n");
 			cmd->resp[0] |= R1_READY_FOR_DATA;
 		}
 	}
 
 	if (host->data == NULL || cmd->error != MMC_ERR_NONE) {
-		DBG("MMC%d: End request, err %x\n", host->id, cmd->error);
+		dev_dbg(mmc_dev(host->mmc), "End request, err %x\n", cmd->error);
 		if (host->data != NULL)
 			del_timer_sync(&host->xfer_timer);
  		host->mrq = NULL;
@@ -381,7 +367,7 @@ mmc_omap_xfer_timeout(unsigned long data
 {
 	struct mmc_omap_host *host = (struct mmc_omap_host *) data;
 
-	printk(KERN_ERR "MMC%d: Data xfer timeout\n", host->id);
+	dev_err(mmc_dev(host->mmc), "Data xfer timeout\n");
 	if (host->data != NULL) {
 		host->data->error |= MMC_ERR_TIMEOUT;
 		/* Perform a pseudo-reset of the MMC core logic, since
@@ -468,7 +454,7 @@ static irqreturn_t mmc_omap_irq(int irq,
 
 	if (host->cmd == NULL && host->data == NULL) {
 		status = OMAP_MMC_READ(host->base, STAT);
-		printk(KERN_INFO "MMC%d: Spurious interrupt 0x%04x\n", host->id, status);
+		dev_info(mmc_dev(host->mmc), "spurious irq 0x%04x\n", status);
 		if (status != 0) {
 			OMAP_MMC_WRITE(host->base, STAT, status);
 			OMAP_MMC_WRITE(host->base, IE, 0);
@@ -484,8 +470,8 @@ static irqreturn_t mmc_omap_irq(int irq,
 	while ((status = OMAP_MMC_READ(host->base, STAT)) != 0) {
 		OMAP_MMC_WRITE(host->base, STAT, status); // Reset status bits
 #ifdef CONFIG_MMC_DEBUG
-		printk(KERN_DEBUG "\tMMC IRQ %04x (CMD %d): ", status,
-		       host->cmd != NULL ? host->cmd->opcode : -1);
+		dev_dbg(mmc_dev(host->mmc), "MMC IRQ %04x (CMD %d): ",
+			status, host->cmd != NULL ? host->cmd->opcode : -1);
 		mmc_omap_report_irq(status);
 		printk("\n");
 #endif
@@ -504,7 +490,7 @@ static irqreturn_t mmc_omap_irq(int irq,
 
 		if (status & OMAP_MMC_STAT_DATA_TOUT) {
 			// Data timeout
-			printk(KERN_DEBUG "MMC%d: Data timeout\n", host->id);
+			dev_dbg(mmc_dev(host->mmc), "data timeout\n");
 			if (host->data) {
 				host->data->error |= MMC_ERR_TIMEOUT;
 				transfer_error = 1;
@@ -515,12 +501,12 @@ static irqreturn_t mmc_omap_irq(int irq,
 			// Data CRC error
 			if (host->data) {
 				host->data->error |= MMC_ERR_BADCRC;
-				printk(KERN_DEBUG "MMC%d: Data CRC error, bytes left %d\n",
-				       host->id, host->total_bytes_left);
+				dev_dbg(mmc_dev(host->mmc),
+					 "data CRC error, bytes left %d\n",
+					host->total_bytes_left);
 				transfer_error = 1;
 			} else {
-				printk(KERN_DEBUG "MMC%d: Data CRC error\n",
-				       host->id);
+				dev_dbg(mmc_dev(host->mmc), "data CRC error\n");
 			}
 		}
 
@@ -528,11 +514,14 @@ static irqreturn_t mmc_omap_irq(int irq,
 			/* Timeouts are routine with some commands */
 			if (host->cmd) {
 				if (host->cmd->opcode != MMC_ALL_SEND_CID &&
-				    host->cmd->opcode != MMC_SEND_OP_COND &&
-				    host->cmd->opcode != MMC_APP_CMD &&
-				    !mmc_omap_cover_is_open(host))
-					printk(KERN_ERR "MMC%d: Command timeout, CMD%d\n",
-					       host->id, host->cmd->opcode);
+						host->cmd->opcode !=
+						MMC_SEND_OP_COND &&
+						host->cmd->opcode !=
+						MMC_APP_CMD &&
+						!mmc_omap_cover_is_open(host))
+					dev_err(mmc_dev(host->mmc),
+						"command timeout, CMD %d\n",
+						host->cmd->opcode);
 				host->cmd->error |= MMC_ERR_TIMEOUT;
 				end_command = 1;
 			}
@@ -541,21 +530,21 @@ static irqreturn_t mmc_omap_irq(int irq,
 		if (status & OMAP_MMC_STAT_CMD_CRC) {
 			// Command CRC error
 			if (host->cmd) {
-				printk(KERN_ERR "MMC%d: Command CRC error (CMD%d, arg 0x%08x)\n",
-				       host->id, host->cmd->opcode,
-				       host->cmd->arg);
+				dev_err(mmc_dev(host->mmc),
+					"command CRC error (CMD%d, arg 0x%08x)\n",
+					host->cmd->opcode, host->cmd->arg);
 				host->cmd->error |= MMC_ERR_BADCRC;
 				end_command = 1;
 			} else
-				printk(KERN_ERR "MMC%d: Command CRC error without cmd?\n", host->id);
+				dev_err(mmc_dev(host->mmc),
+					"command CRC error without cmd?\n");
 		}
 
 		if (status & OMAP_MMC_STAT_OCR_BUSY) {
 			/* OCR Busy ... happens a lot */
 			if (host->cmd && host->cmd->opcode != MMC_SEND_OP_COND
 				&& host->cmd->opcode != MMC_SET_RELATIVE_ADDR) {
-				DBG("MMC%d: OCR busy error, CMD%d\n",
-				       host->id, host->cmd->opcode);
+				dev_dbg(mmc_dev(host->mmc), "OCR busy error, CMD%d\n", host->cmd->opcode);
 			}
 		}
 
@@ -573,8 +562,8 @@ static irqreturn_t mmc_omap_irq(int irq,
 			}
 
 			// Card status error
-			printk(KERN_DEBUG "MMC%d: Card status error (CMD%d)\n",
-			       host->id, host->cmd->opcode);
+			dev_dbg(mmc_dev(host->mmc), "card status error (CMD%d)\n",
+				host->cmd->opcode);
 			if (host->cmd) {
 				host->cmd->error |= MMC_ERR_FAILED;
 				end_command = 1;
@@ -623,8 +612,7 @@ static irqreturn_t mmc_omap_switch_irq(i
 	int cover_open, detect_now;
 
 	cover_open = mmc_omap_cover_is_open(host);
-	DBG("MMC%d cover is now %s\n", host->id,
-	    cover_open ? "open" : "closed");
+	dev_dbg(mmc_dev(host->mmc), "cover is now %s\n", cover_open ? "open" : "closed");
 	set_irq_type(OMAP_GPIO_IRQ(host->switch_pin), 0);
 	detect_now = 0;
 	if (host->switch_last_state != cover_open) {
@@ -691,16 +679,16 @@ static void mmc_omap_switch_handler(void
 		kobject_uevent(&host->dev->kobj, KOBJ_CHANGE);
 		host->switch_last_state = cover_open;
 	}
-	DBG("MMC cover switch handler started\n");
+	dev_dbg(mmc_dev(host->mmc), "MMC cover switch handler started\n");
 	mmc_detect_change(host->mmc, 0);
 	list_for_each_entry(card, &host->mmc->cards, node) {
 		if (mmc_card_present(card))
 			cards++;
 	}
-	DBG("MMC%d: %d card(s) present\n", host->id, cards);
+	dev_dbg(mmc_dev(host->mmc), "%d card(s) present\n", cards);
 	if (cover_open) {
 		if (!complained) {
-			printk(KERN_INFO "MMC%d: cover is open\n", host->id);
+			dev_info(mmc_dev(host->mmc), "cover is open");
 			complained = 1;
 		}
 		if (cover_open && (cards || mmc_omap_enable_poll))
@@ -802,17 +790,16 @@ static void mmc_omap_dma_cb(int lch, u16
 	struct mmc_data *mmcdat = host->data;
 
 	if (unlikely(host->dma_ch < 0)) {
-		printk(KERN_ERR "MMC%d: DMA callback while DMA not enabled\n",
-		       host->id);
+		dev_err(mmc_dev(host->mmc), "DMA callback while DMA not enabled\n");
 		return;
 	}
 	/* FIXME: We really should do something to _handle_ the errors */
 	if (ch_status & OMAP_DMA_TOUT_IRQ) {
-		printk(KERN_ERR "MMC%d: DMA timeout\n", host->id);
+		dev_err(mmc_dev(host->mmc), "DMA timeout\n");
 		return;
 	}
 	if (ch_status & OMAP_DMA_DROP_IRQ) {
-		printk(KERN_ERR "MMC%d: DMA sync error\n", host->id);
+		dev_err(mmc_dev(host->mmc), "DMA sync error\n");
 		return;
 	}
 	if (!(ch_status & OMAP_DMA_BLOCK_IRQ)) {
@@ -820,16 +807,13 @@ static void mmc_omap_dma_cb(int lch, u16
 		 * just SYNC status ...
 		 */
 		if ((ch_status & ~OMAP1_DMA_SYNC_IRQ))
-			pr_debug("MMC%d: DMA channel status: %04x\n",
-			       host->id, ch_status);
+			dev_dbg(mmc_dev(host->mmc), "DMA channel status: %04x\n", ch_status);
 		return;
 	}
 	mmcdat->bytes_xfered += host->dma_len;
 
-	pr_debug("\tMMC DMA %d bytes CB %04x (%d segments to go), %p\n",
-		host->dma_len, ch_status,
+	dev_dbg(mmc_dev(host->mmc), "DMA %d bytes CB %04x (%d segments to go), %p\n", host->dma_len, ch_status,
 		host->sg_len - host->sg_idx - 1, host->data);
-
 	host->sg_idx++;
 	if (host->sg_idx < host->sg_len) {
 		mmc_omap_prepare_dma(host, host->data);
@@ -872,8 +856,7 @@ static int mmc_omap_get_dma_channel(stru
 	r = omap_request_dma(sync_dev, dev_name, mmc_omap_dma_cb,
 			     host, &dma_ch);
 	if (r != 0) {
-		printk("MMC%d: omap_request_dma() failed with %d\n",
-		       host->id, r);
+		dev_dbg(mmc_dev(host->mmc), "omap_request_dma() failed with %d\n", r);
 		return r;
 	}
 	host->dma_ch = dma_ch;
@@ -1049,13 +1032,12 @@ static void mmc_omap_request(struct mmc_
 			static int complained = 0;
 
 			if (!complained) {
-				printk(KERN_WARNING "MMC%d: Broken card workaround enabled\n",
-				       host->id);
+				dev_warn(mmc_dev(host->mmc), "Broken card workaround enabled\n");
 				complained = 1;
 			}
 			if (in_interrupt()) {
 				/* This is nasty */
-				 printk(KERN_ERR "Sleeping in IRQ handler, FIXME please!\n");
+				dev_err(mmc_dev(host->mmc), "Sleeping in IRQ handler, FIXME please!\n");
 				 dump_stack();
 				 mdelay(100);
 			} else {
@@ -1128,8 +1110,8 @@ static void mmc_omap_set_ios(struct mmc_
 	int dsor;
 	int realclock, i;
 
-	DBG("MMC%d: set_ios: clock %dHz busmode %d powermode %d Vdd %d.%02d\n",
-	    host->id, ios->clock, ios->bus_mode, ios->power_mode,
+	dev_dbg(mmc_dev(host->mmc), "set_ios: clock %dHz busmode %d powermode %d Vdd %d.%02d\n",
+	    ios->clock, ios->bus_mode, ios->power_mode,
 	    ios->vdd / 100, ios->vdd % 100);
 
 	if (ios->power_mode == MMC_POWER_UP && ios->clock < 400000)
@@ -1221,7 +1203,7 @@ static int __init mmc_omap_probe(struct 
 
 	if (pdev->resource[0].flags != IORESOURCE_MEM
 	    || pdev->resource[1].flags != IORESOURCE_IRQ) {
-		printk(KERN_ERR "mmc_omap_probe: invalid resource type\n");
+		dev_err(&pdev->dev, "mmc_omap_probe: invalid resource type\n");
 		return -ENODEV;
 	}
 
@@ -1301,8 +1283,7 @@ static int __init mmc_omap_probe(struct 
 
 	if (host->power_pin >= 0) {
 		if ((ret = omap_request_gpio(host->power_pin)) != 0) {
-			printk(KERN_ERR "MMC%d: Unable to get GPIO pin for MMC power\n",
-			       host->id);
+			dev_err(mmc_dev(host->mmc), "Unable to get GPIO pin for MMC power\n");
 			goto out;
 		}
 		omap_set_gpio_direction(host->power_pin, 0);
@@ -1323,8 +1304,7 @@ static int __init mmc_omap_probe(struct 
 		host->switch_timer.function = mmc_omap_switch_timer;
 		host->switch_timer.data = (unsigned long) host;
 		if (omap_request_gpio(host->switch_pin) != 0) {
-			printk(KERN_WARNING "MMC%d: Unable to get GPIO pin for MMC cover switch\n",
-			       host->id);
+			dev_warn(mmc_dev(host->mmc), "Unable to get GPIO pin for MMC cover switch\n");
 			host->switch_pin = -1;
 			goto no_switch;
 		}
@@ -1335,8 +1315,7 @@ static int __init mmc_omap_probe(struct 
 				  SA_TRIGGER_RISING | SA_TRIGGER_FALLING,
 				  DRIVER_NAME, host);
 		if (ret) {
-			printk(KERN_WARNING "MMC%d: Unable to get IRQ for MMC cover switch\n",
-			       host->id);
+			dev_warn(mmc_dev(host->mmc), "Unable to get IRQ for MMC cover switch\n");
 			omap_free_gpio(host->switch_pin);
 			host->switch_pin = -1;
 			goto no_switch;
@@ -1348,8 +1327,7 @@ static int __init mmc_omap_probe(struct 
 				device_remove_file(&pdev->dev, &dev_attr_cover_switch);
 		}
 		if (ret) {
-			printk(KERN_WARNING "MMC%d: Unable to create sysfs attributes\n", 
-			       host->id);
+			dev_warn(mmc_dev(host->mmc), "Unable to create sysfs attributes\n");
 			free_irq(OMAP_GPIO_IRQ(host->switch_pin), host);
 			omap_free_gpio(host->switch_pin);
 			host->switch_pin = -1;

[-- Attachment #3: Type: text/plain, Size: 0 bytes --]



      reply	other threads:[~2006-03-09 14:58 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <20060307171122.002855000@localhost.localdomain>
2006-03-08  8:27 ` [patch 1/5] MMC BUGFIX TRIVIAL STUFFS Hiroshi DOYU
2006-03-08  8:27 ` [patch 2/5] MMC MULTIPLE SLOT SUPPORT BASE Hiroshi DOYU
2006-03-08  8:27 ` [patch 3/5] SD MULTIPLE SUPPORT Hiroshi DOYU
2006-03-08  8:27 ` [patch 4/5] MMC HOTSWAP SUPPORT Hiroshi DOYU
2006-03-08  8:27 ` [patch 5/5] MMC OMAP DBG CLEANUP Hiroshi DOYU
2006-03-09 14:58   ` Carlos Aguiar [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=441042A4.7070707@indt.org.br \
    --to=carlos.aguiar@indt.org.br \
    --cc=Hiroshi.DOYU@nokia.com \
    --cc=linux-omap-open-source@linux.omap.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox