From: Erik M. <er...@bi...> - 2006-04-28 14:09:24
|
On Thu, Apr 27, 2006 at 08:55:23PM +0200, Stefan Schmidt wrote: > I'm not sure if i'm wrong here, because this is cvs-commit list and > not discussion. Well, yeah, it's used for discussion as well. > I'm writing here becuase the lart ml seems to be broken for at least 3 > weeks. BTW, lart ml archive and anon cvs access to blob cvs is broken, > too. So no really good starting point for hacking on blob. AnonCVS breakage is due to SF.net breakage. It's supposed to be fixed Real Soon Now [tm]: https://sourceforge.net/docs/A04/#cvs . I finally managed to upload my SSH key and get cvssuck to mirror the CVS repository. See http://cvs.m17n.org/~akr/cvssuck/ . It's rather slow however. Using cvsconnect to cache the connection speeds things up but creates empty repositories so I'm back at cvssuck alone. When that's done, I'll try to generate a GIT archive from the CVS repository using Keith Packard's parsecvs (git-cvsimport barfs over certain branches). It works quite well for other CVS repositories I tried, so I guess it will manage to import blob CVS as well. > OK, back to my main problem. I'm one of the developer behind the > http://openezx.org/ project. EZX is the name of the Motorola Linux > smartphone architecture based on pxa27x. On this phones they use blob > as bootloader. But we like to extend blob to choose the kernel to boot > and booting kernel from MicroSD/SD card. This would help us a lot in > kernel and userspace development because we don't need to touch the > pre-installed system. > > In some small talk with Tim Riker on IRC he suggested me to load > the extended blob into ram and do a reblob. Sounds great, but > unfortunately i get it not working. > > Some more words about the setup. Motorola had modified blob. After > some discussion i was able to get the source. You can find it here: > > http://www.datenfreihafen.org/~stefan/EZX/a780-blob.tar.bz2 > > It based on blob-2.0.5-pre2 . > > We are able to communicate with the bootloader over usb. Harald Welte > wrote some kind of bootloader client which is called boot_usb. > > http://svn.gnumonks.org/trunk/a780/src/boot_usb/ > > It loads the code into ram, exactly to KERNEL_RAM_BASE, and afterwards > JUMP to it. This works fine for selfcompiled kernels. But it does not > work for the blob binary at the moment. > > A compile of the modified blob source give me the the following > interesting binaries: > > blob > blob-chain > blob-rest > blob-rest-elf32 > blob-start > blob-start-chain > blob-start-chain-elf32 > blob-start-elf32 Everything -elf32 is the ELF32 version of the target. However, that can't be used to start the machine, so we use objcopy to generate a binary image. So: blob-start-elf32 --> (objcopy) --> blob-start . Note the current CVS version uses a different way to build cause we use the linker to link the second stage loader: we tell ld to generate an .o file from blob-rest and link that into the first stage loader. > I tried all of them load to KERNEL_RAM_BASE and also to BLOB_RAM_BASE > as defined inside the blob code. Right now there are four targets: - blob-rest-elf32 - blob-rest - blob-elf32 - blob > If i load blob or blob-start-elf32 the display goes blank and thats > it. For blob-start at KERNEL_RAM_BASE it goes blank, too. On all the > other tests exactly nothing happens. You should be able to reblob the second stage loader (i.e.: blob-rest). It should be loaded at BLOB_RAM_BASE. > I just changed the version string displayed to confirm if i see the > new blob on the screen. > > So perhaps anybody here can help me at this point. The most > interesting questions are the following: > > - Is there some good doc about blob? I don't find anything. The source and the README is all there is. > - Which binary i had to use for reblob? blob-rest. > - Which place i had to load into ram? BLOB_RAM_BASE or > KERNEL_RAM_BASE? BLOB_RAM_BASE. > - Tim Riker mentoined there are flying some SD card patches around. > Where can i find it? I don't know about them. There is however some SD support in the kernel. Erik -- ---- Erik Mouw ---- www.bitwizard.nl ---- +31 15 2600 998 ---- |