Atmel website | ARM Community | AVR freaks | Technical Support
Banner
 FAQ •  Search •  Register •  Login 

All times are UTC + 1 hour [ DST ]




Post new topic Reply to topic  [ 13 posts ] 
Author Message
 Post subject: About AT91SAM9260 custom board
PostPosted: Fri Aug 07, 2009 4:14 pm 
Offline

Joined: Sat Jun 13, 2009 5:50 pm
Posts: 43
I built at91sam9260 custom board (base at91sam9260ek) with two SDRAM chip MT48LC16M16A2TG-7
Firstly, I sent a large 64M test.bin to SDRAM via SAMBA and readback and verify... everything is OK.
I also take AT91Bootstrap, u-boot-1.1.5 run run properly on my custom board.
Howerver, I'm not lucky when boot the Linux kernel-2.6.27 here is my log:


Start AT91Bootstrap...
Load u-boot...

U-Boot 1.1.5 (Aug 7 2009 - 02:36:21)

DRAM: 64 MB
NAND: NAND device: Manufacturer ID: 0xec, Chip ID: 0xd5 (Micron NAND 4MiB 3,3V 8-bit)
NAND: Pagesize: 512, Blocksize: 8K, OOBsize: 16
4 MiB
DataFlash:AT45DB041B
Nb pages: 2048
Page Size: 264
Size= 540672 bytes
Logical address: 0xD0000000
Area 0: D0000000 to D0003FFF (RO)
Area 1: D0004000 to D0007FFF
Area 2: D0008000 to D0037FFF (RO)
Area 3: D0038000 to D0083FFF
In: serial
Out: serial
Err: serial
PHY not reset!!
K-Boot> run kn
Manufacturer ID: 27
OEM/Application ID: 5048
Product name: SD512
Product Revision: 1.1
Product Serial Number: 3946016086
Manufacturing Date: 06/04
Supports partial reads
Does not support partial writes
Write protection:
...reading uImage
1399376 bytes read
## Booting image at 21400000 ...
Image Name: Linux-2.6.27
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1399312 Bytes = 1.3 MB
Load Address: 20008000
Entry Point: 20008000
Verifying Checksum ... OK
OK

Starting kernel ...

Uncompressing Linux.......................................................................................... done, booting the kernel.
Linux version 2.6.27 (root@dhcppc3) (gcc version 4.2.1 (CodeSourcery Sourcery G++ Lite 2007q3-51)) #3 Thu Aug 6 20:59:29 EDT 2009
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
Machine: Atmel AT91SAM9260-EK
Memory policy: ECC disabled, Data cache writeback
Clocks: CPU 198 MHz, master 99 MHz, main 18.432 MHz
CPU0: D VIVT write-back cache
CPU0: I cache: 8192 bytes, associativity 4, 32 byte lines, 64 sets
CPU0: D cache: 8192 bytes, associativity 4, 32 byte lines, 64 sets
Built 1 zonelists in Zone order, mobility grouping on. Total pages: 16256
Kernel command line: mem=64M console=ttyS0,115200 init=/bin/sh root=/dev/mmcblk0p2 rootdelay=5
AT91: 96 gpio irqs in 3 banks
PID hash table entries: 256 (order: 8, 1024 bytes)
Console: colour dummy device 80x30
console [ttyS0] enabled
Dentry cache hash table entries: 8192 (order: 3, 32768 bytes)
Inode-cache hash table entries: 4096 (order: 2, 16384 bytes)
Memory: 64MB = 64MB total
Memory: 61980KB available (2560K code, 209K data, 108K init)
Calibrating delay loop... 99.12 BogoMIPS (lpj=495616)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 288 bytes
NET: Registered protocol family 16
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
Unable to handle kernel NULL pointer dereference at virtual address 00000000
pgd = c0004000
[00000000] *pgd=00000000
Internal error: Oops: 0 [#1]
Modules linked in:
CPU: 0 Not tainted (2.6.27 #3)
PC is at 0x0
LR is at 0x0
pc : [<00000000>] lr : [<00000000>] psr: 60000010
sp : 00000000 ip : 00000000 fp : c3819ddc
r10: 00000002 r9 : 00000000 r8 : c3818000
r7 : 00000000 r6 : c02a6e90 r5 : c3814c40 r4 : 00000000
r3 : 00000000 r2 : 00000800 r1 : c3814c40 r0 : 00000000
Flags: nZCv IRQs on FIQs on Mode USER_32 ISA ARM Segment kernel
Control: 0005317f Table: 20004000 DAC: 00000017
Process swapper (pid: 1, stack limit = 0xc3818260)
---[ end trace 1b75b31a2719ed1c ]---
Kernel panic - not syncing: Attempted to kill init!






Then I changed the bootargs : mem=64M to mem=16M and my board could boot the Linux.
Start AT91Bootstrap...
Load u-boot...

U-Boot 1.1.5 (Aug 7 2009 - 02:36:21)

DRAM: 64 MB
NAND: NAND device: Manufacturer ID: 0xec, Chip ID: 0xd5 (Micron NAND 4MiB 3,3V 8-bit)
NAND: Pagesize: 512, Blocksize: 8K, OOBsize: 16
4 MiB
DataFlash:AT45DB041B
Nb pages: 2048
Page Size: 264
Size= 540672 bytes
Logical address: 0xD0000000
Area 0: D0000000 to D0003FFF (RO)
Area 1: D0004000 to D0007FFF
Area 2: D0008000 to D0037FFF (RO)
Area 3: D0038000 to D0083FFF
In: serial
Out: serial
Err: serial
PHY not reset!!
K-Boot> run kn
Manufacturer ID: 27
OEM/Application ID: 5048
Product name: SD512
Product Revision: 1.1
Product Serial Number: 3946016086
Manufacturing Date: 06/04
Supports partial reads
Does not support partial writes
Write protection:
..-W- No signature found
.bad MBR sector signature 0x0000
** Partition 1 not valid on device 0 **

** Unable to use mmc 0:1 for fatload **
## Booting image at 21400000 ...
Bad Magic Number
K-Boot> Start AT91Bootstrap...
Load u-boot...

U-Boot 1.1.5 (Aug 7 2009 - 02:36:21)

DRAM: 64 MB
NAND: NAND device: Manufacturer ID: 0xec, Chip ID: 0xd5 (Micron NAND 4MiB 3,3V 8-bit)
NAND: Pagesize: 512, Blocksize: 8K, OOBsize: 16
4 MiB
DataFlash:AT45DB041B
Nb pages: 2048
Page Size: 264
Size= 540672 bytes
Logical address: 0xD0000000
Area 0: D0000000 to D0003FFF (RO)
Area 1: D0004000 to D0007FFF
Area 2: D0008000 to D0037FFF (RO)
Area 3: D0038000 to D0083FFF
In: serial
Out: serial
Err: serial
PHY not reset!!
K-Boot> run start
Manufacturer ID: 27
OEM/Application ID: 5048
Product name: SD512
Product Revision: 1.1
Product Serial Number: 3946016086
Manufacturing Date: 06/04
Supports partial reads
Does not support partial writes
Write protection:
..-W- No signature found
.bad MBR sector signature 0x0000
** Partition 1 not valid on device 0 **

** Unable to use mmc 0:1 for fatload **
.-W- No signature found
.bad MBR sector signature 0x0000
** Partition 1 not valid on device 0 **

** Unable to use mmc 0:1 for fatload **
## Booting image at 21400000 ...
Bad Magic Number
K-Boot> Start AT91Bootstrap...
Load u-boot...

U-Boot 1.1.5 (Aug 7 2009 - 02:36:21)

DRAM: 64 MB
NAND: NAND device: Manufacturer ID: 0xec, Chip ID: 0xd5 (Micron NAND 4MiB 3,3V 8-bit)
NAND: Pagesize: 512, Blocksize: 8K, OOBsize: 16
4 MiB
DataFlash:AT45DB041B
Nb pages: 2048
Page Size: 264
Size= 540672 bytes
Logical address: 0xD0000000
Area 0: D0000000 to D0003FFF (RO)
Area 1: D0004000 to D0007FFF
Area 2: D0008000 to D0037FFF (RO)
Area 3: D0038000 to D0083FFF
In: serial
Out: serial
Err: serial
PHY not reset!!
K-Boot> run kn
Manufacturer ID: 27
OEM/Application ID: 5048
Product name: SD512
Product Revision: 1.1
Product Serial Number: 3946016086
Manufacturing Date: 06/04
Supports partial reads
Does not support partial writes
Write protection:
...reading uImage

1419196 bytes read
## Booting image at 21400000 ...
Image Name: Linux-2.6.27
Image Type: ARM Linux Kernel Image (uncompressed)
Data Size: 1419132 Bytes = 1.4 MB
Load Address: 20008000
Entry Point: 20008000
Verifying Checksum ... OK
OK

Starting kernel ...

Uncompressing Linux...........................................................................................
done, booting the kernel.
Linux version 2.6.27 (root@dhcppc3) (gcc version 4.2.1 (CodeSourcery Sourcery G++ Lite 2007q3-51)) #7 Fri Aug 7 09:43:18 EDT 2009
CPU: ARM926EJ-S [41069265] revision 5 (ARMv5TEJ), cr=00053177
Machine: Atmel AT91SAM9260-EK
Memory policy: ECC disabled, Data cache writeback
Clocks: CPU 198 MHz, master 99 MHz, main 18.432 MHz
CPU0: D VIVT write-back cache
CPU0: I cache: 8192 bytes, associativity 4, 32 byte lines, 64 sets
CPU0: D cache: 8192 bytes, associativity 4, 32 byte lines, 64 sets
Built 1 zonelists in Zone order, mobility grouping off. Total pages: 4064
Kernel command line: mem=16M console=ttyS0,115200 init=/bin/sh root=/dev/mmcblk0p2 rootdelay=5
AT91: 96 gpio irqs in 3 banks
PID hash table entries: 64 (order: 6, 256 bytes)
Console: colour dummy device 80x30
console [ttyS0] enabled
Dentry cache hash table entries: 2048 (order: 1, 8192 bytes)
Inode-cache hash table entries: 1024 (order: 0, 4096 bytes)
Memory: 16MB = 16MB total
Memory: 13272KB available (2600K code, 210K data, 108K init)
Calibrating delay loop... 99.12 BogoMIPS (lpj=495616)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
net_namespace: 288 bytes
NET: Registered protocol family 16
SCSI subsystem initialized
usbcore: registered new interface driver usbfs
usbcore: registered new interface driver hub
usbcore: registered new device driver usb
NET: Registered protocol family 2
IP route cache hash table entries: 1024 (order: 0, 4096 bytes)
TCP established hash table entries: 512 (order: 0, 4096 bytes)
TCP bind hash table entries: 512 (order: -1, 2048 bytes)
TCP: Hash tables configured (established 512 bind 512)
TCP reno registered
NET: Registered protocol family 1
NetWinder Floating Point Emulator V0.97 (double precision)
NTFS driver 2.1.29 [Flags: R/W DEBUG].
JFS: nTxBlock = 103, nTxLock = 829
msgmni has been set to 25
io scheduler noop registered
io scheduler anticipatory registered (default)
atmel_usart.0: ttyS0 at MMIO 0xfefff200 (irq = 1) is a ATMEL_SERIAL
atmel_usart.1: ttyS1 at MMIO 0xfffb0000 (irq = 6) is a ATMEL_SERIAL
atmel_usart.2: ttyS2 at MMIO 0xfffb4000 (irq = 7) is a ATMEL_SERIAL
brd: module loaded
Fixed MDIO Bus: probed
macb macb: invalid hw address, using random
MACB_mii_bus: probed
eth0: Atmel MACB at 0xfffc4000 irq 21 (ce:25:1b:aa:00:35)
eth0: attached PHY driver [Generic PHY] (mii_bus:phy_addr=ffffffff:01, irq=-1)
Driver 'sd' needs updating - please use bus_type methods
NAND device: Manufacturer ID: 0xec, Chip ID: 0xd5 (Samsung NAND 2GiB 3,3V 8-bit)
AT91 NAND: 8-bit, net ECC
Scanning device for bad blocks
Bad eraseblock 1 at 0x00080000
Bad eraseblock 4 at 0x00200000
Bad eraseblock 5 at 0x00280000
Bad eraseblock 6 at 0x00300000
Bad eraseblock 7 at 0x00380000
Bad eraseblock 10 at 0x00500000
Bad eraseblock 11 at 0x00580000
Bad eraseblock 60 at 0x01e00000
Bad eraseblock 61 at 0x01e80000
Bad eraseblock 66 at 0x02100000
Bad eraseblock 67 at 0x02180000
Bad eraseblock 102 at 0x03300000
Bad eraseblock 103 at 0x03380000
Bad eraseblock 104 at 0x03400000
Bad eraseblock 105 at 0x03480000
Bad eraseblock 108 at 0x03600000
Bad eraseblock 114 at 0x03900000
Bad eraseblock 115 at 0x03980000
Bad eraseblock 385 at 0x0c080000
Bad eraseblock 511 at 0x0ff80000
Bad eraseblock 2094 at 0x41700000
Bad eraseblock 2095 at 0x41780000
Bad eraseblock 2100 at 0x41a00000
Bad eraseblock 2101 at 0x41a80000
Bad eraseblock 2104 at 0x41c00000
Bad eraseblock 2105 at 0x41c80000
Bad eraseblock 2110 at 0x41f00000
Bad eraseblock 2111 at 0x41f80000
usbmon: debugfs is not available
at91_ohci at91_ohci: AT91 OHCI
at91_ohci at91_ohci: new USB bus registered, assigned bus number 1
at91_ohci at91_ohci: irq 20, io mem 0x00500000
usb usb1: configuration #1 chosen from 1 choice
hub 1-0:1.0: USB hub found
hub 1-0:1.0: 2 ports detected
Initializing USB Mass Storage driver...
usbcore: registered new interface driver usb-storage
USB Mass Storage support registered.
udc: at91_udc version 3 May 2006
mice: PS/2 mouse device common for all mice
rtc-at91sam9 at91_rtt.0: rtc core: registered at91_rtt as rtc0
rtc-at91sam9 at91_rtt.0: rtc0: SET TIME!
i2c /dev entries driver
i2c-gpio i2c-gpio: using pins 55 (SDA) and 56 (SCL)
at91sam9_wdt: invalid timeout (must be between 1 and 16)
TCP cubic registered
NET: Registered protocol family 17
rtc-at91sam9 at91_rtt.0: hctosys: unable to read the hardware clock
Waiting 5sec before mounting root device...
mmc0: host does not support reading read-only switch. assuming write-enable.
mmc0: new SD card at address 1234
mmcblk0: mmc0:1234 SD512 497152KiB
mmcblk0: p1 p2

please help, what wrong in my system ?


Last edited by kamejoko80 on Mon Aug 10, 2009 3:38 pm, edited 1 time in total.

Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Fri Aug 07, 2009 9:08 pm 
Offline

Joined: Wed Jan 09, 2008 5:09 pm
Posts: 186
Location: Mounds View, MN
If you changed the size of the memory, I think you need to modify the bootstrap file with the proper row and column info. I don't think uboot or linux monkey with the register values set by the bootstrap program.

_________________
Tim Barr
Multitech Inc.


Top
 Profile  
 
 Post subject: About AT91SAM9260 custom board
PostPosted: Sat Aug 08, 2009 7:27 am 
Offline

Joined: Sat Jun 13, 2009 5:50 pm
Posts: 43
Thanks in advance for any help ,

I've just changed the memsize parametter of bootargs environment variable.
I tested with some value "mem=64M" , "mem=32M", "mem=16M" "mem=8M" ...
and I found that my board can boot Linux with mesize less than 16M.

I used the u-boot's "mtest" command and found that there are some bad cell in my SDRAM:

mtest 0x20000000 0x23ED3B78

Mem error @ 0x23ED3B6C: found 23F219EC, expected 00034EDB

Mem error @ 0x23ED3B70: found 23ED3B6C, expected 00034EDC

Mem error @ 0x23ED3B74: found 23ED3B6C, expected 00034EDD

Mem error @ 0x23ED3B78: found 00034EDD, expected 00034EDE

Using mtest, I found good memory range in my SDRAMs :
0x20000000 - 0x23ED3B67

to avoid some bad memory cells, how could I modify the memsize parametter in u-boot, kernel-2.6.27 source ?
(may be I have to limit the memory size of my board specific code).

At present, I use AT91Bootstrap1.13, here is my SDRAM init code:

/* Configure SDRAM Controller */
sdram_init( AT91C_SDRAMC_NC_9 |
AT91C_SDRAMC_NR_13 |
AT91C_SDRAMC_CAS_2 |
AT91C_SDRAMC_NB_4_BANKS |
AT91C_SDRAMC_DBW_32_BITS |
AT91C_SDRAMC_TWR_2 |
AT91C_SDRAMC_TRC_7 |
AT91C_SDRAMC_TRP_2 |
AT91C_SDRAMC_TRCD_2 |
AT91C_SDRAMC_TRAS_5 |
AT91C_SDRAMC_TXSR_8, /* Control Register */
(MASTER_CLOCK * 7)/1000000, /* Refresh Timer Register */ /* MASTER_CLOCK = 99328000 */
AT91C_SDRAMC_MD_SDRAM); /* SDRAM (no low power) */ /* T = 10ns */



Furthermore, if we change above code from 64M to 32M,
how could we modify the u-boot's load image address (0x23F00000)
and the uImage's load address (0x21400000) ??

Any hints ?

Thanks for advance


Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Mon Aug 10, 2009 3:55 pm 
Offline

Joined: Sat Jun 13, 2009 5:50 pm
Posts: 43
oh yeah !
temporality, I've removed CS signal of the fault SDRAM, and changed
AT91C_SDRAMC_DBW_32_BITS to AT91C_SDRAMC_DBW_16_BITS.

Change the u-boot's load image address 0x23F00000 to 0x21F00000
and my board can boot Linux @ 32MB :mrgreen:

But I don't know what memory region where the u-boot can pass the board specific informations ?
I only saw the u-boot is using the bd_info structure in it's code ?


Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Wed Oct 14, 2009 10:58 am 
Offline

Joined: Sat Jun 13, 2009 5:50 pm
Posts: 43
Image
I've already finished AT91SAM9260 custom board (32MB SDRAM, 512kB serial dataflash,
256MB NAND Flash, MicroSD interface, 2 layer PCB...)
Thanks ATML corp, and everybody in this forum for supporting me.


Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Thu Oct 29, 2009 9:14 pm 
Offline

Joined: Sat Oct 17, 2009 10:39 pm
Posts: 9
Thanks a lot for the informations in yours posts.

Have your custom board 2 PCB layer only?
or there are other two layer: VCC and GND plane?

Thanks in advance

Luigi


Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Fri Oct 30, 2009 7:57 pm 
Offline

Joined: Sat Jun 13, 2009 5:50 pm
Posts: 43
mattei wrote:
Thanks a lot for the informations in yours posts.

Have your custom board 2 PCB layer only?
or there are other two layer: VCC and GND plane?

Thanks in advance

Luigi


Yes, 2 layer PCB only.
That enough for building a low cost AT91SAM9 Linux development board.
I plan to design AT91SAM9G20 Linux system with 2 layer PCB too.
But the AT91SAM9 MCUs are not available in Vietnam. It is really difficult to by an ATML MCU :D .


Top
 Profile  
 
 Post subject: About AT91SAM9260 custom board
PostPosted: Sat Oct 31, 2009 2:49 pm 
Offline

Joined: Sat Oct 17, 2009 10:39 pm
Posts: 9
You made a very good work!

Is the image in the post is your AT91SAM9260 custom board?

I'm in Italy.
If you want I can send you Atmel MCU ! but I don't know if it's possible and how much expensive is the sending.

Why G20 MCU for your new project?

Have a good day

Luigi


Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Sun Nov 01, 2009 1:28 pm 
Offline

Joined: Sat Jun 13, 2009 5:50 pm
Posts: 43
Thank you very much,

AT91SAM9G20 MCU (@400Mhz) is faster than AT91SAM9260, but their pinout is compatible. Except the AT91SAM9G20's power on Procedures in critical care.

I plan to use the ATML's MCUs for my IPcamera project, but I think the AT91SAM9260 can not run OpenCV applications. Hope the AT91SAM9G20 can do that :wink:


Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Mon Nov 02, 2009 10:09 pm 
Offline

Joined: Sat Oct 17, 2009 10:39 pm
Posts: 9
Me too have to connect a image sensor to AT91SAM9260.

I think that the real problem is the bandwidth between MCU and SDRAM.

Is your board 16bit data bus? or 32bit?

If you have to elaborate the image very quicly is neccesary a 32 bit interface at 133 MHz and the image sensore have to snap image at 30 fps.

Have a good day.

Luigi


Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Tue Nov 03, 2009 3:21 am 
Offline

Joined: Sat Jun 13, 2009 5:50 pm
Posts: 43
At present I'm using 16 bit data bus width. And I don't have ISI image sensor. So, I tried to connect an USB webcam with my custom board,
Use V4L2 MJPG-Streamer application to capture and stream the result on the local webpage. The moving image quite smooth. But I don't believe my system can run at 30f/s, maybe it's limited by the AT91 Full speed USB host controller. I wish ATML's products will be supported High speed USB controller in the furture. Now, I'll try it with OpenCV lirary.

Image


Top
 Profile  
 
 Post subject: Bus frequency
PostPosted: Sat Nov 14, 2009 6:49 pm 
Offline

Joined: Sat Oct 17, 2009 10:39 pm
Posts: 9
Hi,

can you say me the SDRAM frequency bus of your board?

How many bit/s you can read/write from/to SDRAM?

Thanks in Avance

Have a good day

Luigi


Top
 Profile  
 
 Post subject: Re: About AT91SAM9260 custom board
PostPosted: Sun Jan 15, 2012 3:50 pm 
Offline

Joined: Fri Jan 13, 2012 9:12 am
Posts: 1
Hi Everyone
Greetings,

I am planning to design AT91SAM9260 board by acquirement is very basic , 3-4 UART, Nand FLash, RAM, SD slot. i am very low on budget and planning to fabricate my self. i know the challenges occurring at actual fabrication but i like to do my self. if some one post me 2 layer PCB for this board then i will feel very happy............
Thanks & Regards
Mahesh


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 13 posts ] 

All times are UTC + 1 hour [ DST ]


Who is online

Users browsing this forum: Bing [Bot] and 2 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to: