
On 11/06/2012 11:09, Teemu Keskinarkaus wrote:
Hi,
Hi,
I need to access IRAM from U-boot in MX53 based HW. This is part of the data transfer between kernel and U-boot. I've already done the kernel part and now I need to do the U-boot part.
I tried this:
#define IRAM_ADDRESS IRAM_BASE_ADDR + IRAM_SIZE - SZ_4K
unsigned long *iram = (unsigned long*)IRAM_ADDRESS; unsigned long data;
data = *iram;
But with that code the U-boot just gets stuck when trying to access the IRAM. I looked and it seems that IRAM is added to MMU definitions and virtual address is the same as physical.
In u-boot, the MMU is not turned on. This was done by design to make things simpler. I do not know what you are talking about.
So questions is. How should I access the IRAM if the method I'm using is not correct or what's wrong in my method?
MX53LOCO U-Boot > md 0xF8000000 f8000000: 5f04dbd6 e0a62773 fa92b272 e85f7213 ..._s'..r....r_. f8000010: 946065a3 fbe525ce 0cedf27e d2f2e4df .e`..%..~....... f8000020: e7d76787 e8e97cfe 49927a97 d2b1a033 .g...|...z.I3... f8000030: e84ac878 ec76c015 4fde5c14 338d88c8 x.J...v...O...3 f8000040: f797b909 fabf35ba 9dee0101 61b6c523 .....5......#..a f8000050: 3a9057e3 dbea4c77 8347b4bd bcbce01a .W.:wL....G.....
iram is read flawlessy.
Best regards, Stefano Babic