From mboxrd@z Thu Jan 1 00:00:00 1970 From: Greg KH Date: Wed, 29 Apr 2009 18:44:00 +0000 Subject: Re: Best practice for loading platform modules Message-Id: <20090429184400.GA7527@kroah.com> List-Id: References: In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-hotplug@vger.kernel.org On Wed, Apr 29, 2009 at 02:31:49PM -0400, Chris Hallinan wrote: > On Wed, Apr 29, 2009 at 2:12 PM, Greg KH wrote: > > On Wed, Apr 29, 2009 at 11:11:35AM -0700, Greg KH wrote: > >> On Wed, Apr 29, 2009 at 02:05:37PM -0400, Chris Hallinan wrote: > >> > I have an OMAP3 board, and want usb (host mode) configured as a > >> > loadable module. Using a generic rule such as this: > >> > RUN+="/sbin/modprobe -b $env{MODALIAS}" > >> > > >> > ends up passing "platform:musb_hdrc" to modprobe, which obviously > >> > fails. > >> > >> Why would that fail? Do you have the proper modalias in the kernel > >> module to handle this? If not, can you add it? > > > > I see: > > MODULE_ALIAS("platform:" MUSB_DRIVER_NAME); > > in the musb code, perhaps MUSB_DRIVER_NAME is not set correctly to be > > "musb_hdrc" somehow? > > >From musb_core.c: > > #define MUSB_DRIVER_NAME "musb_hdrc" > const char musb_driver_name[] = MUSB_DRIVER_NAME; Good, so you should be fine. Can you run: modprobe -n -v platform:musb_hdrc on your system? It should try to load that module, as it looks like you have it set up properly, based on the module alias. > So somewhere else in kernel code (common Kobject/platform code, I > don't know) must be prepending the string "platform:" to the driver > name. Is this what you think the problem is? All of the platform > drivers display this way. From a simple script I wrote that dumps > env: Yes, that is correct, this is what is supposed to be happening. thanks, greg k-h