public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Alexander Holler <holler@ahsoftware.de>
To: balbi@ti.com
Cc: linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org
Subject: Re: musb as module broken in 2.6.38
Date: Wed, 16 Mar 2011 10:47:21 +0100	[thread overview]
Message-ID: <4D808729.9060608@ahsoftware.de> (raw)
In-Reply-To: <20110316090327.GA2325@legolas.emea.dhcp.ti.com>

Am 16.03.2011 10:03, schrieb Felipe Balbi:
> Hi,
>
> On Wed, Mar 16, 2011 at 02:55:53AM +0100, Alexander Holler wrote:
>> in commit dc09886bfa781e2b442301116c18199519e36f0f the name of the
>> platform-driver was splitted and musb-omap2430 is used for several
>> boards (arch/arm/mach-omap2/usb-musb.c).
>>
>> But musb_hdrc still uses musb-hdrc as name when
>> platform_driver_probe() is called. The result is that loading the
>> driver (when build as a module) doesn't work anymore (it doesn't find
>> the platform-device).
>>
>> Do I miss something or was something forgotten when the glue-layers
>> for musb got introduced?
>>
>> (The driver still works when linked into the kernel, but is
>> disfunctional when build as a module.)
>
> Send me the output you get on console and a snippet of the .config with
> the MUSB section.

I don't see the need for it, but here it is:

------------
beagle linux # grep -i MUSB .config
CONFIG_USB_MUSB_HDRC=m
# CONFIG_USB_MUSB_TUSB6010 is not set
CONFIG_USB_MUSB_OMAP2PLUS=y
# CONFIG_USB_MUSB_AM35X is not set
# CONFIG_USB_MUSB_HOST is not set
# CONFIG_USB_MUSB_PERIPHERAL is not set
CONFIG_USB_MUSB_OTG=y
CONFIG_USB_GADGET_MUSB_HDRC=y
CONFIG_USB_MUSB_HDRC_HCD=y
# CONFIG_MUSB_PIO_ONLY is not set
CONFIG_USB_MUSB_DEBUG=y
beagle linux # modprobe musb_hdrc
FATAL: Error inserting musb_hdrc 
(/lib/modules/2.6.38-beagleboard-00002-g0017ea0-dirty/kernel/drivers/usb/musb/musb_hdrc.ko): 
No such device
beagle linux # tail -n 1 /var/log/messages
Mar 16 10:37:51 beagle kernel: [  177.302825] musb-hdrc: version 6.0, 
musb-dma, otg (peripheral+host), debug=5
beagle linux # ls /sys/devices/platform/ | grep musb
musb-omap2430
------------

The problem in detail:

Through modprobe musb_core.c:musb_init() is called, and this calls 
platform_driver_probe() with a pointer to a struct of platform_device 
where the name is musb-hdrc. 
drivers/base/platform.c:platform_driver_probe() fails with -ENODEV 
because it doesn't find a platform device with the name musb-hdrc 
(list_empty()) which is understandable because the platform-device has 
the name musb-omap2430.

Regards,

Alexander Holler

  reply	other threads:[~2011-03-16  9:47 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-03-16  1:55 musb as module broken in 2.6.38 Alexander Holler
2011-03-16  9:03 ` Felipe Balbi
2011-03-16  9:47   ` Alexander Holler [this message]
2011-03-16  9:55     ` Felipe Balbi
2011-03-16 10:17       ` Alexander Holler
2011-03-16 10:24         ` Felipe Balbi
2011-03-16 10:30           ` Alexander Holler
2011-03-16 10:38             ` Felipe Balbi
2011-03-16 10:43               ` Alexander Holler
2011-03-16 10:48                 ` Felipe Balbi
2011-03-16 11:21                   ` Alexander Holler
2011-03-16 12:51                     ` 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=4D808729.9060608@ahsoftware.de \
    --to=holler@ahsoftware.de \
    --cc=balbi@ti.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-usb@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox