StarOS

From DD-WRT Wiki

Jump to: navigation, search

Contents


This page describes HOWTO move OEM'ed Lucaya units to DD-WRT since you need the original vendor bootloaders. You will need jtag cable and a working flashing software that is working for our cpu and os (eg tjtag, urjtag, OpenOCD).

[edit] Gateworks GW2348-4

get http://bsp.gateworks.com/images/0.7.1/rb.bin.tar.bz2

Flash the Redboot-Image to the baseaddress of the flash. connect to redboot and

fconfig -i

and

fis init -f

flash ddwrt as metioned in the gateworks instruction

[edit] OpenOCD Configuration

Here is an example of OpenOCD configuration (without warranty) for Olimex ARM-USB-OCD JTAG-Interface + GW2348 with 8MB flash and 64MB RAM. Perhaps it also works for other memory configurations without modification.

OpenOCD has to be compiled with ft2232 driver option and appropriate driver (libftd...) has to be installed for Olimex ARM-USB-OCD.

The configuration sets up a working area for faster flashing and reads the file "rb.bin" and writes it to address 0x50000000.

#daemon configuration
telnet_port 4444
gdb_port 3333
openocd 
# Interface config
interface ft2232
ft2232_device_desc "Olimex OpenOCD JTAG"
ft2232_layout olimex-jtag
ft2232_vid_pid 0x15ba 0x0003
# Interface config end
# Reset config
jtag_nsrst_delay 200
jtag_ntrst_delay 200
reset_config trst_and_srst separate
# Reset config end
# Tag
jtag newtap ixp42x cpu -irlen 7 -expected-id 0x19274013
# Target
target create ixp42x.cpu xscale -endian big -chain-position ixp42x.cpu -variant ixp42x
flash bank cfi 0x50000000 0x800000 2 2 ixp42x.cpu
ixp42x.cpu configure -work-area-virt 0 -work-area-phys 0x001000000 -work-area-size 0x100000 -work-area-backup 0
init
reset halt
# set big endian mode
reg XSCALE_CTRL 0xF8
# setup expansion bus CS
mww 0xc4000000 0xbd113c42 # CS0: Flash, 16 Bit, write enabled @0x50000000
flash probe 0
# 32 MB, CAS3
mww 0xcc000000 0x00000018
# disable refresh
mww 0xcc000004 0x00000000
# nop
mww 0xcc000008 0x00000003
sleep 20
# set refresh value
mww 0xcc000004 0x0000081a
# precharge all
mww 0xcc000008 0x00000002
sleep 20
mww 0xcc000008 0x00000004
mww 0xcc000008 0x00000004
mww 0xcc000008 0x00000004
mww 0xcc000008 0x00000004
mww 0xcc000008 0x00000004
mww 0xcc000008 0x00000004
mww 0xcc000008 0x00000004
mww 0xcc000008 0x00000004
mww 0xcc000008 0x00000001
mww 0xcc000008 0x00000006
sleep 200
# map SDRAM to 0x00000000
mww 0xc4000020 0x00fffffe
# flashing
flash protect 0 0 last off
flash erase_sector 0 0 last
flash write_image rb.bin 0x50000000

detailed instruction (german)