mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: mikie <mikie.pl@gmail.com>
To: "Duncan Sands" <duncan.sands@math.u-psud.fr>
Cc: linux-kernel@vger.kernel.org
Subject: Re: understanding firmware loader for speedtouch (kernel 2.6.21.5)
Date: Fri, 6 Jul 2007 21:30:10 +0200	[thread overview]
Message-ID: <ca35ce500707061230t66eae039p845fa25cbeaf271b@mail.gmail.com> (raw)
In-Reply-To: <200707061924.57099.duncan.sands@math.u-psud.fr>

2007/7/6, Duncan Sands <duncan.sands@math.u-psud.fr>:
> Hi, you should keep this discussion on the lkml so it will be archived -
> that way it may help others too.

I was sure I copied lkml, but obviously something went wrong.

> On Friday 6 July 2007 19:06:14 mikie wrote:
> > 2007/7/6, Duncan Sands <duncan.sands@math.u-psud.fr>:
> > > On Friday 6 July 2007 14:54:18 mikie wrote:
> > > > Hi,
> > > >
> > > > I experience some problems with the speedtch.c module, especially in
> > > > regards to its firmware loader.
> > > > I am not quite sure if this module is going to load the firmware
> > > > itself or does it use some external software to do that ?
> > >
> > > It loads it itself, using some external software!
> >
> > OK, so probably I don't have anything external. Could you please point
> > me to the specific helper-program takes care of this process? As I
> > understand it is not done entirely by kernel itself?
>
> The external helper is the firmware.agent script!  The modem driver calls
> the kernel's firmware subsystem, the firmware subsystem creates a user
> space thread and calls whatever program is specified in /proc/sys/kernel/hotplug
> At the same time the firmware subsystem creates the "data" and "loading" files.
> The hotplug program is supposed to write the firmware into "data".

Thanks for the explanation. Now I get the overall picture of what
whould be done to load the firmware. I will try playing around with
the firmware.agent script, although I do not havfe the entire hotplug
package on my system, but probably this should work with a bit of
manual bash scripting.

> See
> Documentation/firmware_class in the kernel source for details.  More recent
> systems fire off a "uevent" and have udev take care of loading the firmware.

What do you mean by "recent systems" ? Is it distro dependent or
kernel dependent ?

> In any case, the external helper is not specific to this modem - it is part
> of the general hotplug infrastructure.  If you have hotplug or udev installed,
> probably they are looking for the firmware in the wrong place.

Actually I don't have hotplug/udev. That is why I am thinking of some
basic manual firmware loading. I switched from 2.4.33.3 kernel, where
such toold were not needed (I guess).


> > > > All I get is :
> > > >
> > > > Jul  6 13:41:37 srv kernel: speedtch 1-2:1.0: speedtch_find_firmware:
> > > > looking for speedtch-1.bin.2.00
> > > > [...]
> > > > Jul  6 13:42:19 srv kernel: speedtch 1-2:1.0: speedtch_find_firmware:
> > > > looking for speedtch-1.bin.2
> > > > [...]
> > > > Jul  6 13:43:19 srv kernel: speedtch 1-2:1.0: speedtch_find_firmware:
> > > > looking for speedtch-1.bin
> > > >
> > > > And nothing more happens. The firmware does not get loaded to the
> > > > modem. There is also no information in the logs that the firmware
> > > > loading failed...
> > >
> > > It should either print:
> > >         no stage 1 firmware found!
> > > or
> > >         found stage 1 firmware <name>
> > > Does it really print neither?  If so, that must mean that the
> > > firmware loader got stuck.
> >
> > I don't have anything about stage 1. This probably is done by some
> > helper program, as I understood.
>
> No, the modem prints one of these two messages when the user space
> helper returns, or a timeout occurs.  The fact it isn't printed
> suggests that the timeout is infinite.  The timeout is in
> /sys/class/firmware/timeout

I will take a closer look at the timeout value. It is quite
uncomfortable for me right now to switch to the new kernel, because I
loose internet connectivity at that time :)

> > But I don't know which one is that.
> > Perhaps I could do it manually ? Like copying the firmware to the
> > "data" ?
>
> Actually you could.  All the firmware.agent does (or did, maybe it got more
> sophisticated) is use "cat" to write the firmware file to "data".

I tried some basic copy, but received permission denied even though I
was root. Perhaps I was trying at the wrong location. I'll get back
with more info on Monday.

Thanks for your help.

Regards,
MK

      parent reply	other threads:[~2007-07-06 19:30 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2007-07-06 12:54 mikie
2007-07-06 14:20 ` Duncan Sands
2007-07-06 19:16   ` Indan Zupancic
2007-07-09  8:49     ` mikie
2007-07-09 10:42       ` Indan Zupancic
2007-07-09 11:08         ` mikie
2007-07-09 13:59           ` Kay Sievers
2007-07-09 14:40             ` mikie
2007-07-09 15:03               ` Indan Zupancic
2007-07-09 17:00                 ` mikie
     [not found]                   ` <200707091923.38577.duncan.sands@math.u-psud.fr>
2007-07-09 17:41                     ` mikie
2007-07-09 17:51                       ` Duncan Sands
2007-07-10  7:54                     ` mikie
2007-07-10  8:57                       ` Duncan Sands
2007-07-10  9:13                         ` mikie
2007-07-10  9:32                           ` Duncan Sands
2007-07-10 10:32                             ` mikie
2007-07-11 11:22                               ` mikie
2007-07-11 12:33                                 ` Duncan Sands
2007-07-11 12:47                                   ` mikie
2007-07-11 13:07                                     ` Duncan Sands
2007-07-11 16:55                                       ` mikie
2007-07-19 10:24                                         ` mikie
2007-07-24 23:03                                           ` Duncan Sands
2008-11-19 12:25                                             ` mikie
2008-11-19 12:49                                               ` Duncan Sands
2007-07-09 15:08               ` Kay Sievers
2007-07-09 10:50       ` Duncan Sands
2007-07-09 11:06         ` mikie
     [not found]   ` <ca35ce500707061006k74754bd6m8a9d2f1cb2910823@mail.gmail.com>
     [not found]     ` <200707061924.57099.duncan.sands@math.u-psud.fr>
2007-07-06 19:30       ` mikie [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=ca35ce500707061230t66eae039p845fa25cbeaf271b@mail.gmail.com \
    --to=mikie.pl@gmail.com \
    --cc=duncan.sands@math.u-psud.fr \
    --cc=linux-kernel@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

all inboxes | Powered by JetHome®