All of lore.kernel.org
 help / color / mirror / Atom feed
From: Peter Barada <peterb@logicpd.com>
To: linux-omap <linux-omap@vger.kernel.org>
Subject: Question regarding MUSB and dynamic fifo sizing
Date: Thu, 06 Aug 2009 16:10:41 -0400	[thread overview]
Message-ID: <1249589441.10885.75.camel@blitz> (raw)

I'm running into a problem where the MUSB controller stops talking with
the hardwired device on the other end, and I wasn to unload the musb as
a module and reload it to the connection working again.

I can compile MSUB as a module, but when I load it the 2nd time it
complains with:

OMAP-35x# modprobe musb_hdrc
musb_hdrc: version 6.0, pio, otg (peripheral+host), debug=0
musb_core_init 1421: reconfigure software for static FIFOs
musb_hdrc musb_hdrc: musb_init_controller failed with status -19

This is due to the platform device wanting dynamic fifo sizing but the
CONFIGDATA register has DYNFIFO bit cleared.  Looking through the TRM, I
can't find informaiton on how the MUSB controller changes the state of
DYNFIFO - I'm guessing once any of the dynamic registers are written to
that the controller switches to Dynamic Fifo sizing.

The code that aborts is:

	if (reg & MUSB_CONFIGDATA_DYNFIFO) {
		if (musb->config->dyn_fifo)
			status = ep_config_from_table(musb);
		else {
			ERR("reconfigure software for Dynamic FIFOs\n");
			status = -ENODEV;
		}
	} else {
		if (!musb->config->dyn_fifo)
			status = ep_config_from_hw(musb);
		else {
			ERR("reconfigure software for static FIFOs\n");
			return -ENODEV;
		}
	}

1) How can one change from dynamic to static fifo sizing in the MUSB?

2) Would it be safe to program for dynamic fifo sizing if CONFIG_DATA
indicates the fifos are Statically sized?


-- 
Peter Barada <peterb@logicpd.com>
Logic Product Development, Inc.

             reply	other threads:[~2009-08-06 20:06 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-08-06 20:10 Peter Barada [this message]
2009-08-06 20:11 ` Question regarding MUSB and dynamic fifo sizing Gadiyar, Anand
2009-08-07 17:23   ` Peter Barada
2009-08-07 17:25     ` Pandita, Vikram
2009-08-07 17:55       ` Peter Barada
2009-08-07 19:22       ` Peter Barada
2009-08-07 20:17         ` Felipe Balbi
2009-08-08  6:43           ` Felipe Balbi
2009-08-08  7:17             ` Felipe Balbi
2009-08-10 14:33               ` Peter Barada
2009-08-10 16:16                 ` Felipe Balbi
2009-08-10 17:00                   ` Peter Barada
2009-08-10 17:02                     ` Felipe Balbi
2009-08-10 17:28                       ` Peter Barada
2009-08-10 18:48                         ` Felipe Balbi
2009-08-10 20:42                           ` Peter Barada
2009-08-11  6:33                             ` Felipe Balbi
2009-08-11 15:21                               ` Peter Barada
2009-08-11 20:51                                 ` Felipe Balbi
2009-08-11 21:17                                   ` Peter Barada
2009-08-11 21:17                                     ` Felipe Balbi
2009-08-20 16:29                                       ` Peter Barada
2009-08-08  3:04         ` Gupta, Ajay Kumar
2009-08-08  5:03           ` Pandita, Vikram

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=1249589441.10885.75.camel@blitz \
    --to=peterb@logicpd.com \
    --cc=linux-omap@vger.kernel.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.