[Prism54-devel] Prism54 development update

Denis Vlasenko vda at ilport.com.ua
Sun Sep 11 11:07:03 UTC 2005


On Saturday 10 September 2005 17:47, Sebastien wrote:
> > I do not fully understand this.
> >
> > Do you have unpacked fw image?
> 
> Yes, Jean Baptiste ran it in the Virtera emulator, and the firmware 
> self-extracted in the (virtual) memory, which was then dumped to a file :)
> 
> > Do you have full disassembly of it?
> 
> Yes. And it's consistent :)
> 
> > Did you reach the stage where you can run GCC on disasmed source
> > and obtain exactly same image?
> 
> This is not GCC, but GNU as.
> We did not, because the syntax of the GNU disassembler is slightly different 
> from the syntax of the GNU assembler. There may be some command-line option 
> to fix this, though, but I haven't tried. Dead listing and trial and error 
> from the FreeMAC/ISLMON prompt have been enough so far.

So you have a disassembly which you cannot (or don't plan to)
modify, compile, and load into real hardware. You use it as a documentation,
right? And want to write your fw from scratch, right?
 
> > Do you know how to convert uncompressed image back into compressed
> > form so that it could be loaded into real hardware?
> 
> I think the best solution is to rewrite the bootstrapper from scratch.
> 
> > BTW hardware available to me is 2 PCI fullmac cards.
> 
> This should be okay :)

I wanted to get some skills with this ARM world. Lotsa hackish webpages
about ARM is out there...

The only more or less sane page I arrived at is:

http://www.uclinux.org/pub/uClinux/utilities/armulator/

I was able to cross build arm-gdb and to load precompiled
linux kernel + small romfs image from that page. Cool.

If I wanted to, I could proceed with ucLinux from there.

> The NET2280-based design has a normal PCI bus ; the differences between the 
> PCI and USB firmware come from the fact that the SoftMAC USB firmware 
> rewrites NET2280 registers to optimize USB bandwidth by doing things (for 
> instance, flushing endpoint FIFOs) from the PCI bus instead of from the USB 
> bus. The DMA management in the firmware is also a bit different.
> The UARTPCI protocol is exactly the same, so there should be no problem with 
> obtaining the FreeMAC prompt on a PCI device with no changes (it's already 
> working with the current stage of developement, and I can send binary and 
> source snapshots to anyone interested). Only a host implementation should be 
> required.

Heh. Can you translate this into English for us mere i386 humans?

What toolchain do I need to build? Gcc? binutils? What versions of those
known to work? What patches to apply, if any?
Examples/HOWTOs how to get firmware to load in real or emulated hardware?
What is that FreeMAC/ISLMON? Can I load it into fullmac?
If not, where should I start to fix that?

IOW, I need something like http://www.uclinux.org/pub/uClinux/utilities/armulator/,
but s/ucLinux/prism54/
--
vda


More information about the Prism54-devel mailing list