Hello all,
Can someone explain me, why SAM-BA 2.8 gives the message "Error during external RAM initialization" when there is only one 16-bit SDRAM (MT48LC16M16A2 ) connected to SAM9260 as same as ATMEL's datasheet .
AT91SAM9260.pdf "20.7.1.1 Hardware Configuration" on page 155.
How we can work with SAM-BA when there is one 16-bit SDRAM on the board?
16-bit SDRAM with SAM9260
- falingtrea
- Location: Mounds View, MN
Post
I believe that is because SAM-BA is set up to support EK boards. If you have a custom board, you may have to create new board files and compile them.
- falingtrea
- Location: Mounds View, MN
Post
You need to download the Bootstrap 1.9 file from Atmel, modify the code and recompile it. There is some information in the documentation included in the install file.
- fab
- Contact:
- Location: ATMEL Rousset France
Post
Hi,
On AT91SAM9260-EK, the SDRAM in connected with 32bits data bus width. The applet that initializes this external SDRAM is configured for 32 bits. This applet is automatically lauched at SAM-BA startup.
To modify this, in SAM-BA v2.8, you have to recompile the extram applet with the right settings. All applet sources and build command lines are in "C:\Program Files\ATMEL Corporation\AT91-ISP v1.12\SAM-BA v2.8\applets"
To do so, edit the file at91lib/boards/at91sam9260-ek/board_memories.c, find the function BOARD_ConfigureSDRAM, and replace AT91C_SDRAMC_DBW_32_BITS with AT91C_SDRAMC_DBW_16_BITS. Then recompile the applet (need a ARM gcc compiler like CodeSourcery one). You can find the make command line in build.pl file (remove INST_PREFIX=$ARGV[0]) and copy the resulting file (isp-extram-at91sam9260.bin) in C:\Program Files\ATMEL Corporation\AT91-ISP v1.12\SAM-BA v2.8\lib\AT91SAM9260-EK folder.
Then you should be able to get SAM-BA working with your 16 bits SDRAM
Regards,
Fab
On AT91SAM9260-EK, the SDRAM in connected with 32bits data bus width. The applet that initializes this external SDRAM is configured for 32 bits. This applet is automatically lauched at SAM-BA startup.
To modify this, in SAM-BA v2.8, you have to recompile the extram applet with the right settings. All applet sources and build command lines are in "C:\Program Files\ATMEL Corporation\AT91-ISP v1.12\SAM-BA v2.8\applets"
To do so, edit the file at91lib/boards/at91sam9260-ek/board_memories.c, find the function BOARD_ConfigureSDRAM, and replace AT91C_SDRAMC_DBW_32_BITS with AT91C_SDRAMC_DBW_16_BITS. Then recompile the applet (need a ARM gcc compiler like CodeSourcery one). You can find the make command line in build.pl file (remove INST_PREFIX=$ARGV[0]) and copy the resulting file (isp-extram-at91sam9260.bin) in C:\Program Files\ATMEL Corporation\AT91-ISP v1.12\SAM-BA v2.8\lib\AT91SAM9260-EK folder.
Then you should be able to get SAM-BA working with your 16 bits SDRAM
Regards,
Fab
Post
Hello,
I donwloaded the latest CrossCompiler from CodeSourcery and Sam-Ba 2.8.
make CROSS=~/arm-2007q1/bin/arm-none-linux-gnueabi- CHIP=at91sam9260 BOARD=at91sam9260-ek MEMORY=sdram_samba DYN_TRACES=1
error message:
/home/john/arm-2007q1/bin/arm-none-linux-gnueabi-gcc -Wall -mlong-calls -ffunction-sections -g -Os -I../../at91lib/boards/at91sam9260-ek -I../../at91lib/peripherals -I../../at91lib/memories -I../../at91lib/components -I../../at91lib -Dat91sam9260 -DDYNAMIC_TRACE_LEVEL -c -o obj/stdio.o ../../at91lib/utility/stdio.c
../../at91lib/utility/stdio.c:53: error: variable 'r' has initializer but incomplete type
../../at91lib/utility/stdio.c:53: warning: excess elements in struct initializer
../../at91lib/utility/stdio.c:53: warning: (near initialization for 'r')
../../at91lib/utility/stdio.c:53: warning: excess elements in struct initializer
../../at91lib/utility/stdio.c:53: warning: (near initialization for 'r')
../../at91lib/utility/stdio.c:53: warning: excess elements in struct initializer
../../at91lib/utility/stdio.c:53: warning: (near initialization for 'r')
../../at91lib/utility/stdio.c:53: warning: excess elements in struct initializer
../../at91lib/utility/stdio.c:53: warning: (near initialization for 'r')
make: *** [obj/stdio.o] Error 1
Please just help me to resolve this problem...
Thanks
I donwloaded the latest CrossCompiler from CodeSourcery and Sam-Ba 2.8.
make CROSS=~/arm-2007q1/bin/arm-none-linux-gnueabi- CHIP=at91sam9260 BOARD=at91sam9260-ek MEMORY=sdram_samba DYN_TRACES=1
error message:
/home/john/arm-2007q1/bin/arm-none-linux-gnueabi-gcc -Wall -mlong-calls -ffunction-sections -g -Os -I../../at91lib/boards/at91sam9260-ek -I../../at91lib/peripherals -I../../at91lib/memories -I../../at91lib/components -I../../at91lib -Dat91sam9260 -DDYNAMIC_TRACE_LEVEL -c -o obj/stdio.o ../../at91lib/utility/stdio.c
../../at91lib/utility/stdio.c:53: error: variable 'r' has initializer but incomplete type
../../at91lib/utility/stdio.c:53: warning: excess elements in struct initializer
../../at91lib/utility/stdio.c:53: warning: (near initialization for 'r')
../../at91lib/utility/stdio.c:53: warning: excess elements in struct initializer
../../at91lib/utility/stdio.c:53: warning: (near initialization for 'r')
../../at91lib/utility/stdio.c:53: warning: excess elements in struct initializer
../../at91lib/utility/stdio.c:53: warning: (near initialization for 'r')
../../at91lib/utility/stdio.c:53: warning: excess elements in struct initializer
../../at91lib/utility/stdio.c:53: warning: (near initialization for 'r')
make: *** [obj/stdio.o] Error 1
Please just help me to resolve this problem...
Thanks
Post
Re: 16-bit SDRAM with SAM9260
Hi Manuel,
We've got the same problem, did you get any reply or in case you get the 16-bit SDRAM bin file compiled could you please upload it ?
Thanks in advance
Talgil
We've got the same problem, did you get any reply or in case you get the 16-bit SDRAM bin file compiled could you please upload it ?
Thanks in advance
Talgil
Post
Re: 16-bit SDRAM with SAM9260
Hi, there is noting to compile,
just open the SDRAM.tcl in folder
C:\Programme\ATMEL Corporation\AT91-ISP v1.10\SAM-BA v2.6\lib\AT91SAM9260-EK
with a simple text-editor serch for "32" and change it to "16".
SAM-BA now accept my EDDY-board with 16bit-RAM as AT91SAM9260-EK.
I can load a bin-file to RAM and verify it.
But still can't make it run
regards
Regi
just open the SDRAM.tcl in folder
C:\Programme\ATMEL Corporation\AT91-ISP v1.10\SAM-BA v2.6\lib\AT91SAM9260-EK
with a simple text-editor serch for "32" and change it to "16".
SAM-BA now accept my EDDY-board with 16bit-RAM as AT91SAM9260-EK.
I can load a bin-file to RAM and verify it.
But still can't make it run

regards
Regi
Post
Re: 16-bit SDRAM with SAM9260
Have you soloved this problem?I can use SAMBA to download the bin file to SDRAM,and the compare result is correct.But if I use the TCL_Go command to execute the program in SDRAM,the print message is unstable,I mean that sometimes I can get corecct message on the DEBUG serial,but maybe I will only get a little characters from it next time,do you also have this problem?
btw:I use the softpack_at91sam9260_v1.4 getting_started as the example.
btw:I use the softpack_at91sam9260_v1.4 getting_started as the example.
Post
Re: 16-bit SDRAM with SAM9260
I also had the same problem compiling SAM-BA v2.8 but finally did get it to compile, below are my notes, I also have attached my compiled 16 bit bus sdram driver:
Here is a posting on this forum that someone was nice enough to upload an attachment containing documentation from Atmel on how to compile the SAM-BA, it was what I used as a starting point:
samphpbb/viewtopic.php?p=15674#p15674
I was able to successfully compile after installing the following utils:
Cygwin (you only need the basic default stuff) this gives you mkdir, cp...:
make sure to add the cygwin bin directory to your windows PATH after the cygwin install!
http://www.cygwin.com
and the Codesourcery ARM Cross compiler
http://www.codesourcery.com/gnu_toolcha ... release642
I tried using other arm cross compilers but had no luck, although I did not put much effort into it as I needed to get things working quickly.
Also I had to use cs-make as it is the make that is part of the codesourcery.
Example:
run the following in the SAM-BA v2.8\applets\isp-applets\extram directory to recompile the ram initialization module:
cs-make CHIP=at91sam9260 BOARD=at91sam9260-ek MEMORY=sram_samba DYN_TRACES=0 clean all
I hope this helps!
Here is a posting on this forum that someone was nice enough to upload an attachment containing documentation from Atmel on how to compile the SAM-BA, it was what I used as a starting point:
samphpbb/viewtopic.php?p=15674#p15674
I was able to successfully compile after installing the following utils:
Cygwin (you only need the basic default stuff) this gives you mkdir, cp...:
make sure to add the cygwin bin directory to your windows PATH after the cygwin install!
http://www.cygwin.com
and the Codesourcery ARM Cross compiler
http://www.codesourcery.com/gnu_toolcha ... release642
I tried using other arm cross compilers but had no luck, although I did not put much effort into it as I needed to get things working quickly.
Also I had to use cs-make as it is the make that is part of the codesourcery.
Example:
run the following in the SAM-BA v2.8\applets\isp-applets\extram directory to recompile the ram initialization module:
cs-make CHIP=at91sam9260 BOARD=at91sam9260-ek MEMORY=sram_samba DYN_TRACES=0 clean all
I hope this helps!
- Attachments
-
- isp-extram-at91sam9260.zip
- (1.28 KiB) Downloaded 235 times
Last edited by svolpe on Thu Jan 08, 2009 4:05 pm, edited 1 time in total.
Post
In version v2.6 I don't think there was anything to compile (or at least I know there was not in v2.5) however version v2.8 now requires you to compile the modules.
Regards,
Shane
Re: 16-bit SDRAM with SAM9260
Regi,regi wrote:Hi, there is noting to compile,
just open the SDRAM.tcl in folder
C:\Programme\ATMEL Corporation\AT91-ISP v1.10\SAM-BA v2.6\lib\AT91SAM9260-EK
with a simple text-editor serch for "32" and change it to "16".
SAM-BA now accept my EDDY-board with 16bit-RAM as AT91SAM9260-EK.
I can load a bin-file to RAM and verify it.
But still can't make it run![]()
regards
Regi
In version v2.6 I don't think there was anything to compile (or at least I know there was not in v2.5) however version v2.8 now requires you to compile the modules.
Regards,
Shane
- socrates
- Contact:
- Location: Lithuania, Kaunas
Post
Re: 16-bit SDRAM with SAM9260
What if I make a copy of EK, but using LQFP208? Do I have to recompile SAM-BA?
http://www.socratesblog.eu
FPGA, CPLD, ARM, AVR projects and more.
FPGA, CPLD, ARM, AVR projects and more.
- socrates
- Contact:
- Location: Lithuania, Kaunas
Post
You don't have to recompile SAM-BA.
Re: 16-bit SDRAM with SAM9260
I answer myself for future people that may be confused:socrates wrote:What if I make a copy of EK, but using LQFP208? Do I have to recompile SAM-BA?
You don't have to recompile SAM-BA.
http://www.socratesblog.eu
FPGA, CPLD, ARM, AVR projects and more.
FPGA, CPLD, ARM, AVR projects and more.
Post
Re: 16-bit SDRAM with SAM9260
Hi!
The information about changing the SDRAM data bus width from 32bit to 16 bit in SAM-BA 2.8 is very useful indeed, but what about the new version of SAM-BA - 2.9?
In this newer version, some of the files used in v. 2.8 are not present and I think the whole process of compiling and customization is changed.
Did anyone have any luck with successfully changing the data bus width in v 2.9?
Regards,
Lubomir
The information about changing the SDRAM data bus width from 32bit to 16 bit in SAM-BA 2.8 is very useful indeed, but what about the new version of SAM-BA - 2.9?
In this newer version, some of the files used in v. 2.8 are not present and I think the whole process of compiling and customization is changed.
Did anyone have any luck with successfully changing the data bus width in v 2.9?
Regards,
Lubomir
Post
Re: 16-bit SDRAM with SAM9260
Hi,
I use SAM-BA 2.9 with a at91sam9g20 custom board and only changed variable extRamDataBusWidth to 16 in at91sam9g20-ek.tcl.
before I changed it to 16:
-I- -- EXTRAM ISP Applet 2.9 --
-I- -- AT91SAM9G20-EK
-I- -- Compiled: Jun 22 2009 14:59:31 --
-I- INIT command:
-I- Communication link type : 0
-I- Data bus width : 32 bits
-I- External RAM type : SDRAM
-I- Init SDRAM...
-I- Init successful.
-I- End of applet (command : 0 --- status : f)
Got error message:
Error during external RAM initialization.
External RAM access is required to run applets.
Continue anyway? yes or no
After I changed it to 16:
-I- -- EXTRAM ISP Applet 2.9 --
-I- -- AT91SAM9G20-EK
-I- -- Compiled: Jun 22 2009 14:59:31 --
-I- INIT command:
-I- Communication link type : 0
-I- Data bus width : 16 bits
-I- External RAM type : SDRAM
-I- Init SDRAM...
-I- Init successful.
-I- End of applet (command : 0 --- status : 0)
Samba started up successfully
I use SAM-BA 2.9 with a at91sam9g20 custom board and only changed variable extRamDataBusWidth to 16 in at91sam9g20-ek.tcl.
before I changed it to 16:
-I- -- EXTRAM ISP Applet 2.9 --
-I- -- AT91SAM9G20-EK
-I- -- Compiled: Jun 22 2009 14:59:31 --
-I- INIT command:
-I- Communication link type : 0
-I- Data bus width : 32 bits
-I- External RAM type : SDRAM
-I- Init SDRAM...
-I- Init successful.
-I- End of applet (command : 0 --- status : f)
Got error message:
Error during external RAM initialization.
External RAM access is required to run applets.
Continue anyway? yes or no
After I changed it to 16:
-I- -- EXTRAM ISP Applet 2.9 --
-I- -- AT91SAM9G20-EK
-I- -- Compiled: Jun 22 2009 14:59:31 --
-I- INIT command:
-I- Communication link type : 0
-I- Data bus width : 16 bits
-I- External RAM type : SDRAM
-I- Init SDRAM...
-I- Init successful.
-I- End of applet (command : 0 --- status : 0)
Samba started up successfully
Who is online
Users browsing this forum: No registered users and 1 guest