[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [microblaze-uclinux] porting the uClinux platform/kernel to theML401



Hi Jimbo,

jim bo wrote:
> Xilinx offers a free reference system with the ML401.  The hardware
> platform includes all available peripherals of the ML401 and several
> test applications.  I'm wondering - if I have a complete hardware
> platform that already runs on the ML401 and includes the
> peripherals/memory that uClinux needs or can use - how difficult would
> it be to modify only uClinux to run on the Xilinx reference system -
> as opposed to modifying the V2MB1000 hardware platform to target the
> ML401?  The ML401 EDK Reference Design can be downloaded here:
> 
> http://www.xilinx.com/products/boards/ml401/reference_designs.htm

It's a nice board isn't it? :)  I'm happy to say we just bought 20 of 
them, and I'm looking forward to playing with it in the future.

Just for fun, I did a port for this board on the weekend, as a 
test/debug trial for the uClinux-auto stuff.  You can find the results here:

http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux/Downloads/platforms.html

Note I haven't tested this as far as booting and downloading the board, 
but am reasonably confident it will work first time.  When I get some 
hardware set up I'll do some more tests.

This new design, ml401_uclinux_ref, is based very closely on Xilinx's 
ml401_emb_ref, with a few subtle distinctions:

1. Connected the ethernet controller's interrupt line
2. Use UARTLITE instead of UART16550 (don't know why they chose that??)
3. Use newer Microblaze (v3.00.a) and enabled I/D cache

You can find diffs between the emb_ref and uclinux_ref at

http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux/Downloads/_files/ml401_uclinux_ref.diff

Some comments on the architecture of the reference design, it puts the 
DDR on a private PLB bus with the TFT/VGA controller, presumably for 
maximising memory bandwidth for video display.  A side-effect of this 
however, is that the DDR is further away from the processor.  I'm not 
sure what performance impact this will have, please let me know your 
bogoMIPs value if you try this out.  Perhaps increasing the cache size 
will be of value here.

There are a million and one different peripherals strung out along the 
OPB bus in this design, not all of which are supported by drivers in the 
uClinux kernel.  However, my intention was to keep it as similar as 
possible to Xilinx's published ml401 reference.  It should be pretty 
trivial to port an existing linux framebuffer driver to the VGA display, 
also similarly trivial to port an existing AC97 sound card controller. 
Given that ML401 also has dual PS2 ports, it would be quite feasible to 
make a cute little standalone Linux box on this card.  Hmm, maybe next 
weekend :)

Anyway hope this is helpful, and as always feedback and comments welcome.

Have fun!

John



___________________________
microblaze-uclinux mailing list
microblaze-uclinux@itee.uq.edu.au
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/