[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [microblaze-uclinux] More details of my problem - uClinux freezestoo
Hi Ivan,
Ivan wrote:
> i don't know what it is the problem yet, i try to configure mi platform
> similar to mbvanilla, but the output is the same:
>
> Linux version 2.4.24-uc0 (ivan@medea) (gcc version 2.95.3-4 Xilinx EDK
> 6.1 Bui4On node 0 totalpages: 5Bc
> zone(0): 5Bc pages.
[snip]
> i try to execute the image.bin in demo package, but the output is
> similar to the previous one:
>
> Linux version 2.4.21-uc0 (jwilliam@g435-9029) (gcc version 2.95.3-4
> Xilinx EDK3On node 0 totalpages: 40 zone(0): 0 pages.
> zone(1): 40 zone(2): 0 pages.
Since you get the same output corruption from using your own kernel, and
the demo kernel, I suspect something funny in your hardware definition.
Can you post your .mhs file?
> #define MICROBLAZE_GPIO_DATA_OFFSET 0x00000000
> -#define MICROBLAZE_GPIO_TRI_OFFSET 0x00000004
> +#define MICROBLAZE_GPIO_TRI_OFFSET 0x00000000 // all outputs
You should not do this - this is indicating the offset from the
baseaddress to set the GPIO tristate direction. Leave it at 0x04.
In fact, looking at all the changes to the
linux-2.4.x/include/asm-microblaze/xparamaters.h, it appears you have
taken the xparameters.h generated by libgen in your build, and copied it
into the linux kernel, is that correct?
It might seem like a good idea, but it's not that easy. For various
reasons (some good, some bad), you can't just do that. There are some
#defines in there that aren't properly created by libgen, and some other
hacks as well. Some of the other changes you have made don't make much
sense either.
My recommendation is to
(a) post your .mhs file to the list for us to have a closer look.
(b) revert your uClinux-2.4.x source tree back to the CVS "standard"
(c) take the existing mbvanilla platform, and make the absolute minimal
changes necessary to make it work on your board. Test it first by
writing simple microblaze programs that spits stuff out on the serial
port, toggles the LEDs, that sort of thing.
(d) make the bare minimum changes in the kernel tree to match your
hardware platform.
Once you have this working, then you can start maknig the more radical
changes like adding GPIOs etc..
Cheers,
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/