Talk:SCINI: Submersible Capable of under Ice Navigation and Imaging

From ElphelWiki
Jump to: navigation, search

hehe...

cool to see you where :)

Drop Elphel's flag somewhere ;)

troubles with a 353

I swapped in the 12v DC-DC converter and the power supply side of things seems to be working fine: yellow ethernet light comes on. But during boot the linux kernel crashes. See the end for the serial boot output. This was after I tried reflashing the device...

The second issue came when I tried to reflash the camera. When it powers up and I hold down the reset button, the bootloader does start sending out some kind of low level ethernet packet (can see them with packet sniffer), so I should be able to get fresh firmware in there, right? It doesn't make any nfs queries (kernel doesn't make it that far? or is that part of the bootloader sequence?).

I downloaded and compiled the latest (7.1.2.0) firmware, but the netboot and flashit programs don't work as documented... first, the etraxfsboot program is called with debug level 5 ('-d 5'), but it's max is 4, so I changed that. flashit claims to start booting ("We're doing a flash write, this may take up to a few minutes...") even without the camera connected, while netboot throws errors about the "cmdline" program and stops at fsboot complaining about parameters.

Is there a new way to flash the cameras I haven't figured out? Do I need a different version of etraxfsboot? I'm running on an "installed" version of the liveDVD, but I tried it straight off the liveDVD as well.

   ETRAX FS NAND boot loader
   =========================
   Rev 1, Jul 14 2007 19:49:44
   Boot config: 0x00040000->0x40440000, len 0x00200000, boot @ 0x40440000
   CPU revision: 0x00000020
   Bootloader main at 0x38000ce2
   Data end: 0x3800570c
   Bss: 0x38008000
   Heap: 0x38008000
   Identifying nand chip...
   maf_id: 0x00000020; dev_id: 0x000000f1
   mtd->size == 0x08000000
   scan_bbt(); mtd->size == 0x08000000
   scan_bbt() ...01; mtd->size == 0x08000000
   len == 0x00000100; and BBT_LEN_1 == 0x00000400
   scan_bbt() ...02; mtd->size == 0x08000000
   scan_bbt() ...03; mtd->size == 0x08000000
   scan_bbt() ...1; mtd->size == 0x08000000
   scan_bbt() ...2; mtd->size == 0x08000000
   scan_bbt() search_read_bbts(); mtd->size == 0x08000000
   search_read_bbts() search primary table; mtd->size == 0x08000000
   search_bbt() ...1; mtd->size == 0x08000000
   search_bbt() ...2; maxblocks: 0x00000004; mtd->size == 0x08000000
   Block: 0x000003ff
   Check, if we found a bbt for each requested chip
   Bad block table found at page0x0000ffc0, version 0x00000001
   search_read_bbts() search mirror table
   search_bbt() ...1; mtd->size == 0x08000000
   search_bbt() ...2; maxblocks: 0x00000004; mtd->size == 0x08000000
   Block: 0x000003ff
   Block: 0x000003fe
   Check, if we found a bbt for each requested chip
   Bad block table found at page0x0000ff80, version 0x00000001
   scan_bbt() ...3
   Done.
   Chip identified... 3; NAND 128MiB 3,3V 8-bit
   type: 0x00000004
   flags: 0x000000c5
   size: 0x08000000
   erasesize: 0x00020000
   oobblock: 0x00000800
   oobsize: 0x00000040
   ecctype: 0x00000002
   eccsize: 0x00000100
   Oob info:
   useecc: 0x00000002
   eccbytes: 0x00000018
   eccpos: 0x00000028 0x00000029 0x0000002a 0x0000002b 0x0000002c 0x0000002d 0x0000002e 0x0000002f 0x00000030 0x00000031 0x00000032 0x00000033 0x00000034 0x00000035 0x00000036 0x00000037 0x00000038 0x00000039 0x0000003a 0x0000003b 0x0000003c 0x0000003d 0x0000003e 0x0000003f 
   Bootload in progress...
   New block 0x00040000;len: 0x00200000;start: 0x00040000
   New block 0x00060000;len: 0x001e0000;start: 0x00060000
   New block 0x00080000;len: 0x001c0000;start: 0x00080000
   New block 0x000a0000;len: 0x001a0000;start: 0x000a0000
   New block 0x000c0000;len: 0x00180000;start: 0x000c0000
   New block 0x000e0000;len: 0x00160000;start: 0x000e0000
   New block 0x00100000;len: 0x00140000;start: 0x00100000
   New block 0x00120000;len: 0x00120000;start: 0x00120000
   New block 0x00140000;len: 0x00100000;start: 0x00140000
   New block 0x00160000;len: 0x000e0000;start: 0x00160000
   New block 0x00180000;len: 0x000c0000;start: 0x00180000
   New block 0x001a0000;len: 0x000a0000;start: 0x001a0000
   New block 0x001c0000;len: 0x00080000;start: 0x001c0000
   New block 0x001e0000;len: 0x00060000;start: 0x001e0000
   New block 0x00200000;len: 0x00040000;start: 0x00200000
   New block 0x00220000;len: 0x00020000;start: 0x00220000
   complete, status 0x00000000, loaded 0x00200000 bytes
   Data in DRAM:
   0x25f005b0 0x009cedff 0xbeef05b0
   Booting...
   Uncompressing Linux...
   Done. Now booting the kernel.
   Linux version 2.6.19 (larry@benq) (gcc version 3.2.1 Axis release R64/1.64) #4 Thu Jul 26 10:19:26 CST 2007
   Setting up paging and the MMU.
   Linux/CRISv32 port on ETRAX FS (C) 2003, 2004 Axis Communications AB
   Built 1 zonelists.  Total pages: 8160
   Kernel command line: root=/dev/mtdblock3 init=/linuxrc rootfstype=jffs2
   PID hash table entries: 256 (order: 8, 1024 bytes)
   Dentry cache hash table entries: 8192 (order: 2, 32768 bytes)
   Inode-cache hash table entries: 4096 (order: 1, 16384 bytes)
   Memory: 55656k/65536k available (1539k kernel code, 9880k reserved, 510k data, 64k init)
   Mount-cache hash table entries: 1024
   NET: Registered protocol family 16
   SCSI subsystem initialized
   NET: Registered protocol family 2
   IP route cache hash table entries: 512 (order: -2, 2048 bytes)
   TCP established hash table entries: 2048 (order: 0, 8192 bytes)
   TCP bind hash table entries: 1024 (order: -1, 4096 bytes)
   TCP: Hash tables configured (established 2048 bind 1024)
   TCP reno registered
   Check hardware configuration of Elphel 353 camera
   Elphel 10349 IO extension board is present
   fast_timer_init()
   JFFS2 version 2.2. (NAND) (C) 2001-2006 Red Hat, Inc.
   io scheduler noop registered (default)
   Serial: CRISv32 driver $Revision: 1.78 $ <6>ttyS0 at I/O 0xb0026000 (irq = 68) is a CRISv32
   RAMDISK driver initialized: 16 RAM disks of 4096K size 1024 blocksize
   PPP generic driver version 2.4.2
   ETRAX FS 10/100MBit ethernet v0.01 (c) 2003 Axis Communications AB
   eth0: changed MAC to 00:40:8C:CD:00:00
   ETRAX FS stream co-processor driver v0.01, (c) 2003 Axis Communications AB
   stream co-processor: init done.
   axisflashmap: ...
   NAND device: Manufacturer ID: 0x20, Chip ID: 0xf1 (ST Micro NAND 128MiB 3,3V 8-bit)
   NAND 128MiB 3,3V 8-bit: 0x08000000 bytes of NAND flash memory.
   axisflashmap: Set to boot from NAND flash, making NAND flash primary device.
   axisflashmap: flash read 512 bytes at 0x00040000, data: 00 b0 05 f0 25 ff ed 9c
   axisflashmap: partition table offset 10, data: ef be 84 00 ac 0e 00 00
   axisflashmap: Found a valid partition table at 0xc02339ae-0xc0233a3a.
   offset == 0x00040000, size == 0x007C0000
   offset == 0x00800000, size == 0x01800000
   offset == 0x02000000, size == 0x05000000
   offset == 0x07000000, size == 0x00C00000
   Creating 1 MTD partitions on "NAND 128MiB 3,3V 8-bit":
   0x00000000-0x08000000 : "main"
   Creating 1 MTD partitions on "NAND 128MiB 3,3V 8-bit":
   0x00000000-0x00040000 : "part0"
   Creating 1 MTD partitions on "NAND 128MiB 3,3V 8-bit":
   0x00040000-0x00800000 : "part1"
   Creating 1 MTD partitions on "NAND 128MiB 3,3V 8-bit":
   0x00800000-0x02000000 : "part2"
   Creating 1 MTD partitions on "NAND 128MiB 3,3V 8-bit":
   0x02000000-0x07000000 : "part3"
   Creating 1 MTD partitions on "NAND 128MiB 3,3V 8-bit":
   0x07000000-0x07c00000 : "part4"
   ETRAX FS GPIO driver v2.5, (c) 2003-2006 Axis Communications AB
   Elphel (R) model 353 FPGA (Xilinx (R) XC3S1200E) configuration driverElphel (R) model 353 system clocks (PLL frequency synth.) driverfpga_controlCMOS/MCP camera interrupts initialized
   Initializing DMA registers for EXTDMA3 - CMOS/MCP camera 353 driver
   Elphel (R) model 353 i2c character device driverhist: init ok
   ip_conntrack version 2.4 (512 buckets, 4096 max) - 196 bytes per conntrack
   ip_tables: (C) 2000-2006 Netfilter Core Team
   TCP cubic registered
   NET: Registered protocol family 1
   NET: Registered protocol family 17
   Bridge firewalling registered
   VFS: Mounted root (jffs2 filesystem) readonly.
   Freeing unused kernel memory: 64k freed
   exit: 4: Illegal number: X
   /linuxrc: Mounting /mnt/flash... Empty flash at 0x00377bb8 ends at 0x00378000
   done
   /sbin/rc.fsupgrade: Cannot find /usr/etc/defaultfiles/jimage
   /linuxrc: /sbin/rc.fsupgrade failed!
   /linuxrc: Starting init.
   init: starting up.
   Starting system initialization.
   
   Axis Linux, http://developer.axis.com/
   Copyright (C) 2000-2007 Axis Communications AB
   
   Elphel (R) Model 353 Camera release 7.1.0.9
   
   �[32;01m*�[0m Mounting filesystems... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Initializing /var... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Determining MAC address... 
   
   �[A�[4C�[32;01m+�[0m using saved MAC address: 00:0E:64:09:00:13
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Initializing random number generator... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Setting hostname... 
   
   �[A�[4C�[32;01m+�[0m hostname: "Elphel353"
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Initializing volatile resolver configuration... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Starting ipsetd... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Setting FPGA master clock to 125 MHz... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Programming FPGA with /etc/x353.bit... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   CR[13]=1 (was 0) �[32;01m*�[0m Loaded FPGA rev... 
   
   �[2A�[72C�[34;01m[ �[32;01m3533010�[34;01m ]�[0m
   �[32;01m*�[0m Adjusting DDR SDRAM clock phase... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Writing Huffman tables from /etc/huffman.dat... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Writing default JPEG header from /etc/header.jpeg... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   writing precalculated gamma tables from /etc/gamma.dat
   �[32;01m*�[0m Turn on xtall output (12MHz) to FPGA... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Looking for sensor FPGA... 
   
   �[2A�[71C�[34;01m[ �[31;01mnone�[34;01m ]�[0m
   1970-01-01 00:00:15: (mod_fastcgi.c.1289) --- fastcgi spawning local 
       proc: /bin/php-fcgi 
       port: 0 
       socket /tmp/php.socket 
       min-procs: 1 
       max-procs: 1 
   1970-01-01 00:00:15: (mod_fastcgi.c.1314) --- fastcgi spawning 
       port: 0 
       socket /tmp/php.socket 
       current: 0 / 1 
   �[32;01m*�[0m Everything in /etc/init.d/fpga is done... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Configure broadcast ping... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   System initialization is done.
   /bin/sh: can't access tty; job control turned off
   # 1970-01-01 00:00:15: (log.c.75) server started 
   New runlevel: 3
   �[32;01m*�[0m Starting respawn daemon... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Starting system and kernel logger... 
   Jan  1 00:00:15 Elphel353 syslogd 1.4.1: restart.
   �[A�[4C�[32;01m+�[0m system logger started
   
   �[A�[4C�[32;01m+�[0m kernel logger started
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Bringing lo up... 
   
   �[2A�[72C�[34;01m[ �[32;01mok�[34;01m ]�[0m
   �[32;01m*�[0m Bringing eth0 up... 
   eth0: changed MAC to 00:0E:64:09:00:13
   
   �[A�[4C�[32;01m+�[0m hardware address: 00:0E:64:09:00:13
   
   �[A�[4C�[32;01m+�[0m media: auto
   
   �[A�[4C�[32;01m+�[0m eth0 going up
   eth0: changed MAC to 00:0E:64:09:00:13
   
   �[A�[4C�[32;01m+�[0m IPv4 on eth0
   
   �[A�[4C�[32;01m+�[0m boot protocol: none
   Unable to handle kernel NULL pointer dereference at virtual address 00000000
   Oops: 0002
   CPU: 0
   ERP: c00e8ee2 SRP: c00164a8  CCS: 0a00a008 USP: afa8d588 MOF: 00000000
   r0: c0b15000  r1: c0b15000   r2: c0b15260  r3: c0b15d79
   r4: c01c9568  r5: c00164a8   r6: c01c956c  r7: c0012b74
   r8: 00000000  r9: 00200200  r10: c0b15000 r11: c0b15cd1
   r12: c0b15ccd r13: c3c6dbdc oR10: c0b15000 acr: 00000000
   sp: c3c6db44
       Data MMU Cause: 000002d4
   Instruction MMU Cause: 000180ff
   Process ip (pid: 699, stackpage=c0baed80)
   
   Stack from afa8d588:
       Failing address 0xafa8d588
   
   Call Trace: Failing address 0xafa8d588
   
   Stack from c3c6da64:
       c0004988 c3c6db44 c000eaae c3c6db70 00000000 00000000 c3c6db44 c0005672 
       00000000 c0baed80 c3c6db44 00000002 00000000 c0b15000 c0208200 00000000 
       c0b15000 c0b15000 c0b15260 c0b15d79 c01c9568 c00164a8 c01c956c c0012b74 
   Call Trace: [<c000eaae>] [<c0005672>] [<c00164a8>] [<c0012b74>] [<c00164a8>] [<c0012b74>] [<c00164a8>] 
       [<c00e8ee2>] [<c00e8ec4>] [<c0012bf2>] [<c0004bb4>] [<c000635c>] [<c002d150>] [<c00cb152>] [<c002d422>] 
       [<c002d50c>] [<c002d566>] [<c0034aa8>] [<c000556c>] [<c0034aa8>] [<c000556c>] [<c000a1ba>] [<c0032ace>] 
       [<c0004bb4>] [<c00061b8>] [<c0035904>] [<c003653e>] [<c00317be>] [<c00639e6>] [<c00cb4a1>] [<c0064d3a>] 
       [<c00436b4>] [<c0042730>] [<d7600009>] [<c004278a>] [<c004348c>] [<c004278a>] [<c0005926>] [<c00074c8>] 
   Code: 60 36 3f 3c 79 0d 63 fa 06 20 60 16 (7f) 8a 3f 1c e5 0c 41 b2 bf be 9e 03 
   Kernel panic - not syncing: Aiee, killing interrupt handler!

How I reflash - Andrey

andrey@pundit:~/cvs_sync/elphel353-7.1/elphel353$ sudo su
Password:
root@pundit:/home/andrey/cvs_sync/elphel353-7.1/elphel353# . ./init_env
Prepending "/home/andrey/cvs_sync/elphel353-7.1/elphel353/tools/build/bin" to PATH.
Prepending "/usr/local/cris/bin" to PATH.
root@pundit:/home/andrey/cvs_sync/elphel353-7.1/elphel353# ./ktest -d eth0 mac=000E64080000\ ip=192.168.0.99\ nfs=192.168.0.69:/nfs/elphel353-2.10\ cmd=update
Using internal boot loader: INTERNAL_NW - Network boot (default).
Using internal boot loader: INTERNAL2 - Level2 boot.
Starting boot...
Connected. Booting device with random id 6d77b50c.
Device ID = 6d77b50c
This bootloader compiled by andrey Wed Oct 10 14:15:23 MDT 2007.
Checksum of bootloader is 0x0050c6d4
Waiting for load info.
Got load info.
SET_REGISTER
...
PACKET_INFO
0xc0004000
0x00e34008
JUMP
Exiting with code 0
root@pundit

"cmd=update" only if the current version (boot block) is base on Axis SDK 2.10 (Elphel v. 7.1.x - not 7.0.x), else "cmd=all" and specify the real MAC address

Did it work before replacing DC-DC converter

Did you test the camera before switching to 12V? If yes - maybe just look how good is 3.3V made by the converter (better with oscilloscope, not just multimeter)?--Andrey.filippov 19:00, 18 October 2007 (CDT)