Hello kjk24,
I checked the fs_info.txt and I found the same things inside my DMM with few exceptions.
My clem.img has a different size (3594744). Yours has 3593752.
In my health directory are two files, one named SysHealthLog (size 35750) and a BackupSysHealthLog (size 4096). Yours has only the SysHealthLog (size 3933).
The contents of fs is listed below:
RedBoot> fis unlock fs
RedBoot> fs mount -d /dev/flash/fis/fs -t jffs2 /
RedBoot> fs list
1 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
4 drwxr-xr-x 1 size 0 tmp
5 drwxr-xr-x 1 size 0 user
3 drwxr-xr-x 1 size 0 system
2 drwxr-xr-x 1 size 0 checkpoint
RedBoot> fs cd tmp
RedBoot> fs list
4 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
RedBoot> fs cd ./
RedBoot> fs list
1 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
4 drwxr-xr-x 1 size 0 tmp
5 drwxr-xr-x 1 size 0 user
3 drwxr-xr-x 1 size 0 system
2 drwxr-xr-x 1 size 0 checkpoint
RedBoot> fs cd user
RedBoot> fs list
5 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
10 drwxr-xr-x 1 size 0 setup
11 drwxr-xr-x 1 size 0 stored
9 drwxr-xr-x 1 size 0 calibration
RedBoot> fs cd setup
RedBoot> fs list
10 drwxr-xr-x 1 size 0 .
5 drwxr-xr-x 1 size 0 ..
1051 -rwxr-xr-x 1 size 371 BackupSetupResetData
1052 -rwxr-xr-x 1 size 44 SetupNonResetData
1053 -rwxr-xr-x 1 size 371 SetupResetData
1050 -rwxr-xr-x 1 size 44 BackupSetupNonResetData
RedBoot> fs cd ..
RedBoot> fs list
5 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
10 drwxr-xr-x 1 size 0 setup
11 drwxr-xr-x 1 size 0 stored
9 drwxr-xr-x 1 size 0 calibration
RedBoot> fs cd stored
RedBoot> fs list
11 drwxr-xr-x 1 size 0 .
5 drwxr-xr-x 1 size 0 ..
12 drwxr-xr-x 1 size 0 meas
14 drwxr-xr-x 1 size 0 peak
13 drwxr-xr-x 1 size 0 minmax
15 drwxr-xr-x 1 size 0 recording
16 drwxr-xr-x 1 size 0 records
RedBoot> fs cd ..
RedBoot> fs list
5 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
10 drwxr-xr-x 1 size 0 setup
11 drwxr-xr-x 1 size 0 stored
9 drwxr-xr-x 1 size 0 calibration
RedBoot> fs cd calibration
RedBoot> fs list
9 drwxr-xr-x 1 size 0 .
5 drwxr-xr-x 1 size 0 ..
28 -rwxr-xr-x 1 size 1098 CalConstant
RedBoot> fs cd ./
RedBoot> fs list
5 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
10 drwxr-xr-x 1 size 0 setup
11 drwxr-xr-x 1 size 0 stored
9 drwxr-xr-x 1 size 0 calibration
RedBoot> fs cd ./ !!!!!!!! nu merge
RedBoot> fs list
1 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
4 drwxr-xr-x 1 size 0 tmp
5 drwxr-xr-x 1 size 0 user
3 drwxr-xr-x 1 size 0 system
2 drwxr-xr-x 1 size 0 checkpoint
RedBoot> fs cd system
RedBoot> fs list
3 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
6 drwxr-xr-x 1 size 0 apps
7 drwxr-xr-x 1 size 0 health
RedBoot> fs cd apps
RedBoot> fs list
6 drwxr-xr-x 1 size 0 .
3 drwxr-xr-x 1 size 0 ..
8 -rw-r--r-- 1 size 3594744 clem.img // different size
RedBoot> fs cd ..
RedBoot> fs list
3 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
6 drwxr-xr-x 1 size 0 apps
7 drwxr-xr-x 1 size 0 health
RedBoot> fs cd health
RedBoot> fs list
7 drwxr-xr-x 1 size 0 .
3 drwxr-xr-x 1 size 0 ..
904 -rwxr-xr-x 1 size 35750 SysHealthLog // different size
41 -rwxr-xr-x 1 size 4096 BackupSysHealthLog // new file
RedBoot> fs cd ./
RedBoot> fs list
1 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
4 drwxr-xr-x 1 size 0 tmp
5 drwxr-xr-x 1 size 0 user
3 drwxr-xr-x 1 size 0 system
2 drwxr-xr-x 1 size 0 checkpoint
RedBoot> fs cd checkpoint
RedBoot> fs list
2 drwxr-xr-x 1 size 0 .
1 drwxr-xr-x 1 size 0 ..
40 -rwxr-xr-x 1 size 4 uid
17 -rwxr-xr-x 1 size 4 sysFilesBytes
Next, I updated the bootscript with the one from the redboot info.txt file you attached.
I introduced the exact instructions, keeping the MAC address:
RedBoot> fconfig -i
Initialize non-volatile configuration - continue (y/n)? y
Run script at boot: true
Boot script:
Enter script, terminate with empty line
>> fis unlock fs
>> fs mount -d /dev/flash/fis/fs -t jffs2 /
>> load -m file /system/apps/clem.img
>> fs umount /
>> go -c -n -w 10000
>>
Boot script timeout (1000ms resolution): 10
Use BOOTP for network configuration: false
Gateway IP address: 0.0.0.0
Local IP address: 192.168.9.133
Local IP address mask: 255.255.0.0
Default server IP address: 192.168.100.100
Console baud rate: 115200
DNS server IP address: 0.0.0.0
Set eth0 network hardware address [MAC]: true
eth0 network hardware address [MAC]: 0x0E:0x00:0x00:0xEA:0x18:0xF0
GDB connection port: 9000
Force console for special debug messages: true
Console number for special debug messages: 0
Network debug at boot time: false
Update RedBoot non-volatile configuration - continue (y/n)? y
RedBoot> reset
... Resetting.
And reset. Here is the output:
+Aborted RBINIT
No network interfaces found
RedBoot(tm) bootstrap and debug environment [ROMRAM]
Non-certified release, version v2_0_74 - built 15:56:18, Sep 27 2007
Platform: Fluke Clem (ARM9)
Copyright (C) 2000, 2001, 2002, 2003, 2004 Red Hat, Inc.
Copyright (C) 2003, 2004, 2005, 2006, 2007 eCosCentric Limited
RAM: 0x00000000-0x007fb500, [0x0004dcb0-0x005d8500] available
FLASH: 0x10000000-0x107fffff, 63 x 0x20000 blocks, 4 x 0x8000 blocks
== Executing boot script in 10.000 seconds - enter ^C to abort
RedBoot> fis unlock fs
RedBoot> fs mount -d /dev/flash/fis/fs -t jffs2 /
RedBoot> load -m file /system/apps/clem.img
Entry point: 0x00060040, address range: 0x00060000-0x003bef68
RedBoot> fs umount /
RedBoot> go -c -n -w 5
About to start execution at 0x00060040 - abort with ^C within 5 seconds
It start execution in 5s because I wanted to see what happens after: nothing different, the green led turns off and the same gray screen appears.
Here is what I don't understand (please correct where I am wrong):
- the clem.img is the application that manages everything and is stored in Flash.
- At boot, the script mounts the JFFS2 partition that contains the clem.img
- Next, we load the clem.img itself. This means it is now loaded in RAM, right?
- Next, the go command initiates execution.
Now about the the redboot_info.txt (also correct me where I am wrong):
- The " fis create fs -n -f 0x10040000 -l 0x007A0000 " command will create in FLASH a new file system, starting at address 0x10040000, with length 0x007A0000. The -n will not alter the flash contents, so there is no danger to overwrite important stuff, right?
- The next instructions load the newly created file system in RAM, starting at the lowest free RAM address and write the clem.img in RAM, correct?:
load fs -r -b %{FREEMEMLO} -m ymodem
fis unlock fs
fis create fs
load clem.img -r -b 0x00050000 -m ymodem
fs write -b 0x00050000 -l 0x003bd617 clem.img
RedBoot>fis list
Name FLASH addr Mem addr Length Entry point
RedBoot 0x10000000 0x10000000 0x00040000 0x00000000
fs 0x10040000 0x00000000 0x007A0000 0xFFFFFFFF
FIS directory 0x107E0000 0x107E0000 0x0001F000 0x00000000
RedBoot config 0x107FF000 0x107FF000 0x00001000 0x00000000
- Next, we run "by hand" the boot script:
RedBoot config:
fis unlock fs
fs mount -d /dev/flash/fis/fs -t jffs2 /
load -m file /system/apps/clem.img
fs umount /
go -c -n -w 10000
- The "fis init" command appears to format the FLASH. Won't I loose the clem.img and everything in flash?
- The "copy files to device" commands at the end of the file appear to duplicate the clem.img and save it to BackupClem.img. Where do I get the "new" clem.img and how do I ulopad it? What exactly happens here?
copy file to device:
boot to redboot
fis unlock fs
fs mount -d /dev/flash/fis/fs -t jffs2 /
fs cd /system/apps/
fs list
fs move clem.img BackupClem.img
load clem.img -r -b 0x00050000 -m ymodem
fs write -b 0x00050000 -l 0x003bd617 clem.img
RedBoot> fs list
6 drwxr-xr-x 1 size 0 .
3 drwxr-xr-x 1 size 0 ..
621 -rwxr-xr-x 1 size 3921431 clem.img
596 -rwxr-xr-x 1 size 3922423 BackupClem.img
RedBoot> reset
Sorry for my lack of computer knowledge, they were overwritten long ago.
Thank you for your time and patience,
MihaiV.