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

Re: [microblaze-uclinux] PetaLinux and ML501 - issue



Hi John,
You are right the ML401 has a 32-bit data bus but it is connected to 2-banks x 16-bit wide device (Intel J30).

As you said the problem could be because of the opb_emc controller. However, as we do not have a ML501 board here we can't test it.

But just in case you do revert to the old opb_emc controller and it is still not working, you might want to try declaring a CONFIG_XILINX_FLASH_WIDTH parameter in your Kconfig.auto/auto-config.in and turn off data width matching. If you are using the PetaLinux BSP 1.00b then this parameter should be generated for your board automagically.

Will keep you inform when we get to play with a ML501/5 board.

Cheers,
B.

John Mcgrath wrote:
Hi Benny,
I left the whole flash issue alone - I never went back to try get it to
work. From looking at the ML401 reference design MHS file, the flash
seemed to be described as a 32 bit bus (though in that design the same
EMC controller was also used to control the SRAM.

In the Ml501 case I was using EDK 9.1, and there the opb_emc was
actually a newer version of this core, an mch_opb_emc. The reason this
was not detected in the OS setup in the EDK was the bsp did not know
this kind of core was used for a flash device. I edited the bsp and
added this, and was able to select it so the flash device was "detected"
in the build of my hardware and software system, but the resulting
bitstream/image did not work.

I did some playing around with the datawidth matching options, but that
did not work.
After that I stopped playing with the flash, and my work has taken me
away from that board since then, so I never did get it going. I would
like to, at some point ;)

It could have been as simple as going back to the old controller, or
something similar to get it working, or a newer version of EDK may do it
- I never did try any futher. Any designs that write to the flash for an
ML50x board should be compatible though.
If you get it work, I'd appreciate to hear what you did!

Cheers
John


-----Original Message-----
From: owner-microblaze-uclinux@xxxxxxxxxxxxxx
[mailto:owner-microblaze-uclinux@xxxxxxxxxxxxxx] On Behalf Of Benny Chen
Sent: Sunday, July 08, 2007 11:05 PM
To: microblaze-uclinux@xxxxxxxxxxxxxx
Subject: Re: [microblaze-uclinux] PetaLinux and ML501 - issue

Hi John M.,
Just wondering if you have managed to get U-Boot/Linux working on the ML501/5? From your previous post I can see that you have an issue with the kernel physmap_auto failing to detect the flash configuration on the

ML501 board. From what I remember the ML401 runs a 2x16 FLASH configuration and the physmap_auto's FLASH auto-probe facility may require some assistance from auto-config.in to get the correct FLASH configuration.

Cheers,
B.

John Mcgrath wrote:
Hi John,
I have not been back to my board yet, but I was doing something
similar
with another person on an ML505 board - which has the same flash
configuration.
We tried with and without the data width matching parameter, and
u-boot
still could not see the flash (not petalinux when we booted it from
xmd).
We also tried reverting to an older control (opb_emc) and that did not
work either.
We checked the Spartan 3e reference designs, but that had a different
flash, it was 16x8, rather than 2x16. Are there any known good designs
that use this particular flash chip/configuration?

So in summary:

Ml401   - ?x32 works
Se3     - 16x8 works
Ml501/5 - 2x16 does not work (yet!)

Any ideas?

Cheers
John

-----Original Message-----
From: owner-microblaze-uclinux@xxxxxxxxxxxxxx
[mailto:owner-microblaze-uclinux@xxxxxxxxxxxxxx] On Behalf Of John
Mcgrath
Sent: 09 May 2007 05:44
To: microblaze-uclinux@xxxxxxxxxxxxxx
Subject: RE: [microblaze-uclinux] PetaLinux and ML501 - issue

Hi John,
Just to let you know, I may not be near my board for a few days/weeks
to
try this out (traveling) - but as soon as I do get a chance I'll
report
back.
Thanks for your help!

Cheers
John

-----Original Message-----
From: owner-microblaze-uclinux@xxxxxxxxxxxxxx
[mailto:owner-microblaze-uclinux@xxxxxxxxxxxxxx] On Behalf Of John
Williams
Sent: 07 May 2007 23:15
To: microblaze-uclinux@xxxxxxxxxxxxxx
Subject: Re: [microblaze-uclinux] PetaLinux and ML501 - issue

Hi John,

John Mcgrath wrote:
Hi John,
Sure, here are the files.
DATAWITH_MATCHING seems to be turned on - in the mhs and
autoconfig.in
But you can check too - (maybe I should revert to an older core...)
Can you try disabling datawidth matching in the HW build, and update
the
auto-config.in file?

Run petalinux-copy-autoconfig from the EDK project directory - then "make clean all" from petalinux-dist.

datawidth matching is convenient for reading from 16-bit flash but
it's
a pain for writing, because it munges the flash state machine
commands.
Thanks,

John

I was able to get the image to boot without the flash - I used dow
-data
as I don't have download cable support on my linux machine (no root).
I
use XMD/iMPACT under windows for the downloading. Works just fine!

Cheers, and thanks for the help!
Oh, and there should be a ML505 proof of concept soon too - the list
of
supported platforms is growing ;)

Cheers
John


-----Original Message-----
From: owner-microblaze-uclinux@xxxxxxxxxxxxxx
[mailto:owner-microblaze-uclinux@xxxxxxxxxxxxxx] On Behalf Of John
Williams
Sent: 03 May 2007 19:35
To: microblaze-uclinux@xxxxxxxxxxxxxx
Subject: Re: [microblaze-uclinux] PetaLinux and ML501 - issue

Hi John,

John Mcgrath wrote:


I've been playing with petalinux on my new ml501 (last time I did
any
of
this stuff was when the ml401 first came out and there was no option
but
uclinux-autoconfig).

I have to say the petalinux environment and the user guide is
excellent.
Congratulations.
Thanks - I'm glad you like it.


I followed the tutorial, setting up the hardware - a few notable differences, I'm using EDK 9.1, and the DDR2 controller is now mch_opb_ddr2 and the flash controller is now mch_opb_emc. I had to modify the petalinux bsp to include these as valid interfaces for
the
main_memory and flash_memory variables.
Yes - this is a known issue and has been updated for the next
release.
Another difference (and this may be the key) is the flash seems to
be
now 2Mx16 instead of the 2Mx32 in the ml401 tutorial.
Have you enabled DATAWIDTH_MATCHING on the flash interface?


However, I pressed on, and was able to get FS-BOOT working, and when
I
downloaed the u-boot srec file, I got the following:
FS-BOOT: Warning image location differ from default boot location.
Image
will not boot automatically after POR.
FS-BOOT: Press 'n' to boot old image.
FS-BOOT: Use new image.
FS-BOOT: Booting image...

SDRAM :
\0x09U-Boot Start:0x5ffc0000
\0x09Malloc Start:0x5ff80000
\0x09Board Info Start:0x5ff7ffd0
\0x09Boot Parameters Start:0x5ff6ffd0
FLASH:
hmm - this is actually u-boot starting up, then dying and throwing
you
back to FS-boot (probably via the reset vector)


=================================================

FS-BOOT First Stage Bootloader (c) 2006 PetaLogix

=================================================

FS-BOOT: System initialisation completed.

FS-BOOT: No existing image in FLASH.  Starting image download.

FS-BOOT: Waiting for SREC image....



*********



So u-boot was starting (ignore the 0x09 I believe they are tab characters) - but when it got to the flash stage it balked and
"restarted".

Yes.  Not sure why this is, but likely to do with the change of flash
width.


So, on I pressed even further, this time instead using XMD to
download
the image.elf (I know this does not have the file system, but I
wanted
to see what happened!) And I got this:

[snip]


physmap_auto flash device: 2000000 at 4a000000

physmap_auto probing buswidth 2

 Unknown IntelExt Extended Query version 1.4.

gen_probe: No supported Vendor Command Set found

physmap_auto probing buswidth 2

Search for id:(89 8919) interleave(1) type(2)
[snip]


Search for id:(89 01) interleave(2) type(2)

JEDEC: Found no Physically mapped flash device at location zero
So the flash seemed to again cause issues. Is 2x16 supported? Or
what
would I need to do to make it work?
2x16 should work - that's the configuration in the Sparta3E reference

designs, for example.

It will be related to the datawidth matching - I'll have to check to confirm, but I think you want to enable it.

Can you post your auto-config.in?


Also, if I want to bypass the "flash" for now, and download the
image
-
I remember I had to download the image.bin - does this still work?

If I did a:

dow -data image.bin <DDR2 BASE ADDRESS> and then did

con <DDR2 BASE ADDRESS>

should this work? (I tried it, and it did not - no output at all)
Yes - that should work.  It's a good idea to issue a reset (rst)
first,
make sure we have a nice clean machine to boot on.

Or, you can do (from the EDK HW project directory)

petalinux-jtag-boot -i </path/to/image.bin> -a <address>

So petalinux is almost alive on ml501 - any tips would be GREATLY appreciated!
Let's see you auto-config.in file (and MHS as well).

If we can get this going I'd be happy to add the ML501 as a standard reference design in PetaLinux.

Thanks,

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/

___________________________
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/




___________________________
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/




___________________________
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/
___________________________
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/




___________________________
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/

___________________________
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/