lkml.org 
[lkml]   [2004]   [May]   [28]   [last100]   RSS Feed
Views: [more markup]  [less markup]  [headers]  [forward] 
 
Messages in this thread
/
DateFri, 28 May 2004 18:33:48 +0900
FromKalin KOZHUHAROV <>
SubjectRe: boot from usb flash - wake boot process when disk is ready?
David N. Welton wrote:
> [ Please CC replies to me - thanks! ]
> 
> Hi,
> 
> We're toying around with the idea of booting an embedded system off of 
> USB flash (pros, cons, and advice about this would be appreciated, by 
> the way), and I had a look at several of the existing patches to do this 
> without going through the process of creating an initrd image.  That 
> adds complexity and time to the boot process that we would prefer to 
> avoid, although it appears that the kernel folks in the first thread 
> cited are in favor of initrd....
> 
> http://www.uwsg.iu.edu/hypermail/linux/kernel/0301.3/1182.html
> 
> This mentions a couple of patches, both the "keep looping until it 
> works" one, which I couldn't get working with 2.6.6, and Willy Tarreu's 
> "wait a given period of time before continuing" patch:
> 
> http://www.uwsg.iu.edu/hypermail/linux/kernel/0405.0/0224.html
> 
> I don't think either of those approaches are particularly elegant... 
> although I'm sure my own efforts are good for a snort as well.
I tried this with 2.6.6 and modified it a bit, but to no avail.
It seems that the sd driver initializes the disk long before the wait
and does not bother anymore.

> In genhd.c I wake up a waitqueue when the disk comes on line.    The 
> init process waits on this before going on with prepare_namespace(). 
> Ideally, this would look and make sure it's the right disk, that 
> selected for the root fs:-)  Not being very familiar with the 'lay of 
> the land' in the kernel, I declared the wait queue as a global in 
> genhd.c.  The thing I don't like about this approach is that it builds a 
> connection between two bits of the kernel that seem separate... maybe 
> (ok, quite probably) there is a better/cleaner way of doing this?
> 
> Patch is at: http://dedasys.com/freesoftware/files/usb-wakeup.patch

Looks OK to me to try, but I am far from expert here.
Unfortunately I cannot test it in the next few days :-(
May be later.

I am in a search for non-initrd USB-booting as well...

Keep the discussion on LKML as well.

Kalin.

-- 
||///_ o  *****************************
||//'_/>     WWW: http://ThinRope.net/
|||\/<" 
|||\\ ' 
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:03    [from the cache]
©2003-2008