From: James Bottomley <James.Bottomley@HansenPartnership.com>
To: Wakko Warner <wakko@animx.eu.org>
Cc: linux-scsi@vger.kernel.org
Subject: Re: AIC94xx SAS question.
Date: Sat, 26 Apr 2008 10:56:24 -0500 [thread overview]
Message-ID: <1209225384.3113.19.camel@localhost.localdomain> (raw)
In-Reply-To: <20080426145649.GA8848@animx.eu.org>
On Sat, 2008-04-26 at 10:56 -0400, Wakko Warner wrote:
> Keith Hopkins wrote:
> > On 04/22/2008 07:19 AM, Wakko Warner wrote:
> > >Can either of these be done:
> > >1) Embed the firmware into the driver so that it can be used before the
> > >rootfs id mounted.
> >
> > I think this is generally not done because firmware tends to be
> > closed-source.
>
> I can understand this from the point of the distrobution of the linux
> kernel, but it still can be done. If there were a patch or something that
> would convert the file, that's all I care. This for me would be preferred.
There is certainly a way to do this: all you really need to do is to
render the firmware into hex as a character array, compile the array
with the driver and return a pointer to the first byte at the
request_firmware call.
The practical reason it's no-longer done (apart from the annoyance it
causes debian) is simply that the file is huge and the firmware seems to
change quite a lot. For the qla2xxx driver (whose firmware, admittedly
is larger than aic94xx) it used to result in a 4MB patch every time
there was a tiny change to the file.
> > >2) Can the firmware be loaded in an initr{d,amfs}?
> >
> > Sure. openSuSE does it in their mkinitrd.
>
> I'm not sure if you got the point of #2 or not. I do *NOT* want the driver
> as a module, I want it compiled into the kernel and then load the firmware
> from an initramfs.
>
> I think I figured out how to do #2, but if/when I do it is another story. I
> believe that the driver won't bind to the card if the firmware isn't
> available, thus I can have it bind to the card at a later time (during
> initramfs). I tried this on my system last night (since it crashed anyway).
> I loaded the module and /sys wasn't mounted. I mounted /sys and told the
> driver to bind my card and it worked.
James
next prev parent reply other threads:[~2008-04-26 15:56 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-21 23:19 AIC94xx SAS question Wakko Warner
2008-04-26 4:58 ` Keith Hopkins
2008-04-26 14:56 ` Wakko Warner
2008-04-26 15:56 ` James Bottomley [this message]
2008-04-29 1:46 ` Wakko Warner
2008-04-27 5:31 ` Keith Hopkins
2008-04-28 9:35 ` Raoul Bhatia [IPAX]
2008-04-29 2:04 ` Wakko Warner
2008-04-29 7:41 ` Raoul Bhatia [IPAX]
2008-04-29 1:53 ` Wakko Warner
-- strict thread matches above, loose matches on Subject: below --
2008-04-22 22:10 Wakko Warner
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=1209225384.3113.19.camel@localhost.localdomain \
--to=james.bottomley@hansenpartnership.com \
--cc=linux-scsi@vger.kernel.org \
--cc=wakko@animx.eu.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.