mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Roger Quadros <rogerq@ti.com>
To: <balbi@ti.com>, <sameo@linux.intel.com>, <tony@atomide.com>
Cc: <paul@pwsan.com>, <keshava_mgowda@ti.com>, <sshtylyov@mvista.com>,
	<bjorn@mork.no>, <rogerq@ti.com>, <linux-usb@vger.kernel.org>,
	<linux-omap@vger.kernel.org>,
	<linux-arm-kernel@lists.infradead.org>,
	<linux-kernel@vger.kernel.org>
Subject: [PATCH v4 08/23] mfd: omap-usb-tll: Fix error message
Date: Mon, 10 Dec 2012 12:20:18 +0200	[thread overview]
Message-ID: <1355134833-5199-9-git-send-email-rogerq@ti.com> (raw)
In-Reply-To: <1355134833-5199-1-git-send-email-rogerq@ti.com>

omap_enable/disable_tll() can fail if TLL device is not
initialized. It could be due to multiple reasons and not only
due to missing platform data.

Also make local variables static and use 'struct device *'
instead of 'struct platform_device *' for global reference.

Signed-off-by: Roger Quadros <rogerq@ti.com>
---
 drivers/mfd/omap-usb-tll.c |   21 ++++++++++++---------
 1 files changed, 12 insertions(+), 9 deletions(-)

diff --git a/drivers/mfd/omap-usb-tll.c b/drivers/mfd/omap-usb-tll.c
index 8b596e0..38d0532 100644
--- a/drivers/mfd/omap-usb-tll.c
+++ b/drivers/mfd/omap-usb-tll.c
@@ -109,8 +109,8 @@ struct usbtll_omap {
 
 /*-------------------------------------------------------------------------*/
 
-const char usbtll_driver_name[] = USBTLL_DRIVER_NAME;
-struct platform_device	*tll_pdev;
+static const char usbtll_driver_name[] = USBTLL_DRIVER_NAME;
+static struct device	*tll_dev;
 
 /*-------------------------------------------------------------------------*/
 
@@ -334,7 +334,8 @@ static int __devinit usbtll_omap_probe(struct platform_device *pdev)
 
 	spin_unlock_irqrestore(&tll->lock, flags);
 	pm_runtime_put_sync(dev);
-	tll_pdev = pdev;
+	/* only after this can omap_tll_enable/disable work */
+	tll_dev = dev;
 
 	return 0;
 
@@ -356,6 +357,8 @@ static int __devexit usbtll_omap_remove(struct platform_device *pdev)
 	struct usbtll_omap *tll = platform_get_drvdata(pdev);
 	int i;
 
+	tll_dev = NULL;
+
 	for (i = 0; i < tll->nch; i++)
 		clk_put(tll->ch_clk[i]);
 
@@ -435,21 +438,21 @@ static struct platform_driver usbtll_omap_driver = {
 
 int omap_tll_enable(void)
 {
-	if (!tll_pdev) {
-		pr_err("missing omap usbhs tll platform_data\n");
+	if (!tll_dev) {
+		pr_err("%s: OMAP USB TLL not initialized\n", __func__);
 		return  -ENODEV;
 	}
-	return pm_runtime_get_sync(&tll_pdev->dev);
+	return pm_runtime_get_sync(tll_dev);
 }
 EXPORT_SYMBOL_GPL(omap_tll_enable);
 
 int omap_tll_disable(void)
 {
-	if (!tll_pdev) {
-		pr_err("missing omap usbhs tll platform_data\n");
+	if (!tll_dev) {
+		pr_err("%s: OMAP USB TLL not initialized\n", __func__);
 		return  -ENODEV;
 	}
-	return pm_runtime_put_sync(&tll_pdev->dev);
+	return pm_runtime_put_sync(tll_dev);
 }
 EXPORT_SYMBOL_GPL(omap_tll_disable);
 
-- 
1.7.4.1


  parent reply	other threads:[~2012-12-10 10:21 UTC|newest]

Thread overview: 40+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-10 10:20 [PATCH v4 00/23] OMAP USB Host cleanup Roger Quadros
2012-12-10 10:20 ` [PATCH v4 01/23] mfd: omap-usb-host: get rid of cpu_is_omap..() macros Roger Quadros
2012-12-13 21:49   ` Tony Lindgren
2012-12-14  0:54     ` Samuel Ortiz
2012-12-14 18:30       ` Tony Lindgren
2012-12-10 10:20 ` [PATCH v4 02/23] mfd: omap-usb-tll: Avoid creating copy of platform data Roger Quadros
2012-12-10 10:20 ` [PATCH v4 03/23] mfd: omap-usb-tll: Fix channel count detection Roger Quadros
2012-12-10 10:20 ` [PATCH v4 04/23] mfd: omap-usb-tll: Use devm_kzalloc/ioremap and clean up error path Roger Quadros
2012-12-10 10:20 ` [PATCH v4 05/23] mfd: omap-usb-tll: Clean up clock handling Roger Quadros
2012-12-10 10:20 ` [PATCH v4 06/23] mfd: omap-usb-tll: introduce and use mode_needs_tll() Roger Quadros
2012-12-10 10:20 ` [PATCH v4 07/23] mfd: omap-usb-tll: Check for missing platform data in probe Roger Quadros
2012-12-10 10:20 ` Roger Quadros [this message]
2012-12-10 10:20 ` [PATCH v4 09/23] mfd: omap-usb-tll: serialize access to TLL device Roger Quadros
2012-12-10 10:20 ` [PATCH v4 10/23] mfd: omap-usb-tll: Add OMAP5 revision and HSIC support Roger Quadros
2012-12-10 10:20 ` [PATCH v4 11/23] mfd: omap_usb_host: Avoid creating copy of platform_data Roger Quadros
2012-12-10 10:20 ` [PATCH v4 12/23] mfd: omap-usb-host: Use devm_kzalloc() and devm_request_and_ioremap() Roger Quadros
2012-12-10 10:20 ` [PATCH v4 13/23] mfd: omap-usb-host: know about number of ports from revision register Roger Quadros
2012-12-10 10:20 ` [PATCH v4 14/23] mfd: omap-usb-host: override number of ports from platform data Roger Quadros
2012-12-10 10:20 ` [PATCH v4 15/23] mfd: omap-usb-host: cleanup clock management code Roger Quadros
2012-12-10 10:20 ` [PATCH v4 16/23] ARM: OMAP2+: clock data: Merge utmi_px_gfclk into usb_host_hs_utmi_px_clk Roger Quadros
2012-12-14 18:28   ` Tony Lindgren
2012-12-14 18:44     ` Paul Walmsley
2012-12-17  8:13       ` Benoit Cousson
2012-12-17 16:13         ` Roger Quadros
2012-12-17 16:27           ` Benoit Cousson
2012-12-17 21:03             ` Paul Walmsley
2012-12-10 10:20 ` [PATCH v4 17/23] mfd: omap-usb-host: Manage HSIC clocks for HSIC mode Roger Quadros
2012-12-10 10:20 ` [PATCH v4 18/23] mfd: omap-usb-host: Get rid of unnecessary spinlock Roger Quadros
2012-12-10 10:20 ` [PATCH v4 19/23] mfd: omap-usb-host: clean up omap_usbhs_init() Roger Quadros
2012-12-10 10:20 ` [PATCH v4 20/23] USB: ehci-omap: Don't free gpios that we didn't request Roger Quadros
2012-12-10 10:20 ` [PATCH v4 21/23] ARM: OMAP3: clock data: get rid of unused USB host clock aliases and dummies Roger Quadros
2012-12-10 17:24   ` Paul Walmsley
2012-12-10 10:20 ` [PATCH v4 22/23] ARM: OMAP4: clock data: get rid of unused USB host clock aliases Roger Quadros
2012-12-10 17:26   ` Paul Walmsley
2012-12-10 10:20 ` [PATCH v4 23/23] mfd: omap-usb-host: Don't spam console on clk_set_parent failure Roger Quadros
2012-12-10 11:24   ` Rajendra Nayak
2012-12-10 11:31     ` Roger Quadros
2012-12-10 14:38       ` Felipe Balbi
2012-12-13 10:44 ` [PATCH v4 00/23] OMAP USB Host cleanup Roger Quadros
2012-12-13 10:40   ` Felipe Balbi

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=1355134833-5199-9-git-send-email-rogerq@ti.com \
    --to=rogerq@ti.com \
    --cc=balbi@ti.com \
    --cc=bjorn@mork.no \
    --cc=keshava_mgowda@ti.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-usb@vger.kernel.org \
    --cc=paul@pwsan.com \
    --cc=sameo@linux.intel.com \
    --cc=sshtylyov@mvista.com \
    --cc=tony@atomide.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

all inboxes | Powered by JetHome®