[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [microblaze-uclinux] Problem with 2nd stage bootloader (u-boot)
Hi Jarno,
Radde, Jarno wrote:
Flash erase error at address 28000000
done
Erased 1 sectors
WTF? This seems not to work. I don't know why.
Is your flash actually at 0x28000000 (ie have you changed the address
of
the flash from the default ML401 design?) If it's not, the errors you
are > seeing may be because u-boot (and possibly > your kernel image) is
out of > sync with reality.
Hm, I did not change the design (except the required updates). According
to the Xilinx Platform studio it should be correct as far as I can see.
In the Addresses section of it is a line like:
opb_emc_0 SOPB MEM1 0x28000000 0x287ffff 8M
[] []
The petalogix reference design is really different (more complex) from
the Xilinx uCLinux tutorial so I am not that familiar with it but I
think this is correct.
Is it possible that one of the 2 flash chips is broken? How could I test
that?
If you read from the address (using u-boot's memory read command or xmd)
do you get 0xffffffff at flash addresses (ie blank flash data)?
Perhaps you can modify the ML401 design to use only 16-bit wide flash,
and change the UCF file to point the lower 16 bits of the flash data to
either chip.
It's a bit of a hassle, but not sure how else to really test it.
I'm thinking about that because I had trouble with the flash before I
tried petalinux and followed the Xilinx uCLinux tutorial. I tried to
write my own small bootloader (I don't really need a full featured like
u-boot but it would be nice to have one). I used the XPS option "Program
Flash Memory" to write the image.bin to flash. Then I tried to copy it
from flash to ram with my bootloader and run it. But for each 32 bits I
read the upper 16 bits of it were wrong. I thought I maybe made a
mistake in the bootloader implementation, but now I a have the suspicion
that one of the chips is broken. The Xilinx generated bootloader which
can only work with SREC files does not work too.
I've never had any luck with Xilinx's flashwriter XMD scripts, but have
never invested a lot of time in them.
My intention is to create an application using Impulse C that consits of
a software part running on uCLinux and a hardware part which communicate
which each other using FSL links. I'm not really sure how to do that so
started reading the O'Reilly book about linux device drivers and found
out that there are already drivers for FSL and GPIO but I did not
understand how to use them yet.
I think (and hope) Impulse C will create code which is using the FSL
driver automatically because they say in that in their book.
You should be able to use the generic FSL fifo driver to talk to impulse
perhperals. Remember FSL fifo driver is just raw IO - if there's any
data-level protocol (such as packet start/stop commands) required by the
Impulse coprocessors, it's your applications responsibiiliy to generate
them.
Something different and another question:
In XPS I can see that the char lcd display is connected to the gpio in
the reference design. Can you maybe give me a small hint how I can write
an application for uCLinux that "does something" with the lc display?
There is an LCD driver for PPC linux that works on the ML403 board - it
should work OK on the ML401 with MicroBlaze but I've never tried it.
I'll try to dig it out and send it, but you'll haev some hacking to do
to get it going.
It's on the list for inclusion in the next petalinux release, but
there's still work to be done there.
Regards,
John
___________________________
microblaze-uclinux mailing list
microblaze-uclinux@xxxxxxxxxxxxxx
Project Home Page : http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux
Mailing List Archive : http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/