Author Topic: Upgrade Flash Memory  (Read 18529 times)

mr_nice

  • Full Member
  • ***
  • Posts: 156
    • View Profile
Upgrade Flash Memory
« Reply #15 on: April 19, 2010, 05:49:39 am »
Thanks for the update
Do you have a simpad with the a flash mod?
I hope I find some time to test the loader (currently uni is eating all my time  )

If you like to further hack at the uboot front - adding some wake up code would be awesome!

jochen

  • Newbie
  • *
  • Posts: 6
    • View Profile
Upgrade Flash Memory
« Reply #16 on: April 27, 2010, 04:17:49 pm »
Quote from: mr_nice
Thanks for the update
Do you have a simpad with the a flash mod?
I hope I find some time to test the loader (currently uni is eating all my time  )

If you like to further hack at the uboot front - adding some wake up code would be awesome!

My SIMpad is a CL4 with an additional flash chip added to the board.

Currently, I'm running U-Boot and OpenWRT on this device:

Code: [Select]
U-Boot 2010.03-00150-g9d7ee52-dirty (Apr 17 2010 - 12:00:42)

DRAM:  16 MB
Flash: 32 MB
MQ200: Initialization start
MQ200: Initialization finished
In:    serial
Out:   serial
Err:   serial
Hit any key to stop autoboot:  3  2  1  0
## Booting kernel from Legacy Image at 00060000 ...
   Image Name:   Linux-2.6.32.12
   Image Type:   ARM Linux Kernel Image (uncompressed)
   Data Size:    824232 Bytes = 804.9 kB
   Load Address: c0008000
   Entry Point:  c0008000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK
OK

Starting kernel ...

Uncompressing Linux... done, booting the kernel.
Linux version 2.6.32.12 (jochen@dev1.bocc.de) (gcc version 4.3.4 (GCC) ) #2 Tue Apr 27 15:19:12 CEST 2010
CPU: StrongARM-1110 [6901b118] revision 8 (ARMv4), cr=c000717f
CPU: VIVT data cache, VIVT instruction cache
Machine: Simpad
Ignoring unrecognised tag 0x54410008
Memory policy: ECC disabled, Data cache writeback
Built 1 zonelists in Zone order, mobility grouping off.  Total pages: 4064
Kernel command line: console=ttySA0,115200n8
PID hash table entries: 64 (order: -4, 256 bytes)
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: 13056KB available (2016K code, 126K data, 100K init, 0K highmem)
Hierarchical RCU implementation.
NR_IRQS:49
console [ttySA0] enabled
Calibrating delay loop... 137.21 BogoMIPS (lpj=686080)
Mount-cache hash table entries: 512
CPU: Testing write buffer coherency: ok
NET: Registered protocol family 16
bio: create slab at 0
Switching to clocksource oscr
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)
squashfs: version 4.0 (2009/01/31) Phillip Lougher
Registering mini_fo version $Id$
JFFS2 version 2.2. (NAND) (SUMMARY)  © 2001-2006 Red Hat, Inc.
msgmni has been set to 25
io scheduler noop registered
io scheduler deadline registered (default)
mq200 video driver found Vendor: 0x4D51 Device: 0x200
MQ-200: DC00R = 0x0EF2082A
Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
Serial: SA11x0 driver
sa11x0-uart.1: ttySA1 at MMIO 0x80010000 (irq = 15) is a SA1100
sa11x0-uart.3: ttySA0 at MMIO 0x80050000 (irq = 17) is a SA1100
input: Touchscreen panel as /devices/virtual/input/input0
sa1100-0: Found 1 x16 devices at 0x0 in 16-bit bank
 Intel/Sharp Extended Query Table at 0x0031
 Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
SA1100 flash: CFI device at 0x00000000, 16MiB, 16-bit
sa1100-1: Found 1 x16 devices at 0x0 in 16-bit bank
 Intel/Sharp Extended Query Table at 0x0031
 Intel/Sharp Extended Query Table at 0x0031
Using buffer write method
cfi_cmdset_0001: Erase suspend on write enabled
SA1100 flash: CFI device at 0x08000000, 16MiB, 16-bit
Concatenating MTD devices:
(0): "sa1100-0"
(1): "sa1100-1"
into device "sa1100"
RedBoot partition parsing not available
SA1100 flash: using static partition definition
Creating 4 MTD partitions on "sa1100":
0x000000000000-0x000000040000 : "u-boot"
0x000000040000-0x000000060000 : "u-boot env"
0x000000060000-0x000000160000 : "uimage"
0x000000160000-0x000002000000 : "rootfs"
mtd: partition "rootfs" set to be root filesystem
mtd: partition "rootfs_data" created automatically, ofs=240000, len=1DC0000
0x000000240000-0x000002000000 : "rootfs_data"
sa1100_udc: version Apr 27 2010
sa11x0-udc sa11x0-udc: initialized, rx fe000000 tx fe000020 irq 13
g_ether gadget: using random self ethernet address
g_ether gadget: using random host ethernet address
usb0: MAC f2:45:68:75:0b:c2
usb0: HOST MAC ee:04:46:8e:a4:2a
g_ether gadget: Ethernet Gadget, version: Memorial Day 2008
g_ether gadget: g_ether ready
sa11x0-udc sa11x0-udc: Resetting
TCP westwood registered
NET: Registered protocol family 17
802.1Q VLAN Support v1.8 Ben Greear
All bugs added by David S. Miller
VFS: Mounted root (squashfs filesystem) readonly on device 31:3.
Freeing init memory: 100K
Please be patient, while OpenWrt loads ...
- preinit -
Press the [f] key and hit [enter] to enter failsafe mode
- regular preinit -
switching to jffs2
mini_fo: using base directory: /
mini_fo: using storage directory: /overlay
- init -

Please press Enter to activate this console.


BusyBox v1.16.1 (2010-04-27 14:10:05 CEST) built-in shell (ash)
Enter 'help' for a list of built-in commands.

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 KAMIKAZE (bleeding edge, r21182) ------------------
  * 10 oz Vodka       Shake well with ice and strain
  * 10 oz Triple sec  mixture into 10 shot glasses.
  * 10 oz lime juice  Salute!
 ---------------------------------------------------
root@OpenWrt:/# PPP generic driver version 2.4.2
ip_tables: (C) 2000-2006 Netfilter Core Team
NET: Registered protocol family 24
nf_conntrack version 0.5.0 (205 buckets, 820 max)

root@OpenWrt:/# sa11x0-udc sa11x0-udc: Resetting
sa11x0-udc sa11x0-udc: Resetting
sa11x0-udc sa11x0-udc: Resetting
sa11x0-udc sa11x0-udc: Resetting
sa11x0-udc sa11x0-udc: Resetting
sa11x0-udc sa11x0-udc: Resetting
sa11x0-udc sa11x0-udc: Resetting
usbep0: I have been assigned address: 3
g_ether gadget: full speed config #1: CDC Subset/SAFE
ep0_queue: zero byte packet being queued. Setting DE and OPR end exiting
usbep0: Configured (OMP=00000040 IMP=00000040)
ep0_queue: zero byte packet being queued. Setting DE and OPR end exiting

root@OpenWrt:/# ifconfig
lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:0 errors:0 dropped:0 overruns:0 frame:0
          TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:0 (0.0 B)  TX bytes:0 (0.0 B)

usb0      Link encap:Ethernet  HWaddr F2:45:68:75:0B:C2  
          inet addr:192.168.1.12  Bcast:192.168.1.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:36 errors:0 dropped:0 overruns:0 frame:0
          TX packets:9 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000
          RX bytes:8428 (8.2 KiB)  TX bytes:2572 (2.5 KiB)

root@OpenWrt:/# ping 192.168.1.2
PING 192.168.1.2 (192.168.1.2): 56 data bytes
64 bytes from 192.168.1.2: seq=0 ttl=64 time=3.035 ms
64 bytes from 192.168.1.2: seq=1 ttl=64 time=3.596 ms
64 bytes from 192.168.1.2: seq=2 ttl=64 time=3.327 ms
64 bytes from 192.168.1.2: seq=3 ttl=64 time=3.108 ms
^C
--- 192.168.1.2 ping statistics ---
4 packets transmitted, 4 packets received, 0% packet loss
round-trip min/avg/max = 3.035/3.266/3.596 ms
root@OpenWrt:/#

All current code is on http://git.bocc.de.

Thanks,
Jochen

mr_nice

  • Full Member
  • ***
  • Posts: 156
    • View Profile
Upgrade Flash Memory
« Reply #17 on: April 29, 2010, 12:13:55 pm »
nice you did a kernel update
I realy hope to be able to find some time to test it :/

Did you try to sleep/wake up the simpad with uboot?

burn79

  • Guest
Upgrade Flash Memory
« Reply #18 on: May 03, 2010, 01:22:58 pm »
jochen, it seems that your u-boot image works also with my flash upgrade!    

[div class=\'codetop\']CODE[/div][div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']U-Boot 2010.03-00047-g04fb64f-dirty (Apr 02 2010 - 16:23:22)

DRAM:  64 MB
ERROR: too many flash sectors
ERROR: too many flash sectors
Flash: 64 MB
*** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
at: delay
at: check
at: init register
DC00R vor Zuweisung: int: 0 hex: 0
DC00R nach Zuweisung: int: 250742826 hex:ef2082a
PMCSR vor Zuweisung: int: 3 hex:3
PMCSR nach Zuweisung: int: 0 hex:0
at: check for D0 state!
at check for DO state try: 0: PMCSR = int: 0 hex:0
before if
before setup
at: init mqflatp
in mqflatpanel
at: clear_screen
at: draw logo
Hit any key to stop autoboot:  0
Unknown command 'bootp' - try 'help'
Unknown command 'tftp' - try 'help'
Wrong Image Format for bootm command
ERROR: can't get kernel image!
SIMpad # flinfo

Bank # 1: CFI conformant FLASH (16 x 16)  Size: 32 MB in 128 Sectors
  Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x1D
  Erase timeout: 4096 ms, write timeout: 1 ms
  Buffer write timeout: 2 ms, buffer size: 32 bytes

  Sector Start Addresses:
  00000000   RO   00020000   RO   00040000 E RO   00060000 E      00080000 E
  000A0000 E      000C0000 E      000E0000 E      00100000 E      00120000 E
  00140000 E      00160000 E      00180000 E      001A0000 E      001C0000 E
  001E0000 E      00200000 E      00220000 E      00240000 E      00260000 E
  00280000 E      002A0000 E      002C0000 E      002E0000 E      00300000 E
  00320000 E      00340000 E      00360000 E      00380000 E      003A0000 E
  003C0000 E      003E0000 E      00400000        00420000        00440000
  00460000        00480000        004A0000        004C0000        004E0000
  00500000        00520000        00540000        00560000        00580000
  005A0000        005C0000        005E0000        00600000        00620000
  00640000        00660000        00680000        006A0000        006C0000
  006E0000        00700000        00720000        00740000        00760000
  00780000        007A0000        007C0000        007E0000 E      00800000 E
  00820000 E      00840000 E RO   00860000 E      00880000 E      008A0000 E
  008C0000 E      008E0000 E      00900000 E      00920000 E      00940000 E
  00960000 E      00980000 E      009A0000 E      009C0000 E      009E0000 E
  00A00000 E      00A20000 E      00A40000 E      00A60000 E      00A80000 E
  00AA0000 E      00AC0000 E      00AE0000 E      00B00000 E      00B20000 E
  00B40000 E      00B60000 E      00B80000 E      00BA0000 E      00BC0000 E
  00BE0000 E      00C00000 E      00C20000 E      00C40000 E      00C60000 E
  00C80000 E      00CA0000 E      00CC0000 E      00CE0000 E      00D00000 E
  00D20000 E      00D40000 E      00D60000 E      00D80000 E      00DA0000 E
  00DC0000 E      00DE0000 E      00E00000 E      00E20000 E      00E40000 E
  00E60000 E      00E80000 E      00EA0000 E      00EC0000 E      00EE0000 E
  00F00000 E      00F20000 E      00F40000 E      00F60000 E      00F80000 E
  00FA0000 E      00FC0000 E      00FE0000 E

Bank # 2: CFI conformant FLASH (16 x 16)  Size: 32 MB in 128 Sectors
  Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x1D
  Erase timeout: 4096 ms, write timeout: 1 ms
  Buffer write timeout: 2 ms, buffer size: 32 bytes

  Sector Start Addresses:
  08000000 E      08020000 E      08040000 E      08060000 E      08080000 E
  080A0000 E      080C0000 E      080E0000 E      08100000 E      08120000 E
  08140000 E      08160000 E      08180000 E      081A0000 E      081C0000 E
  081E0000 E      08200000 E      08220000 E      08240000 E      08260000 E
  08280000 E      082A0000 E      082C0000 E      082E0000 E      08300000 E
  08320000 E      08340000 E      08360000 E      08380000 E      083A0000 E
  083C0000 E      083E0000 E      08400000 E      08420000 E      08440000 E
  08460000 E      08480000 E      084A0000 E      084C0000 E      084E0000 E
  08500000 E      08520000 E      08540000 E      08560000 E      08580000 E
  085A0000 E      085C0000 E      085E0000 E      08600000 E      08620000 E
  08640000 E      08660000 E      08680000 E      086A0000 E      086C0000 E
  086E0000 E      08700000 E      08720000 E      08740000 E      08760000 E
  08780000 E      087A0000 E      087C0000 E      087E0000 E      08800000 E
  08820000 E      08840000 E      08860000 E      08880000 E      088A0000 E
  088C0000 E      088E0000 E      08900000 E      08920000 E      08940000 E
  08960000 E      08980000 E      089A0000 E      089C0000 E      089E0000 E
  08A00000 E      08A20000 E      08A40000 E      08A60000 E      08A80000 E
  08AA0000 E      08AC0000 E      08AE0000 E      08B00000 E      08B20000 E
  08B40000 E      08B60000 E      08B80000 E      08BA0000 E      08BC0000 E
  08BE0000 E      08C00000 E      08C20000 E      08C40000 E      08C60000 E
  08C80000 E      08CA0000 E      08CC0000 E      08CE0000 E      08D00000 E
  08D20000 E      08D40000 E      08D60000 E      08D80000 E      08DA0000 E
  08DC0000 E      08DE0000 E      08E00000 E      08E20000 E      08E40000 E
  08E60000 E      08E80000 E      08EA0000 E      08EC0000 E      08EE0000 E
  08F00000 E      08F20000 E      08F40000 E      08F60000 E      08F80000 E
  08FA0000 E      08FC0000 E      08FE0000 E
SIMpad #[/div]

But it would be to easy, so there ist directly the next problem: I think, that one or both of the RAM-Chips are damaged
[div class=\'codetop\']CODE[/div][div class=\'codemain\' style=\'height:200px;white-space:pre;overflow:auto\']SIMpad # mtest
Pattern FFFFFFFA  Writing...  Reading...
Mem error @ 0xC0400008: found FFFFFFF0, expected FFFFFFF8

Mem error @ 0xC040000C: found FFFFFFEF, expected FFFFFFF7

Mem error @ 0xC0400010: found FFFFFFEE, expected FFFFFFF6

Mem error @ 0xC0400018: found FFFFFFEC, expected FFFFFFF4

Mem error @ 0xC040001C: found FFFFFFEB, expected FFFFFFF3

Mem error @ 0xC0400020: found FFFFFFEA, expected FFFFFFF2

Mem error @ 0xC0400028: found 0000000C, expected FFFFFFF0

Mem error @ 0xC040002C: found 0000000D, expected FFFFFFEF

Mem error @ 0xC0400030: found 0000000E, expected FFFFFFEE

Mem error @ 0xC0400034: found 0000000F, expected FFFFFFED

Mem error @ 0xC0400038: found 00000010, expected FFFFFFEC

Mem error @ 0xC040003C: found 00000011, expected FFFFFFEB

Mem error @ 0xC0400040: found 00000012, expected FFFFFFEA

Mem error @ 0xC0400048: found 00000014, expected FFFFFFE8

Mem error @ 0xC040004C: found 00000015, expected FFFFFFE7

Mem error @ 0xC0400050: found 00000016, expected FFFFFFE6
tialization (3)

Mem error @ 0xC0400058: found 00000018, expected FFFFFFE4

Mem error @ 0xC040005C: found 00000019, expected FFFFFFE3

Mem error @ 0xC0400060: found 0000001A, expected FFFFFFE2
tialization (3)

Mem error @ 0xC0400068: found 0000001C, expected FFFFFFE0

Mem error @ 0xC040006C: found 0000001D, expected FFFFFFDF
.....[/div]

later more, now my diploma thesis is on first range...

burn

jochen

  • Newbie
  • *
  • Posts: 6
    • View Profile
Upgrade Flash Memory
« Reply #19 on: May 06, 2010, 09:30:54 am »
Quote from: burn79
jochen, it seems that your u-boot image works also with my flash upgrade!  

Great. Except for the "too many flash sectors" error. I'll have a look if this limit can be raised using the config options.

Quote from: burn79
But it would be to easy, so there ist directly the next problem: I think, that one or both of the RAM-Chips are damaged

I think this might be an easy one. The DRAM refresh parameters are set up for a (fixed!) 32MB RAM size. It seems to work for 16MB as well, but definitely not for 64MB.
I guess the read errors are from a non-refreshed DRAM line. So this refresh parameter setting needs improvement (possibly a dynamic setting based on the probed RAM size).

Thanks,
Jochen

jochen

  • Newbie
  • *
  • Posts: 6
    • View Profile
Upgrade Flash Memory
« Reply #20 on: August 05, 2011, 03:04:56 pm »
Quote from: mr_nice
Thanks for the update
Do you have a simpad with the a flash mod?
I hope I find some time to test the loader (currently uni is eating all my time  )

If you like to further hack at the uboot front - adding some wake up code would be awesome!

Finally, I had some time hacking on this again. Suspend/Resume is functional right now.

Thanks,
Jochen