OpenWrt Forum Archive

Topic: D-Link DCS-930/932 IP Camera

The content of this topic has been archived between 19 Apr 2018 and 28 Apr 2018. There are no obvious gaps in this topic, but there may still be some posts missing at the end.

Using the details mauritzius provided I got things more or less working. Having tried numerous combinations of Barrier Breaker or trunk and never getting my DCS-930L to successfully flash I tried compiling my own image based on the revision (39854) that was mentioned above, and this one I was actually able to successfully flash and get to a working state. Here are the steps I did to get to that point if anyone wants to give it a try:

Get the git repository and reset to the revision that worked:

git clone git://git.openwrt.org/openwrt.git
git reset --hard 0195522afb7a431b0025f0e33f76ac5ba2be6e6d

After that you need to set the right target architecture and build a default config and download source packages:

echo CONFIG_TARGET_ramips=y > .config
make defconfig V=s 2>&1 | tee build.log
make download V=s 2>&1 | tee build.log

Finally if all goes well try to build an image. This will take quite some time, I'm sure there are ways to avoid building a lot of unneccessary stuff though but I didn't have time to look into that:

make -j 3 V=s 2>&1 | tee build.log

If this works you should find an image in bin/ramips named openwrt-ramips-rt305x-dcs-930-squashfs-factory.bin. I flashed this image using the same procedure as outlined in the wiki and this works, after 30 seconds or so the red light starts flashing and then changes to green. You can telnet into the camera on 192.168.1.1 after that. As noted earlier the jffs2 partition isn't properly initialized meaning you cannot change any settings or install any packages. To fix that run /sbin/firstboot.

So far so good smile Getting the camera working I guessed the normal Barrier Breaker .config might be the source of the problems flashing the official or snapshot images, so I tried building a new image using the latest from trunk, but with the same config as from the successful build. This did not work unfortunately, same problem as before with the reflashing never suceeding. Thinking that it might be a problem with the emergency interface I then tried doing a sysupgrade to Barrier Breaker, and while it seems successful the camera never came back up afterwards:

Writing from <stdin> to firmware ...     
Appending jffs2 data from /tmp/sysupgrade.tgz to firmwar    
Upgrade completed
Rebooting system...

So something breaks with later versions regardless of config it seems, so I'm guessing maybe something in a more recent kernel is to blame? No way to verify that though without adding serial, I might try that next weekend. If anyone wants to try the image I build I can make it available, I was able to successfully revert to the standard D-Link firmware from it as well, but no guarantees that will work obviously.

honken wrote:

If anyone wants to try the image I build I can make it available, I was able to successfully revert to the standard D-Link firmware from it as well, but no guarantees that will work obviously.


Hi honken,

Thank you for the detailed instructions. I managed to build an image following your directions, flashed it, but was not able to boot the camera with this image.

Could you please share your binary image for a try. I use DCS-930L B1.

Thanks in advance.

Has anyone actually compiled a build that works on hardware version B1? Are there any plans to support B1?

wbr wrote:

Has anyone actually compiled a build that works on hardware version B1? Are there any plans to support B1?

Well, I have some progress. I took off the cover and got connection to the serial port.

1. I can tftp the current trunk initramfs image. It runs successfully on the DCS-930L B1. However, this image is too large to fit into the camera flash - it falls back to flash firmware after each reboot.

2. I can tftp the r39854 initramfs image. This image even fits well into the flash.
honken reports to be able to use r39854 squashfs image, but I cannot reproduce his results.

3. Current trunk image generation process is completely broken. No way one can produce a working firmware image with the current trunk and CC R3. One of the problems is that the resulting compressed kernel image is larger than 1MiB, and firmware generation script just cuts off everything over 1MiB. I do not understand why it is programmed this way, but I am sure that this approach cannot produce any working firmware at all.
Here is an example of the error code:

## Booting image at bc050000 ...
raspi_read: from:50000 len:40 
   Image Name:   MIPS OpenWrt Linux-3.18.11
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    3235044 Bytes =  3.1 MB
   Load Address: 80000000
   Entry Point:  80000000
raspi_read: from:50040 len:315ce4 
..................................................   Verifying Checksum ... OK
   Uncompressing Kernel Image ... LZMA ERROR 1 - must RESET board to recover

4. Even if I solve the problem described above, I cannot get the firmware working. Kernel seems to boot fine, but it cannot find the rootfs.

Starting kernel ...

[    0.000000] Linux version 3.18.11 (an@debian) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r45688) ) #5
[    0.000000] SoC Type: Ralink RT5350 id:1 rev:3
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001964c (MIPS 24KEc)
[    0.000000] MIPS: machine is D-Link DCS-930
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Writing ErrCtl register=000088a0
[    0.000000] Readback ErrCtl register=000088a0
[    0.000000] Memory: 29020K/32768K available (2408K kernel code, 120K rwdata, 484K rodata, 180K init, 181K bss, 3748K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:256
[    0.000000] CPU Clock: 360MHz
[    0.000000] clocksource_of_init: no matching clocksources found
[    0.000000] Calibrating delay loop... 239.61 BogoMIPS (lpj=1198080)
[    0.070000] pid_max: default: 32768 minimum: 301
[    0.080000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.090000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.100000] pinctrl core: initialized pinctrl subsystem
[    0.110000] NET: Registered protocol family 16
[    0.120000] pinmux core: rt2880-pinmux does not support function sdram
[    0.130000] rt2880-pinmux pinctrl: invalid function sdram in map table
[    0.140000] rt2880-pinmux pinctrl: invalid group "mdio" for function "gpio"
[    0.150000] rt2880-pinmux pinctrl: invalid group "rgmii" for function "gpio"
[    0.190000] rt2880_gpio 10000600.gpio: registering 24 gpios
[    0.200000] rt2880_gpio 10000600.gpio: registering 24 irq handlers
[    0.210000] Switched to clocksource MIPS
[    0.220000] NET: Registered protocol family 2
[    0.230000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.240000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.250000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.270000] TCP: reno registered
[    0.270000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.280000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.300000] NET: Registered protocol family 1
[    0.310000] rt-timer 10000100.timer: maximum frequency is 7324Hz
[    0.320000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.350000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.360000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.380000] msgmni has been set to 56
[    0.420000] io scheduler noop registered
[    0.430000] io scheduler deadline registered (default)
[    0.440000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.460000] console [ttyS0] disabled
[    0.460000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 2500000) is a 16550A
[    0.480000] console [ttyS0] enabled
[    0.480000] console [ttyS0] enabled
[    0.500000] bootconsole [early0] disabled
[    0.500000] bootconsole [early0] disabled
[    0.510000] of-flash 1f000000.cfi: do_map_probe() failed
[    0.530000] ralink_soc_eth 10100000.ethernet: generated random MAC address aa:bb:cc:dd:ee:ff
[    0.550000] ralink_soc_eth 10100000.ethernet eth0: ralink at 0xb0100000, irq 5
[    0.560000] rt2880_wdt 10000120.watchdog: Initialized
[    0.580000] TCP: cubic registered
[    0.580000] NET: Registered protocol family 17
[    0.590000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[    0.620000] 8021q: 802.1Q VLAN Support v1.8
[    0.640000] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[    0.660000] Please append a correct "root=" boot option; here are the available partitions:
[    0.670000] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    0.670000] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    3.050000] rt305x-esw 10110000.esw: link changed 0x01

(Last edited by an on 6 Jun 2015, 10:54)

5. I also managed to reassemble stock D-Link firmware, activating telnetd and removing most of mydlink software. This firmware is questionable from the security point of view. All the passwords - admin, users, ftp, email - are stored in unencrypted form.

(Last edited by an on 5 Jun 2015, 21:12)

I have a alpha patch for the DCS-93x B1.
Anyone that would like a copy or the resulting firmware can e-mail me.

(Last edited by ldpinney on 5 Jun 2015, 21:21)

ldpinney wrote:

I have a alpha patch for the DCS-93x B1.
Anyone that would like a copy or the resulting firmware can e-mail me.

Great news! Would you share the patch?

Anyone who wants to test my DCS-93x B1 patch and/or firmware before I submit it to OpenWrt ...
just click on my username ... and email your request.

(Last edited by ldpinney on 6 Jun 2015, 01:05)

@an, that's cool that it boots from initramfs. I hadn't thought of trying that as a relatively safe (I think) test. What specific target are you using from trunk? This one "openwrt-15.05-rc1-ramips-rt305x-dcs-930-initramfs-uImage.bin"?

@ldpinney, thanks, please keep us posted on the results of your submittal.

@ldpinney, Ok I see. If I can test without opening the device, I'll give it a whirl. I don't have an extra right now and can't afford to have one in pieces on my workbench wink As I recall, we just put it in recovery mode (boot holding reset button) and flash from there. Do you expect that to work, or do I need a serial connection?

I would recommend you NOT try it without serial access smile

U-Boot 1.1.3

Board: Ralink APSoC DRAM:  32 MB
relocate_code Pointer at: 81fb0000
spi_wait_nsec: 42
spi device id: c2 20 16 c2 20 (2016c220)
find flash: MX25L3205D
raspi_read: from:30000 len:1000
.raspi_read: from:30000 len:1000
.============================================
Ralink UBoot Version: 4.1.2.0
--------------------------------------------
ASIC 5350_MP (Port5<->None)
DRAM_CONF_FROM: Boot-Strapping
DRAM_TYPE: SDRAM
DRAM_SIZE: 256 Mbits
DRAM_WIDTH: 16 bits
DRAM_TOTAL_WIDTH: 16 bits
TOTAL_MEMORY_SIZE: 32 MBytes
Flash component: SPI Flash
============================================
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:128, ways:4, linesz:32 ,total:16384

##### The CPU freq = 360 MHZ ####
estimate memory size =32 Mbytes

Signature: DCS-930 B1         L     Release 1.11 (2011-05-31)


Please choose the operation:
   1: Load system code to SDRAM via TFTP.
   2: Load system code then write to Flash via TFTP.
   3: Boot system code via Flash (default).
   4: Entr boot command line interface.
   7: Load Boot Loader code then write to Flash via Serial.
   9: Load Boot Loader code then write to Flash via TFTP.

You choosed 2

0
raspi_read: from:40028 len:6
.
   
2: System Load Linux Kernel then write to Flash via TFTP.
Warning!! Erase Linux in Flash then burn new one. Are you sure?(Y/N)
Please Input new ones /or Ctrl-C to discard
    Input device IP (192.168.1.213) ==:192.168.1.213
    Input server IP (192.168.1.2) ==:192.168.1.2
    Input Linux Kernel filename (openwrt-ramips-rt305x-dcs-930l-b1-initramfs-uImage.bin) ==:openwrt-ramips-rt305x-dcs-930l-b1-squashfs-sysupgrade.bin

netboot_common, argc= 3

NetTxPacket = 0x81FE4940

KSEG1ADDR(NetTxPacket) = 0xA1FE4940

NetLoop,call eth_halt !

NetLoop,call eth_init !
Trying Eth0 (10/100-M)

Waitting for RX_DMA_BUSY status Start... done


ETH_STATE_ACTIVE!!
TFTP from server 192.168.1.2; our IP address is 192.168.1.213
Filename 'openwrt-ramips-rt305x-dcs-930l-b1-squashfs-sysupgrade.bin'.

TIMEOUT_COUNT=10,Load address: 0x80100000
Loading: checksum bad

ArpTimeoutCheck
Got ARP REPLY, set server/gtwy eth addr (fc:aa:14:26:ee:29)
Got it
#################################################################
     #################################################################
     #################################################################
     #################################################################
     #################################################################
     #################################################################
     #################################################################
     #################################################################
     #################################################################
     #################################################################
     #################################################################
     ##
done
Bytes transferred = 3670020 (380004 hex)
NetBootFileXferSize= 00380004
raspi_erase_write: offs:50000, count:380004
raspi_erase: offs:50000 len:380000
........................................................
raspi_write: to:50000 len:380000
........................................................
raspi_read: from:50000 len:10000
.raspi_read: from:60000 len:10000
.raspi_read: from:70000 len:10000
.raspi_read: from:80000 len:10000
.raspi_read: from:90000 len:10000
.raspi_read: from:a0000 len:10000
.raspi_read: from:b0000 len:10000
.raspi_read: from:c0000 len:10000
.raspi_read: from:d0000 len:10000
.raspi_read: from:e0000 len:10000
.raspi_read: from:f0000 len:10000
.raspi_read: from:100000 len:10000
.raspi_read: from:110000 len:10000
.raspi_read: from:120000 len:10000
.raspi_read: from:130000 len:10000
.raspi_read: from:140000 len:10000
.raspi_read: from:150000 len:10000
.raspi_read: from:160000 len:10000
.raspi_read: from:170000 len:10000
.raspi_read: from:180000 len:10000
.raspi_read: from:190000 len:10000
.raspi_read: from:1a0000 len:10000
.raspi_read: from:1b0000 len:10000
.raspi_read: from:1c0000 len:10000
.raspi_read: from:1d0000 len:10000
.raspi_read: from:1e0000 len:10000
.raspi_read: from:1f0000 len:10000
.raspi_read: from:200000 len:10000
.raspi_read: from:210000 len:10000
.raspi_read: from:220000 len:10000
.raspi_read: from:230000 len:10000
.raspi_read: from:240000 len:10000
.raspi_read: from:250000 len:10000
.raspi_read: from:260000 len:10000
.raspi_read: from:270000 len:10000
.raspi_read: from:280000 len:10000
.raspi_read: from:290000 len:10000
.raspi_read: from:2a0000 len:10000
.raspi_read: from:2b0000 len:10000
.raspi_read: from:2c0000 len:10000
.raspi_read: from:2d0000 len:10000
.raspi_read: from:2e0000 len:10000
.raspi_read: from:2f0000 len:10000
.raspi_read: from:300000 len:10000
.raspi_read: from:310000 len:10000
.raspi_read: from:320000 len:10000
.raspi_read: from:330000 len:10000
.raspi_read: from:340000 len:10000
.raspi_read: from:350000 len:10000
.raspi_read: from:360000 len:10000
.raspi_read: from:370000 len:10000
.raspi_read: from:380000 len:10000
.raspi_read: from:390000 len:10000
.raspi_read: from:3a0000 len:10000
.raspi_read: from:3b0000 len:10000
.raspi_read: from:3c0000 len:10000
.raspi_read: from:3d0000 len:10000
.raspi_erase: offs:3d0000 len:10000
.
raspi_write: to:3d0000 len:10000
.
raspi_read: from:3d0000 len:10000
.Done!
## Booting image at bc050000 ...
raspi_read: from:50000 len:40
.   Image Name:   MIPS OpenWrt Linux-3.18.14
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    1087719 Bytes =  1 MB
   Load Address: 80000000
   Entry Point:  80000000
raspi_read: from:50040 len:1098e7
.................   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80000000) ...
## Giving linux memsize in MB, 32

Starting kernel ...

[    0.000000] Linux version 3.18.14 (black@black) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r45856) ) #7 Fri Jun 5 19:06:49 CDT 2015
[    0.000000] SoC Type: Ralink RT5350 id:1 rev:3
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001964c (MIPS 24KEc)
[    0.000000] MIPS: machine is D-Link DCS-930L B1
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Writing ErrCtl register=0000e84f
[    0.000000] Readback ErrCtl register=0000e84f
[    0.000000] Memory: 29016K/32768K available (2409K kernel code, 119K rwdata, 484K rodata, 180K init, 181K bss, 3752K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:256
[    0.000000] CPU Clock: 360MHz
[    0.000000] systick: running - mult: 214748, shift: 32
[    0.010000] Calibrating delay loop... 239.61 BogoMIPS (lpj=1198080)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.090000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.100000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.110000] pinctrl core: initialized pinctrl subsystem
[    0.120000] NET: Registered protocol family 16
[    0.170000] rt2880_gpio 10000600.gpio: registering 22 gpios
[    0.180000] rt2880_gpio 10000600.gpio: registering 22 irq handlers
[    0.190000] Switched to clocksource systick
[    0.200000] NET: Registered protocol family 2
[    0.210000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.220000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.230000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.250000] TCP: reno registered
[    0.250000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.260000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.280000] NET: Registered protocol family 1
[    0.290000] rt-timer 10000100.timer: maximum frequency is 7324Hz
[    0.300000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.330000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.340000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.360000] msgmni has been set to 56
[    0.400000] io scheduler noop registered
[    0.410000] io scheduler deadline registered (default)
[    0.420000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[147]
[    0.430000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[161]
[    0.450000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.460000] console [ttyS0] disabled
[    0.470000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 2500000) is a 16550A
[    0.490000] console [ttyS0] enabled
[    0.490000] console [ttyS0] enabled
[    0.500000] bootconsole [early0] disabled
[    0.500000] bootconsole [early0] disabled
[    0.530000] m25p80 spi32766.0: mx25l3205d (4096 Kbytes)
[    0.540000] 4 ofpart partitions found on MTD device spi32766.0
[    0.550000] Creating 4 MTD partitions on "spi32766.0":
[    0.560000] 0x000000000000-0x000000030000 : "u-boot"
[    0.570000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.590000] 0x000000040000-0x000000050000 : "factory"
[    0.600000] 0x000000050000-0x000000400000 : "firmware"
[    0.650000] 2 uimage-fw partitions found on MTD device firmware
[    0.660000] 0x000000050000-0x000000159927 : "kernel"
[    0.670000] 0x000000159927-0x000000400000 : "rootfs"
[    0.690000] mtd: device 5 (rootfs) set to be root filesystem
[    0.700000] 1 squashfs-split partitions found on MTD device rootfs
[    0.710000] 0x0000003d0000-0x000000400000 : "rootfs_data"
[    0.730000] ralink_soc_eth 10100000.ethernet eth0: ralink at 0xb0100000, irq 5
[    0.750000] rt2880_wdt 10000120.watchdog: Initialized
[    0.760000] TCP: cubic registered
[    0.760000] NET: Registered protocol family 17
[    0.770000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[    0.800000] 8021q: 802.1Q VLAN Support v1.8
[    0.840000] VFS: Mounted root (squashfs filesystem) readonly on device 31:5.
[    0.850000] Freeing unused kernel memory: 180K (802f3000 - 80320000)
[    4.060000] init: Console is alive
[    4.070000] init: - watchdog -
[    7.950000] usbcore: registered new interface driver usbfs
[    7.960000] usbcore: registered new interface driver hub
[    7.980000] usbcore: registered new device driver usb
[    7.990000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    8.010000] ehci-platform: EHCI generic platform driver
[    8.220000] phy phy-usbphy.0: remote usb device wakeup disabled
[    8.230000] phy phy-usbphy.0: UTMI 16bit 30MHz
[    8.240000] ehci-platform 101c0000.ehci: EHCI Host Controller
[    8.250000] ehci-platform 101c0000.ehci: new USB bus registered, assigned bus number 1
[    8.270000] ehci-platform 101c0000.ehci: irq 26, io mem 0x101c0000
[    8.300000] ehci-platform 101c0000.ehci: USB 2.0 started, EHCI 1.00
[    8.310000] hub 1-0:1.0: USB hub found
[    8.320000] hub 1-0:1.0: 1 port detected
[    8.330000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    8.350000] ohci-platform: OHCI generic platform driver
[    8.360000] ohci-platform 101c1000.ohci: Generic Platform OHCI controller
[    8.370000] ohci-platform 101c1000.ohci: new USB bus registered, assigned bus number 2
[    8.390000] ohci-platform 101c1000.ohci: irq 26, io mem 0x101c1000
[    8.460000] hub 2-0:1.0: USB hub found
[    8.470000] hub 2-0:1.0: 1 port detected
[    9.150000] init: - preinit -
[    9.640000] usb 2-1: new full-speed USB device number 2 using ohci-platform
[    9.970000] random: procd urandom read with 12 bits of entropy available
[   10.540000] rt305x-esw 10110000.esw: link changed 0x00
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[   12.130000] rt305x-esw 10110000.esw: link changed 0x01
/etc/preinit: line 1: mount_root: not found
[   14.520000] procd: - early -
[   14.520000] procd: - watchdog -
[   15.800000] procd: - ubus -
Failed to connect to ubus
[   17.020000] procd: - init -
Please press Enter to activate this console.
[   18.610000] NET: Registered protocol family 10
[   18.640000] zram: Created 1 device(s) ...
[   18.750000] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   18.820000] Linux video capture interface: v2.00
[   18.850000] Loading modules backported from Linux version master-2015-03-09-0-g141f155
[   18.870000] Backport generated by backports.git backports-20150129-0-gdd4a670
[   18.900000] ip_tables: (C) 2000-2006 Netfilter Core Team
[   18.930000] nf_conntrack version 0.5.0 (456 buckets, 1824 max)
[   19.000000] uvcvideo: Found UVC 1.00 device <unnamed> (1b3b:2970)
[   19.010000] uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
[   19.030000] input: UVC Camera (1b3b:2970) as /devices/101c1000.ohci/usb2/2-1/2-1:1.0/input/input0
[   19.050000] usbcore: registered new interface driver uvcvideo
[   19.060000] USB Video Class driver (1.1.1)
[   19.100000] xt_time: kernel timezone is -0000
[   19.180000] cfg80211: Calling CRDA to update world regulatory domain
[   19.210000] cfg80211: World regulatory domain updated:
[   19.220000] cfg80211:  DFS Master region: unset
[   19.220000] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[   19.240000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[   19.260000] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[   19.280000] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[   19.290000] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[   19.310000] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[   19.330000] cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[   19.330000] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[   19.330000] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[   19.330000] usbcore: registered new interface driver snd-usb-audio
[   19.330000] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5350, rev 0500 detected
[   19.330000] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 5350 detected
[   24.250000] zram0: detected capacity change from 0 to 14680064
[   24.280000] Adding 14332k swap on /dev/zram0.  Priority:-1 extents:1 across:14332k SS
[  105.280000] random: nonblocking pool is initialized



BusyBox v1.23.2 (2015-05-31 11:52:33 CDT) built-in shell (ash)

  _______                     ________        __
|       |.-----.-----.-----.|  |  |  |.----.|  |_
|   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
|_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
-----------------------------------------------------
CHAOS CALMER (Bleeding Edge, r45907)
-----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
-----------------------------------------------------
root@OpenWrt:/

@ldpinney, thank a lot for your efforts. I downloaded your firmware and I'll give it a try over the weekend.
I feel like a toddler now, cause I do not know how to write you a PM. When I open your profile (actually any profile here), I do not see any email address or any "send PM" button... Sorry for that.

@wbr, I downloaded the trunk tree about 2 weeks ago, apparently 1 or 2 days before 15.05 was announced. Image's name is openwrt-ramips-rt305x-dcs-930-initramfs-uImage.bin in my case.

P.S. I could upload initramfs image only through tftp. I was not able to use the standard dcs-930 firmware recovery procedure.

(Last edited by an on 6 Jun 2015, 06:33)

Will the patch/firmware also work with a 933L B1 camera?

On my 933L all outside indication and the web interface report it as being an A1 version but inside on the circuits it appears to be a B1, I tried putting OpenWRT on it a couple months ago and had to revert back  to stock firmware, just as the wki states for B1 version.

EarthwormD wrote:

Will the patch/firmware also work with a 933L B1 camera?

The 930 B1 has a RT5350F...The 933L B1 has a RT3352F.

It may work...not certain how well though smile

@ldpinney, I tried you images as well as your patch yesterday.

The initramfs FW boots fine both to SDRAM as well as to flash. The squashes-sysupgrade one boots only if I upload it to flash (seems to be reasonable), however, it does not activate jffs2 file system.

I also made fresh install of the current trunk, applied your patch and compiled both dcs-930 as well as dcd-930l-b1 targets. I had to spend some time optimizing the size of the FW, as DCS-930L limits the firmware size to 3.5 MB.

openwrt-ramips-rt305x-dcs-930-initramfs-uImage.bin and openwrt-ramips-rt305x-dcs-930l-b1-initramfs-uImage.bin both boot just fine from SDRAM or flash.

openwrt-ramips-rt305x-dcs-930l-b1-squashfs-sysupgrade.bin boots from flash and activates the jffs2 too. This is a working solution, however it requires serial access to upload the firmware.

openwrt-ramips-rt305x-dcs-930l-b1-squashfs-factory.bin does not boot. The kernel boots, but cannot find the rootfs. The problem should be easy to solve as the structure of the original D-Link firmware is well known.
I guess, taking the first 327680 bytes of the original firmware, attaching the openwrt-ramips-rt305x-dcs-930l-b1-squashfs-sysupgrade.bin and running "addchecksum" from D-Link SDK could be just fine.

@ an
Yes it has become increasing difficult to build trunk for 4M flash sad
I have done nothing to make the "squashfs-factory.bin" workable.
I don't see much point in it....unless the patch gets picked up.
So currently the only way to use OpenWrt is the serial / tftp method.

@an if you got a B1 version I don't think my firmware will work unfortunately sad Happy to send it over if you want to give it it a try anyway.

I finally got time to open open my old out of warranty DCS-930 and after ordering some additional parts I got a serial console connector soldered to it, and now finally working serial console smile I'll update the wiki later with some details, but for those wondering the DCS-930 seems to be equal to the DCSl-930L from what I can see, same amount of memory and same CPU as well. Booting from the emergency web interface and then flashing the standard Barrier Breaker firmware gives this:

U-Boot 1.1.3

Board: Ralink APSoC DRAM:  32 MB
relocate_code Pointer at: 81fac000
config usb..
flash_protect ON: from 0xBF000000 to 0xBF021767
flash_protect ON: from 0xBF030000 to 0xBF030FFF
*** Warning - bad CRC, using default environment

============================================
Ralink UBoot Version: 3.5.2.0
--------------------------------------------
ASIC 3052_MP2 (Port5<->None)
DRAM component: 256 Mbits SDR
DRAM bus: 16 bit
Total memory: 32 MBytes
Flash component: NOR Flash
============================================
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:128, ways:4, linesz:32 ,total:16384

 ##### The CPU freq = 320 MHZ ####
 estimate memory size =32 Mbytes

Signature: DCS-930                  Release 1.11 (2011-05-31)


Please choose the operation:
   1: Load system code to SDRAM via TFTP.
   2: Load system code then write to Flash via TFTP.
   3: Boot system code via Flash (default).
   4: Entr boot command line interface.
   7: Load Boot Loader code then write to Flash via Serial.
   9: Load Boot Loader code then write to Flash via TFTP.
 0
***** detect reset button pressed *****

Entering HTTP server.
do_httpsvr: argc = 1
do_httpsvr: 0:[httpsvr]
do_httpsvr: loadaddr = 0x80100000
NetLoop: NetRxPackets[0] = 0x81fe7080
NetLoop: NetRxPackets[1] = 0x81fe7680
NetLoop: NetRxPackets[2] = 0x81fe7c80
NetLoop: NetRxPackets[3] = 0x81fe8280
NetLoop: NetRxPackets[4] = 0x81fe8880
NetLoop: NetRxPackets[5] = 0x81fe8e80
NetLoop: NetRxPackets[6] = 0x81fe9480
NetLoop: NetRxPackets[7] = 0x81fe9a80
NetLoop: NetRxPackets[8] = 0x81fea080
NetLoop: NetRxPackets[9] = 0x81fea680
NetLoop: NetRxPackets[10] = 0x81feac80
NetLoop: NetRxPackets[11] = 0x81feb280
NetLoop: NetRxPackets[12] = 0x81feb880
NetLoop: NetRxPackets[13] = 0x81febe80
NetLoop: NetRxPackets[14] = 0x81fec480
NetLoop: NetRxPackets[15] = 0x81feca80
NetLoop: NetRxPackets[16] = 0x81fed080
NetLoop: NetRxPackets[17] = 0x81fed680
NetLoop: NetRxPackets[18] = 0x81fedc80
NetLoop: NetRxPackets[19] = 0x81fee280
NetLoop: NetTxPacket = 0x81fe6a80
NetLoop: KSEG1ADDR(NetTxPacket) = 0xa1fe6a80
Trying Eth0 (10/100-M)

 Waitting for RX_DMA_BUSY status Start... done


 Header Payload scatter function is Disable !!
 ETH_STATE_ACTIVE!!
NetLoop: NetOurEther: 00:0C:43:30:52:77
Using Eth0 (10/100-M) device
Start HTTP server on port 80, 192.168.0.20
Running ...
NetInitTcp: port = 80
send_syn_ack: iphdr->check = 0x7730
send_syn_ack: tcphdr->check = 0x08f5
HttpHandler: prepare for new session!
HttpHandler: HEADER[GET / HTTP/1.1]
HttpHandler: End of header!
HttpHandler: got method GET!
HandleTCP: 0x00000200 = 0x0cc7885d - 0x0cc7865d
HandleTCP: bufsize = 0x00000000
HttpHandler: HEADER[GET /favicon.ico HTTP/1.1]
HttpHandler: End of header!
HttpHandler: got method GET!
HandleTCP: 0x00000200 = 0x0cc78a5d - 0x0cc7885d
HandleTCP: bufsize = 0x00000000
HttpHandler: HEADER[GET /favicon.ico HTTP/1.1]
HttpHandler: End of header!
HttpHandler: got method GET!
HandleTCP: 0x00000200 = 0x0cc78c5d - 0x0cc78a5d
HandleTCP: bufsize = 0x00000000
HttpHandler: HEADER[POST / HTTP/1.1]
HttpHandler: End of header!
mpfd_decode: start, boundary = [---------------------------3974536432135665819580012659], 55 bytes, clen = 4194707
mpfd_decode: FOUND [---------------------------3974536432135665819580012659]
mpfd_decode: BOUNDARY end with []
mpfd_decode: PARTHEAD [Content-Disposition: form-data; name="firmware"; filename="openwrt-ramips-rt305x-dcs-930-squashfs-factory.0
mpfd_decode: PARTHEAD [Content-Type: application/octet-stream] 38
mpfd_decode: PARTHEAD [] 0
mpfd_decode: entering MPFD_WAIT!
mpfd_decode: load_addr = 0x80100000
mpfd_decode: UPLOADED, upsize = 4194304
HttpHandler: DONE!!! upsize = 4194304
==============================================
 Image Name     : MIPS OpenWrt Linux-3.10.49
 Image Size     : 3331394
==============================================
HttpHandler: HEADER[]
HttpHandler: End of header!
HandleTCP: 0x00000360 = 0x0cc78fbd - 0x0cc78c5d
HandleTCP: bufsize = 0x00000000
Entering program & boot linux.
Erase linux block (0xbf050000 ~ 0xbf37ffff)

 b_end =BF3FFFFF
Erase Flash from 0xbf050000 to 0xbf37ffff in Bank # 1
*****************Erased 51 sectors

 Copy linux image[0 byte] to Flash[0xBF050000]....
Copy to Flash...
 Copy 3331394 byte to Flash...
 addr = 0xBF0B2832 ,cnt=2927888
 addr = 0xBF115066 ,cnt=2524380
 addr = 0xBF17789A ,cnt=2120872
 addr = 0xBF1DA0CE ,cnt=1717364
 addr = 0xBF23C902 ,cnt=1313856
 addr = 0xBF29F136 ,cnt=910348
 addr = 0xBF30196A ,cnt=506840
 addr = 0xBF36419E ,cnt=103332 done
## Booting image at bf050000 ...
   Image Name:   MIPS OpenWrt Linux-3.10.49
   Created:      2014-10-02   7:20:59 UTC
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    3331330 Bytes =  3.2 MB
   Load Address: 80000000
   Entry Point:  80000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... LZMA ERROR 1 - must RESET board to recover

So flashing works and it reboots successfully, but then ends up in a reboot loop as it's unable to uncompress the kernel. I've been trying to find an explanation for the LZMA error message but without much success so far. Anyone got any hints as to what that error might indicate? I found some indication that it might be a too big kernel, but nothing more specific unfortunately.

I tried flashing the image I had succesfully managed to flash earlier, and this is what it looks like after flashing:

==============================================
 Image Name     : MIPS OpenWrt Linux-3.10.32  
 Image Size     : 2805262                   
==============================================
HttpHandler: HEADER[]                         
HttpHandler: End of header!
HandleTCP: 0x00000360 = 0x78434601 - 0x784342a1
HandleTCP: bufsize = 0x00000000                
Entering program & boot linux. 
Erase linux block (0xbf050000 ~ 0xbf2fffff)
                                           
 b_end =BF3FFFFF
Erase Flash from 0xbf050000 to 0xbf2fffff in Bank # 1 
**************Erased 43 sectors                       
                               
 Copy linux image[0 byte] to Flash[0xBF050000].... 
Copy to Flash...                                   
 Copy 2805262 byte to Flash... 
 addr = 0xBF0B2832 ,cnt=2401756 
 addr = 0xBF115066 ,cnt=1998248 
 addr = 0xBF17789A ,cnt=1594740 
 addr = 0xBF1DA0CE ,cnt=1191232 
 addr = 0xBF23C902 ,cnt=787724  
 addr = 0xBF29F136 ,cnt=384216 done
## Booting image at bf050000 ...   
   Image Name:   MIPS OpenWrt Linux-3.10.32
   Created:      2015-04-25  23:00:59 UTC  
   Image Type:   MIPS Linux Kernel Image (lzma compressed)
   Data Size:    2805198 Bytes =  2.7 MB                  
   Load Address: 80000000               
   Entry Point:  80000000
   Verifying Checksum ... OK
   Uncompressing Kernel Image ... OK
No initrd                           
## Transferring control to Linux (at address 80000000) ...
## Giving linux memsize in MB, 32                         
                                 
Starting kernel ...

Comparing the output from this one and the failing barrier breaker image the only thing that differ apart from the kernel version is the size, for the Barrier Breaker image it's 3,2MB whereas this one is 2,7MB only. Could it be that the Barrier Breaker one is simply a bit too big?

@ honken. Meanwhile, I learned how to build working firmware, and came to the conclusion to avoid this device in the future.

Memory is the key issue. In order to build a working squash fs image, one need to keep the Linux kernel image below 1 MiB and the combined Kernel + SquashFS image below 3866624 bytes (320 kB are used by boot loader and small D-Link http-server responsible for emergency web interface).

The default OpenWRT builds do not keep (compressed) Linux kernel below 1 MiB and are not flashable (one can boot generic initramfs image directly to RAM though).

I would advise to apply ldpinney's patch, as he/she correctly described the right MTD partitioning. The patch is though not mandatory to build a flashable image.

If one takes the memory restrictions into account, one can compile a working XYZ-squashfs-sysupgrade.bin firmware image and flash it to the camera using serial cable and tftp server.

The XYZ-factory.bin images do not boot. It looks like kernel does not receive the correct information about rootfs whereabouts.

(Last edited by an on 18 Jun 2015, 06:58)

@ honken

Uncompressing Kernel Image ... LZMA ERROR 1 - must RESET board to recover

This error appears when compressed kernel is larger then 1 MiB. OpenWRT firmware building procedure contains following bug: if kernel image (compressed with lzma) is larger then 1 MiB, then everything above 1 MiB is simply cut off using dd. As a result the image perfectly fits to 1 MiB restriction, but can never be decompressed smile

Starting kernel ...

Probably means that bootloader does not know where the kernel starts.

Another frequent error:

Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

This happens mostly with factory.bin images (if kernel is small enough) - kernel boots, but does not know where to look for the Root FS.

(Last edited by an on 18 Jun 2015, 07:00)

Using the above-mentioned approach I managed to compile squashfs-sysupgrade.bin image containing some generic OpenWRT functionality + mjpg-streamer, motion and relayd packages. The camera now perfectly works as a kind of wifi repeater, but camera-functionality is practically off sad Mjpg-streamer provides green-colored unrecognizable picture. One of my intermediate builds had functional mjpg-streamer, but I have no more energy and time to check all my previous builds (some 20 or so) and to investigate the problem.

Below are some boot logs examples.

Working r45924 squashfs-sysupgrade.bin with mjpg-streamer, motion, relayd and some minor customization. First install via tftp and serial cable:

U-Boot 1.1.3


Board: Ralink APSoC DRAM:  32 MB

relocate_code Pointer at: 81fb0000

******************************

Software System Reset Occurred

******************************

spi_wait_nsec: 42 

spi device id: c2 20 16 c2 20 (2016c220)

find flash: MX25L3205D

raspi_read: from:30000 len:1000 

.raspi_read: from:30000 len:1000 

.============================================ 

Ralink UBoot Version: 4.1.2.0

-------------------------------------------- 

ASIC 5350_MP (Port5<->None)

DRAM_CONF_FROM: Boot-Strapping 

DRAM_TYPE: SDRAM 

DRAM_SIZE: 256 Mbits

DRAM_WIDTH: 16 bits

DRAM_TOTAL_WIDTH: 16 bits

TOTAL_MEMORY_SIZE: 32 MBytes

Flash component: SPI Flash

============================================ 

icache: sets:256, ways:4, linesz:32 ,total:32768

dcache: sets:128, ways:4, linesz:32 ,total:16384 


 ##### The CPU freq = 360 MHZ #### 

 estimate memory size =32 Mbytes


Signature: DCS-930 B1         L     Release 1.11 (2011-05-31)



Please choose the operation: 

   1: Load system code to SDRAM via TFTP. 

   2: Load system code then write to Flash via TFTP. 

   3: Boot system code via Flash (default).

   4: Entr boot command line interface.

   7: Load Boot Loader code then write to Flash via Serial. 

   9: Load Boot Loader code then write to Flash via TFTP. 



You choosed 2


 0 

raspi_read: from:40028 len:6 

.

   

2: System Load Linux Kernel then write to Flash via TFTP. 

 Warning!! Erase Linux in Flash then burn new one. Are you sure?(Y/N)

 Please Input new ones /or Ctrl-C to discard

    Input device IP (192.168.0.20) ==:192.168.0.20

    Input server IP (192.168.0.3) ==:192.168.0.3

    Input Linux Kernel filename (openwrt-ramips-rt305x-dcs-930l-b1-initramfs-uImage.bin) ==:openwrt-ramips-rt305x-dcs-930l-b1-squashfs-sysupgrade.bin


 netboot_common, argc= 3 


 NetTxPacket = 0x81FE4940 


 KSEG1ADDR(NetTxPacket) = 0xA1FE4940 


 NetLoop,call eth_halt ! 


 NetLoop,call eth_init ! 

Trying Eth0 (10/100-M)


 Waitting for RX_DMA_BUSY status Start... done



 ETH_STATE_ACTIVE!! 

TFTP from server 192.168.0.3; our IP address is 192.168.0.20

Filename 'openwrt-ramips-rt305x-dcs-930l-b1-squashfs-sysupgrade.bin'.


 TIMEOUT_COUNT=10,Load address: 0x80100000

Loading: *Got ARP REPLY, set server/gtwy eth addr (xx:xx:xx:xx:xx:xx)

Got it

#################################################################

     #################################################################

     #################################################################

     #################################################################

     #################################################################

     #################################################################

     #################################################################

     #################################################################

     #################################################################

     #################################################################

     ################

done

Bytes transferred = 3407876 (340004 hex)

NetBootFileXferSize= 00340004

raspi_erase_write: offs:50000, count:340004

raspi_erase: offs:50000 len:340000

....................................................

raspi_write: to:50000 len:340000 

....................................................

raspi_read: from:50000 len:10000 

.raspi_read: from:60000 len:10000 

.raspi_read: from:70000 len:10000 

.raspi_read: from:80000 len:10000 

.raspi_read: from:90000 len:10000 

.raspi_read: from:a0000 len:10000 

.raspi_read: from:b0000 len:10000 

.raspi_read: from:c0000 len:10000 

.raspi_read: from:d0000 len:10000 

.raspi_read: from:e0000 len:10000 

.raspi_read: from:f0000 len:10000 

.raspi_read: from:100000 len:10000 

.raspi_read: from:110000 len:10000 

.raspi_read: from:120000 len:10000 

.raspi_read: from:130000 len:10000 

.raspi_read: from:140000 len:10000 

.raspi_read: from:150000 len:10000 

.raspi_read: from:160000 len:10000 

.raspi_read: from:170000 len:10000 

.raspi_read: from:180000 len:10000 

.raspi_read: from:190000 len:10000 

.raspi_read: from:1a0000 len:10000 

.raspi_read: from:1b0000 len:10000 

.raspi_read: from:1c0000 len:10000 

.raspi_read: from:1d0000 len:10000 

.raspi_read: from:1e0000 len:10000 

.raspi_read: from:1f0000 len:10000 

.raspi_read: from:200000 len:10000 

.raspi_read: from:210000 len:10000 

.raspi_read: from:220000 len:10000 

.raspi_read: from:230000 len:10000 

.raspi_read: from:240000 len:10000 

.raspi_read: from:250000 len:10000 

.raspi_read: from:260000 len:10000 

.raspi_read: from:270000 len:10000 

.raspi_read: from:280000 len:10000 

.raspi_read: from:290000 len:10000 

.raspi_read: from:2a0000 len:10000 

.raspi_read: from:2b0000 len:10000 

.raspi_read: from:2c0000 len:10000 

.raspi_read: from:2d0000 len:10000 

.raspi_read: from:2e0000 len:10000 

.raspi_read: from:2f0000 len:10000 

.raspi_read: from:300000 len:10000 

.raspi_read: from:310000 len:10000 

.raspi_read: from:320000 len:10000 

.raspi_read: from:330000 len:10000 

.raspi_read: from:340000 len:10000 

.raspi_read: from:350000 len:10000 

.raspi_read: from:360000 len:10000 

.raspi_read: from:370000 len:10000 

.raspi_read: from:380000 len:10000 

.raspi_read: from:390000 len:10000 

.raspi_erase: offs:390000 len:10000

.

raspi_write: to:390000 len:10000 

.

raspi_read: from:390000 len:10000 

.Done!

## Booting image at bc050000 ...

raspi_read: from:50000 len:40 

.   Image Name:   MIPS OpenWrt Linux-3.18.14

   Image Type:   MIPS Linux Kernel Image (lzma compressed)

   Data Size:    1016639 Bytes = 992.8 kB

   Load Address: 80000000

   Entry Point:  80000000

raspi_read: from:50040 len:f833f 

................   Verifying Checksum ... OK

   Uncompressing Kernel Image ... OK

No initrd

## Transferring control to Linux (at address 80000000) ...

## Giving linux memsize in MB, 32


Starting kernel ...


[    0.000000] Linux version 3.18.14 (an@debian) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r45924) ) #74 Mon Jun 15 12:49:36 PDT 2015
[    0.000000] SoC Type: Ralink RT5350 id:1 rev:3
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001964c (MIPS 24KEc)
[    0.000000] MIPS: machine is D-Link DCS-930L B1
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Writing ErrCtl register=000488a0
[    0.000000] Readback ErrCtl register=000488a0
[    0.000000] Memory: 29272K/32768K available (2270K kernel code, 118K rwdata, 400K rodata, 148K init, 181K bss, 3496K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:256
[    0.000000] CPU Clock: 360MHz
[    0.000000] systick: running - mult: 214748, shift: 32
[    0.010000] Calibrating delay loop... 239.61 BogoMIPS (lpj=1198080)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.090000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.100000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.110000] pinctrl core: initialized pinctrl subsystem
[    0.120000] NET: Registered protocol family 16
[    0.160000] rt2880_gpio 10000600.gpio: registering 22 gpios
[    0.170000] rt2880_gpio 10000600.gpio: registering 22 irq handlers
[    0.180000] Switched to clocksource systick
[    0.190000] NET: Registered protocol family 2
[    0.200000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.210000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.220000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.240000] TCP: reno registered
[    0.240000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.250000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.270000] NET: Registered protocol family 1
[    0.280000] rt-timer 10000100.timer: maximum frequency is 7324Hz
[    0.290000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.320000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.330000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.350000] msgmni has been set to 57
[    0.390000] io scheduler noop registered
[    0.400000] io scheduler deadline registered (default)
[    0.410000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[147]
[    0.420000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[161]
[    0.430000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.450000] console [ttyS0] disabled
[    0.460000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 2500000) is a 16550A
[    0.470000] console [ttyS0] enabled
[    0.470000] console [ttyS0] enabled
[    0.490000] bootconsole [early0] disabled
[    0.490000] bootconsole [early0] disabled
[    0.520000] m25p80 spi32766.0: mx25l3205d (4096 Kbytes)
[    0.530000] 4 ofpart partitions found on MTD device spi32766.0
[    0.540000] Creating 4 MTD partitions on "spi32766.0":
[    0.550000] 0x000000000000-0x000000030000 : "u-boot"
[    0.560000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.570000] 0x000000040000-0x000000050000 : "factory"
[    0.590000] 0x000000050000-0x000000400000 : "firmware"
[    0.630000] 2 uimage-fw partitions found on MTD device firmware
[    0.640000] 0x000000050000-0x00000014837f : "kernel"
[    0.660000] 0x00000014837f-0x000000400000 : "rootfs"
[    0.670000] mtd: device 5 (rootfs) set to be root filesystem
[    0.690000] 1 squashfs-split partitions found on MTD device rootfs
[    0.700000] 0x000000380000-0x000000400000 : "rootfs_data"
[    0.720000] ralink_soc_eth 10100000.ethernet eth0: ralink at 0xb0100000, irq 5
[    0.740000] rt2880_wdt 10000120.watchdog: Initialized
[    0.750000] TCP: cubic registered
[    0.750000] NET: Registered protocol family 17
[    0.760000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[    0.790000] 8021q: 802.1Q VLAN Support v1.8
[    0.830000] VFS: Mounted root (squashfs filesystem) readonly on device 31:5.
[    0.840000] Freeing unused kernel memory: 148K (802bb000 - 802e0000)
[    3.980000] init: Console is alive
[    3.990000] init: - watchdog -
[    7.830000] usbcore: registered new interface driver usbfs
[    7.840000] usbcore: registered new interface driver hub
[    7.850000] usbcore: registered new device driver usb
[    7.870000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    7.890000] ehci-platform: EHCI generic platform driver
[    8.100000] phy phy-usbphy.0: remote usb device wakeup disabled
[    8.110000] phy phy-usbphy.0: UTMI 16bit 30MHz
[    8.120000] ehci-platform 101c0000.ehci: EHCI Host Controller
[    8.130000] ehci-platform 101c0000.ehci: new USB bus registered, assigned bus number 1
[    8.150000] ehci-platform 101c0000.ehci: irq 26, io mem 0x101c0000
[    8.180000] ehci-platform 101c0000.ehci: USB 2.0 started, EHCI 1.00
[    8.190000] hub 1-0:1.0: USB hub found
[    8.200000] hub 1-0:1.0: 1 port detected
[    8.210000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    8.230000] ohci-platform: OHCI generic platform driver
[    8.240000] ohci-platform 101c1000.ohci: Generic Platform OHCI controller
[    8.250000] ohci-platform 101c1000.ohci: new USB bus registered, assigned bus number 2
[    8.270000] ohci-platform 101c1000.ohci: irq 26, io mem 0x101c1000
[    8.340000] hub 2-0:1.0: USB hub found
[    8.350000] hub 2-0:1.0: 1 port detected
[    8.810000] usb 2-1: new full-speed USB device number 2 using ohci-platform
[    9.140000] init: - preinit -
[   10.650000] rt305x-esw 10110000.esw: link changed 0x00
[   10.980000] random: procd urandom read with 13 bits of entropy available
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[   12.540000] rt305x-esw 10110000.esw: link changed 0x01
[   14.710000] mount_root: jffs2 not ready yet, using temporary tmpfs overlay
[   14.760000] procd: - early -
[   14.770000] procd: - watchdog -
[   15.810000] procd: - ubus -
Command failed: Not found
[   17.010000] procd: - init -
Please press Enter to activate this console.
[   18.720000] NET: Registered protocol family 10
[   18.800000] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   18.850000] Linux video capture interface: v2.00
[   18.880000] Loading modules backported from Linux version master-2015-03-09-0-g141f155
[   18.900000] Backport generated by backports.git backports-20150129-0-gdd4a670
[   18.930000] ip_tables: (C) 2000-2006 Netfilter Core Team
[   18.960000] nf_conntrack version 0.5.0 (459 buckets, 1836 max)
[   19.020000] uvcvideo: Found UVC 1.00 device <unnamed> (1b3b:2970)
[   19.040000] uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
[   19.060000] input: UVC Camera (1b3b:2970) as /devices/101c1000.ohci/usb2/2-1/2-1:1.0/input/input0
[   19.080000] usbcore: registered new interface driver uvcvideo
[   19.090000] USB Video Class driver (1.1.1)
[   19.130000] xt_time: kernel timezone is -0000
[   19.220000] cfg80211: Calling CRDA to update world regulatory domain
[   19.310000] cfg80211: World regulatory domain updated:
[   19.310000] cfg80211:  DFS Master region: unset
[   19.310000] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[   19.310000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[   19.310000] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[   19.310000] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[   19.310000] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[   19.310000] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[   19.310000] cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[   19.310000] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[   19.310000] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[   19.310000] PPP generic driver version 2.4.2
[   19.310000] NET: Registered protocol family 24
[   19.630000] usbcore: registered new interface driver snd-usb-audio
[   19.690000] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5350, rev 0500 detected
[   19.700000] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 5350 detected
[   24.550000] rt305x-esw 10110000.esw: link changed 0x00
[   26.540000] rt305x-esw 10110000.esw: link changed 0x01
[   30.780000] jffs2_scan_eraseblock(): End of filesystem marker found at 0x0
[   30.820000] jffs2_build_filesystem(): unlocking the mtd device... done.
[   30.840000] jffs2_build_filesystem(): erasing all blocks after the end marker... done.
[   40.260000] jffs2: notice: (917) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found.
[   42.470000] IPv6: ADDRCONF(NETDEV_UP): wlan0-1: link is not ready
[   43.740000] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   46.390000] wlan0: authenticate with xx:xx:xx:xx:xx:xx
[   46.430000] wlan0: send auth to xx:xx:xx:xx:xx:xx (try 1/3)
[   46.440000] wlan0: authenticated
[   46.470000] wlan0: associate with xx:xx:xx:xx:xx:xx (try 1/3)
[   46.490000] wlan0: RX AssocResp from xx:xx:xx:xx:xx:xx (capab=0x431 status=0 aid=1)
[   46.500000] wlan0: associated
[   46.510000] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   48.470000] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0-1: link becomes ready
[   72.290000] random: nonblocking pool is initialized



BusyBox v1.23.2 (2015-06-13 00:15:50 PDT) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (Bleeding Edge, r45924)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
root@WebCamPA /# mount
rootfs on / type rootfs (rw)
/dev/root on /rom type squashfs (ro,relatime)
proc on /proc type proc (rw,noatime)
sysfs on /sys type sysfs (rw,noatime)
tmpfs on /tmp type tmpfs (rw,nosuid,nodev,noatime)
tmpfs on /tmp/root type tmpfs (rw,noatime,mode=755)
tmpfs on /dev type tmpfs (rw,relatime,size=512k,mode=755)
devpts on /dev/pts type devpts (rw,relatime,mode=600)
debugfs on /sys/kernel/debug type debugfs (rw,noatime)
/dev/mtdblock6 on /overlay type jffs2 (rw,noatime)
overlayfs:/overlay on / type overlay (rw,noatime,lowerdir=/,upperdir=/overlay/upper,workdir=/overlay/work)
root@WebCamPA /# df -h
Filesystem                Size      Used Available Use% Mounted on
rootfs                  512.0K    204.0K    308.0K  40% /
/dev/root                 2.3M      2.3M         0 100% /rom
tmpfs                    14.4M     76.0K     14.3M   1% /tmp
tmpfs                    14.4M     36.0K     14.3M   0% /tmp/root
tmpfs                   512.0K         0    512.0K   0% /dev
/dev/mtdblock6          512.0K    204.0K    308.0K  40% /overlay
overlayfs:/overlay      512.0K    204.0K    308.0K  40% /
root@WebCamPA /#

Same image, normal boot (slightly different fs init):

U-Boot 1.1.3


Board: Ralink APSoC DRAM:  32 MB

relocate_code Pointer at: 81fb0000

spi_wait_nsec: 42 

spi device id: c2 20 16 c2 20 (2016c220)

find flash: MX25L3205D

raspi_read: from:30000 len:1000 

.raspi_read: from:30000 len:1000 

.============================================ 

Ralink UBoot Version: 4.1.2.0

-------------------------------------------- 

ASIC 5350_MP (Port5<->None)

DRAM_CONF_FROM: Boot-Strapping 

DRAM_TYPE: SDRAM 

DRAM_SIZE: 256 Mbits

DRAM_WIDTH: 16 bits

DRAM_TOTAL_WIDTH: 16 bits

TOTAL_MEMORY_SIZE: 32 MBytes

Flash component: SPI Flash

============================================ 

icache: sets:256, ways:4, linesz:32 ,total:32768

dcache: sets:128, ways:4, linesz:32 ,total:16384 


 ##### The CPU freq = 360 MHZ #### 

 estimate memory size =32 Mbytes


Signature: DCS-930 B1         L     Release 1.11 (2011-05-31)



Please choose the operation: 

   1: Load system code to SDRAM via TFTP. 

   2: Load system code then write to Flash via TFTP. 

   3: Boot system code via Flash (default).

   4: Entr boot command line interface.

   7: Load Boot Loader code then write to Flash via Serial. 

   9: Load Boot Loader code then write to Flash via TFTP. 

 4  3  2  1  0 

   

3: System Boot system code via Flash.

## Booting image at bc050000 ...

raspi_read: from:50000 len:40 

.   Image Name:   MIPS OpenWrt Linux-3.18.14

   Image Type:   MIPS Linux Kernel Image (lzma compressed)

   Data Size:    1016628 Bytes = 992.8 kB

   Load Address: 80000000

   Entry Point:  80000000

raspi_read: from:50040 len:f8334 

................   Verifying Checksum ... OK

   Uncompressing Kernel Image ... OK

No initrd

## Transferring control to Linux (at address 80000000) ...

## Giving linux memsize in MB, 32


Starting kernel ...


[    0.000000] Linux version 3.18.14 (an@debian) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r45924) ) #68 Sat Jun 13 01:01:30 PDT 2015
[    0.000000] SoC Type: Ralink RT5350 id:1 rev:3
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001964c (MIPS 24KEc)
[    0.000000] MIPS: machine is D-Link DCS-930L B1
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Writing ErrCtl register=000488ae
[    0.000000] Readback ErrCtl register=000488ae
[    0.000000] Memory: 29272K/32768K available (2270K kernel code, 118K rwdata, 400K rodata, 148K init, 181K bss, 3496K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:256
[    0.000000] CPU Clock: 360MHz
[    0.000000] systick: running - mult: 214748, shift: 32
[    0.010000] Calibrating delay loop... 239.61 BogoMIPS (lpj=1198080)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.090000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.100000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.110000] pinctrl core: initialized pinctrl subsystem
[    0.120000] NET: Registered protocol family 16
[    0.160000] rt2880_gpio 10000600.gpio: registering 22 gpios
[    0.170000] rt2880_gpio 10000600.gpio: registering 22 irq handlers
[    0.180000] Switched to clocksource systick
[    0.190000] NET: Registered protocol family 2
[    0.200000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.210000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.220000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.240000] TCP: reno registered
[    0.240000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.250000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.270000] NET: Registered protocol family 1
[    0.280000] rt-timer 10000100.timer: maximum frequency is 7324Hz
[    0.290000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.320000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.330000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.350000] msgmni has been set to 57
[    0.390000] io scheduler noop registered
[    0.400000] io scheduler deadline registered (default)
[    0.410000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[147]
[    0.420000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[161]
[    0.430000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.450000] console [ttyS0] disabled
[    0.460000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 2500000) is a 16550A
[    0.470000] console [ttyS0] enabled
[    0.470000] console [ttyS0] enabled
[    0.490000] bootconsole [early0] disabled
[    0.490000] bootconsole [early0] disabled
[    0.520000] m25p80 spi32766.0: mx25l3205d (4096 Kbytes)
[    0.530000] 4 ofpart partitions found on MTD device spi32766.0
[    0.540000] Creating 4 MTD partitions on "spi32766.0":
[    0.550000] 0x000000000000-0x000000030000 : "u-boot"
[    0.560000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.580000] 0x000000040000-0x000000050000 : "factory"
[    0.590000] 0x000000050000-0x000000400000 : "firmware"
[    0.630000] 2 uimage-fw partitions found on MTD device firmware
[    0.640000] 0x000000050000-0x000000148374 : "kernel"
[    0.660000] 0x000000148374-0x000000400000 : "rootfs"
[    0.670000] mtd: device 5 (rootfs) set to be root filesystem
[    0.690000] 1 squashfs-split partitions found on MTD device rootfs
[    0.700000] 0x000000380000-0x000000400000 : "rootfs_data"
[    0.720000] ralink_soc_eth 10100000.ethernet eth0: ralink at 0xb0100000, irq 5
[    0.740000] rt2880_wdt 10000120.watchdog: Initialized
[    0.750000] TCP: cubic registered
[    0.760000] NET: Registered protocol family 17
[    0.770000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[    0.790000] 8021q: 802.1Q VLAN Support v1.8
[    0.830000] VFS: Mounted root (squashfs filesystem) readonly on device 31:5.
[    0.840000] Freeing unused kernel memory: 148K (802bb000 - 802e0000)
[    3.980000] init: Console is alive
[    3.990000] init: - watchdog -
[    7.510000] usbcore: registered new interface driver usbfs
[    7.830000] usbcore: registered new interface driver hub
[    7.840000] usbcore: registered new device driver usb
[    7.870000] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[    7.880000] ehci-platform: EHCI generic platform driver
[    8.090000] phy phy-usbphy.0: remote usb device wakeup disabled
[    8.100000] phy phy-usbphy.0: UTMI 16bit 30MHz
[    8.110000] ehci-platform 101c0000.ehci: EHCI Host Controller
[    8.120000] ehci-platform 101c0000.ehci: new USB bus registered, assigned bus number 1
[    8.140000] ehci-platform 101c0000.ehci: irq 26, io mem 0x101c0000
[    8.170000] ehci-platform 101c0000.ehci: USB 2.0 started, EHCI 1.00
[    8.180000] hub 1-0:1.0: USB hub found
[    8.190000] hub 1-0:1.0: 1 port detected
[    8.200000] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[    8.220000] ohci-platform: OHCI generic platform driver
[    8.230000] ohci-platform 101c1000.ohci: Generic Platform OHCI controller
[    8.240000] ohci-platform 101c1000.ohci: new USB bus registered, assigned bus number 2
[    8.260000] ohci-platform 101c1000.ohci: irq 26, io mem 0x101c1000
[    8.330000] hub 2-0:1.0: USB hub found
[    8.340000] hub 2-0:1.0: 1 port detected
[    8.800000] usb 2-1: new full-speed USB device number 2 using ohci-platform
[    9.140000] init: - preinit -
[   10.650000] rt305x-esw 10110000.esw: link changed 0x00
[   10.880000] random: procd urandom read with 13 bits of entropy available
Press the [f] key and hit [enter] to enter failsafe mode
Press the [1], [2], [3] or [4] key and hit [enter] to select the debug level
[   12.330000] rt305x-esw 10110000.esw: link changed 0x01
[   14.920000] jffs2: notice: (307) jffs2_build_xattr_subsystem: complete building xattr subsystem, 0 of xdatum (0 unchecked, 0 orphan) and 0 of xref (0 dead, 0 orphan) found.
[   14.960000] mount_root: switching to jffs2 overlay
[   15.030000] procd: - early -
[   15.040000] procd: - watchdog -
[   15.990000] procd: - ubus -
Command failed: Not found
[   17.030000] procd: - init -
Please press Enter to activate this console.
[   19.010000] NET: Registered protocol family 10
[   19.090000] ip6_tables: (C) 2000-2006 Netfilter Core Team
[   19.150000] Linux video capture interface: v2.00
[   19.190000] Loading modules backported from Linux version master-2015-03-09-0-g141f155
[   19.200000] Backport generated by backports.git backports-20150129-0-gdd4a670
[   19.240000] ip_tables: (C) 2000-2006 Netfilter Core Team
[   19.270000] nf_conntrack version 0.5.0 (459 buckets, 1836 max)
[   19.310000] uvcvideo: Found UVC 1.00 device <unnamed> (1b3b:2970)
[   19.310000] uvcvideo: UVC non compliance - GET_DEF(PROBE) not supported. Enabling workaround.
[   19.310000] input: UVC Camera (1b3b:2970) as /devices/101c1000.ohci/usb2/2-1/2-1:1.0/input/input0
[   19.310000] usbcore: registered new interface driver uvcvideo
[   19.310000] USB Video Class driver (1.1.1)
[   19.310000] xt_time: kernel timezone is -0000
[   19.310000] cfg80211: Calling CRDA to update world regulatory domain
[   19.310000] cfg80211: World regulatory domain updated:
[   19.310000] cfg80211:  DFS Master region: unset
[   19.310000] cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[   19.310000] cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[   19.310000] cfg80211:   (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[   19.310000] cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[   19.630000] cfg80211:   (5170000 KHz - 5250000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[   19.640000] cfg80211:   (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[   19.660000] cfg80211:   (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[   19.680000] cfg80211:   (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[   19.700000] cfg80211:   (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[   19.840000] PPP generic driver version 2.4.2
[   19.850000] NET: Registered protocol family 24
[   19.950000] usbcore: registered new interface driver snd-usb-audio
[   20.000000] ieee80211 phy0: rt2x00_set_rt: Info - RT chipset 5350, rev 0500 detected
[   20.020000] ieee80211 phy0: rt2x00_set_rf: Info - RF chipset 5350 detected
[   22.920000] rt305x-esw 10110000.esw: link changed 0x00
[   25.330000] rt305x-esw 10110000.esw: link changed 0x01
[   34.170000] IPv6: ADDRCONF(NETDEV_UP): wlan0-1: link is not ready
[   34.630000] IPv6: ADDRCONF(NETDEV_UP): wlan0: link is not ready
[   37.140000] wlan0: authenticate with xx:xx:xx:xx:xx:xx
[   37.180000] wlan0: send auth to xx:xx:xx:xx:xx:xx (try 1/3)
[   37.190000] wlan0: authenticated
[   37.220000] wlan0: associate with xx:xx:xx:xx:xx:xx (try 1/3)
[   37.250000] wlan0: RX AssocResp from xx:xx:xx:xx:xx:xx (capab=0x431 status=0 aid=1)
[   37.260000] wlan0: associated
[   37.270000] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0: link becomes ready
[   37.980000] IPv6: ADDRCONF(NETDEV_CHANGE): wlan0-1: link becomes ready



BusyBox v1.23.2 (2015-06-13 00:15:50 PDT) built-in shell (ash)

  _______                     ________        __
 |       |.-----.-----.-----.|  |  |  |.----.|  |_
 |   -   ||  _  |  -__|     ||  |  |  ||   _||   _|
 |_______||   __|_____|__|__||________||__|  |____|
          |__| W I R E L E S S   F R E E D O M
 -----------------------------------------------------
 CHAOS CALMER (Bleeding Edge, r45924)
 -----------------------------------------------------
  * 1 1/2 oz Gin            Shake with a glassful
  * 1/4 oz Triple Sec       of broken ice and pour
  * 3/4 oz Lime Juice       unstrained into a goblet.
  * 1 1/2 oz Orange Juice
  * 1 tsp. Grenadine Syrup
 -----------------------------------------------------
root@WebCamPA /# 

Kernel panic with factory.bin firmware:

U-Boot 1.1.3


Board: Ralink APSoC DRAM:  32 MB

relocate_code Pointer at: 81fb0000

******************************

Software System Reset Occurred

******************************

spi_wait_nsec: 42 

spi device id: c2 20 16 c2 20 (2016c220)

find flash: MX25L3205D

raspi_read: from:30000 len:1000 

.raspi_read: from:30000 len:1000 

.============================================ 

Ralink UBoot Version: 4.1.2.0

-------------------------------------------- 

ASIC 5350_MP (Port5<->None)

DRAM_CONF_FROM: Boot-Strapping 

DRAM_TYPE: SDRAM 

DRAM_SIZE: 256 Mbits

DRAM_WIDTH: 16 bits

DRAM_TOTAL_WIDTH: 16 bits

TOTAL_MEMORY_SIZE: 32 MBytes

Flash component: SPI Flash

============================================ 

icache: sets:256, ways:4, linesz:32 ,total:32768

dcache: sets:128, ways:4, linesz:32 ,total:16384 


 ##### The CPU freq = 360 MHZ #### 

 estimate memory size =32 Mbytes


Signature: DCS-930 B1         L     Release 1.11 (2011-05-31)



Please choose the operation: 

   1: Load system code to SDRAM via TFTP. 

   2: Load system code then write to Flash via TFTP. 

   3: Boot system code via Flash (default).

   4: Entr boot command line interface.

   7: Load Boot Loader code then write to Flash via Serial. 

   9: Load Boot Loader code then write to Flash via TFTP. 

 4  3  2  1  0 

***** detect reset button pressed *****

raspi_read: from:40028 len:6 

.

Entering HTTP server.

do_httpsvr: argc = 1

do_httpsvr: 0:[httpsvr]

do_httpsvr: loadaddr = 0x80100000


 NetTxPacket = 0x81FE4940 


 KSEG1ADDR(NetTxPacket) = 0xA1FE4940 


 NetLoop,call eth_halt ! 


 NetLoop,call eth_init ! 

Trying Eth0 (10/100-M)


 Waitting for RX_DMA_BUSY status Start... done



 ETH_STATE_ACTIVE!! 

Start HTTP server on port 80, 192.168.0.20

Running ...

NetInitTcp: port = 80

Got ARP REQUEST, return our IP

HandleTCP: Clear old session !!!

NetInitTcp: port = 80

send_syn_ack: iphdr->check = 0x5b73

send_syn_ack: tcphdr->check = 0xfa57

HttpHandler: prepare for new session!

HttpHandler: HEADER[GET / HTTP/1.1]

HttpHandler: End of header!

HttpHandler: got method GET!

HandleTCP: 0x00000200 = 0x782d53a9 - 0x782d51a9

HandleTCP: bufsize = 0x00000000

HttpHandler: HEADER[POST / HTTP/1.1]

HttpHandler: End of header!

mpfd_decode: start, boundary = [---------------------------7df2903120210], 40 bytes, clen = 4194666

mpfd_decode: FOUND [---------------------------7df2903120210]

mpfd_decode: BOUNDARY end with []

mpfd_decode: PARTHEAD [Content-Disposition: form-data; name="firmware"; filename="openwrt-ramips-rt305x-dcs-930l-b1-squashfs-factory.bin"] 114

mpfd_decode: PARTHEAD [Content-Type: application/octet-stream] 38

mpfd_decode: PARTHEAD [] 0

mpfd_decode: entering MPFD_WAIT!

mpfd_decode: load_addr = 0x80100000

mpfd_decode: UPLOADED, upsize = 4194304

HttpHandler: DONE!!! upsize = 4194304

==============================================

 Image Name    : MIPS OpenWrt Linux-3.18.14

 Image Size    : 3367312

==============================================

HttpHandler: HEADER[]

HttpHandler: End of header!

Entering program & boot linux.

raspi_erase_write: offs:50000, count:336190

raspi_erase: offs:50000 len:330000

...................................................

raspi_write: to:50000 len:330000 

...................................................

raspi_read: from:50000 len:10000 

.raspi_read: from:60000 len:10000 

.raspi_read: from:70000 len:10000 

.raspi_read: from:80000 len:10000 

.raspi_read: from:90000 len:10000 

.raspi_read: from:a0000 len:10000 

.raspi_read: from:b0000 len:10000 

.raspi_read: from:c0000 len:10000 

.raspi_read: from:d0000 len:10000 

.raspi_read: from:e0000 len:10000 

.raspi_read: from:f0000 len:10000 

.raspi_read: from:100000 len:10000 

.raspi_read: from:110000 len:10000 

.raspi_read: from:120000 len:10000 

.raspi_read: from:130000 len:10000 

.raspi_read: from:140000 len:10000 

.raspi_read: from:150000 len:10000 

.raspi_read: from:160000 len:10000 

.raspi_read: from:170000 len:10000 

.raspi_read: from:180000 len:10000 

.raspi_read: from:190000 len:10000 

.raspi_read: from:1a0000 len:10000 

.raspi_read: from:1b0000 len:10000 

.raspi_read: from:1c0000 len:10000 

.raspi_read: from:1d0000 len:10000 

.raspi_read: from:1e0000 len:10000 

.raspi_read: from:1f0000 len:10000 

.raspi_read: from:200000 len:10000 

.raspi_read: from:210000 len:10000 

.raspi_read: from:220000 len:10000 

.raspi_read: from:230000 len:10000 

.raspi_read: from:240000 len:10000 

.raspi_read: from:250000 len:10000 

.raspi_read: from:260000 len:10000 

.raspi_read: from:270000 len:10000 

.raspi_read: from:280000 len:10000 

.raspi_read: from:290000 len:10000 

.raspi_read: from:2a0000 len:10000 

.raspi_read: from:2b0000 len:10000 

.raspi_read: from:2c0000 len:10000 

.raspi_read: from:2d0000 len:10000 

.raspi_read: from:2e0000 len:10000 

.raspi_read: from:2f0000 len:10000 

.raspi_read: from:300000 len:10000 

.raspi_read: from:310000 len:10000 

.raspi_read: from:320000 len:10000 

.raspi_read: from:330000 len:10000 

.raspi_read: from:340000 len:10000 

.raspi_read: from:350000 len:10000 

.raspi_read: from:360000 len:10000 

.raspi_read: from:370000 len:10000 

.raspi_read: from:380000 len:10000 

.raspi_erase: offs:380000 len:10000

.

raspi_write: to:380000 len:10000 

.

raspi_read: from:380000 len:10000 

.Done!

do_reset ...



U-Boot 1.1.3


Board: Ralink APSoC DRAM:  32 MB

relocate_code Pointer at: 81fb0000

******************************

Software System Reset Occurred

******************************

spi_wait_nsec: 42 

spi device id: c2 20 16 c2 20 (2016c220)

find flash: MX25L3205D

raspi_read: from:30000 len:1000 

.raspi_read: from:30000 len:1000 

.============================================ 

Ralink UBoot Version: 4.1.2.0

-------------------------------------------- 

ASIC 5350_MP (Port5<->None)

DRAM_CONF_FROM: Boot-Strapping 

DRAM_TYPE: SDRAM 

DRAM_SIZE: 256 Mbits

DRAM_WIDTH: 16 bits

DRAM_TOTAL_WIDTH: 16 bits

TOTAL_MEMORY_SIZE: 32 MBytes

Flash component: SPI Flash

============================================ 

icache: sets:256, ways:4, linesz:32 ,total:32768

dcache: sets:128, ways:4, linesz:32 ,total:16384 


 ##### The CPU freq = 360 MHZ #### 

 estimate memory size =32 Mbytes


Signature: DCS-930 B1         L     Release 1.11 (2011-05-31)



Please choose the operation: 

   1: Load system code to SDRAM via TFTP. 

   2: Load system code then write to Flash via TFTP. 

   3: Boot system code via Flash (default).

   4: Entr boot command line interface.

   7: Load Boot Loader code then write to Flash via Serial. 

   9: Load Boot Loader code then write to Flash via TFTP. 

 4  3  2  1  0 

   

3: System Boot system code via Flash.

## Booting image at bc050000 ...

raspi_read: from:50000 len:40 

.   Image Name:   MIPS OpenWrt Linux-3.18.14

   Image Type:   MIPS Linux Kernel Image (lzma compressed)

   Data Size:    3367248 Bytes =  3.2 MB

   Load Address: 80000000

   Entry Point:  80000000

raspi_read: from:50040 len:336150 

....................................................   Verifying Checksum ... OK

   Uncompressing Kernel Image ... OK

No initrd

## Transferring control to Linux (at address 80000000) ...

## Giving linux memsize in MB, 32


Starting kernel ...


[    0.000000] Linux version 3.18.14 (an@debian) (gcc version 4.8.3 (OpenWrt/Linaro GCC 4.8-2014.04 r45924) ) #74 Mon Jun 15 12:49:36 PDT 2015
[    0.000000] SoC Type: Ralink RT5350 id:1 rev:3
[    0.000000] bootconsole [early0] enabled
[    0.000000] CPU0 revision is: 0001964c (MIPS 24KEc)
[    0.000000] MIPS: machine is D-Link DCS-930L B1
[    0.000000] Determined physical RAM map:
[    0.000000]  memory: 02000000 @ 00000000 (usable)
[    0.000000] Initrd not found or empty - disabling initrd
[    0.000000] Zone ranges:
[    0.000000]   Normal   [mem 0x00000000-0x01ffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x00000000-0x01ffffff]
[    0.000000] Initmem setup node 0 [mem 0x00000000-0x01ffffff]
[    0.000000] Primary instruction cache 32kB, VIPT, 4-way, linesize 32 bytes.
[    0.000000] Primary data cache 16kB, 4-way, VIPT, no aliases, linesize 32 bytes
[    0.000000] Built 1 zonelists in Zone order, mobility grouping on.  Total pages: 8128
[    0.000000] Kernel command line: console=ttyS0,57600 rootfstype=squashfs,jffs2
[    0.000000] PID hash table entries: 128 (order: -3, 512 bytes)
[    0.000000] Dentry cache hash table entries: 4096 (order: 2, 16384 bytes)
[    0.000000] Inode-cache hash table entries: 2048 (order: 1, 8192 bytes)
[    0.000000] Writing ErrCtl register=000488a0
[    0.000000] Readback ErrCtl register=000488a0
[    0.000000] Memory: 29272K/32768K available (2270K kernel code, 118K rwdata, 400K rodata, 148K init, 181K bss, 3496K reserved)
[    0.000000] SLUB: HWalign=32, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] NR_IRQS:256
[    0.000000] CPU Clock: 360MHz
[    0.000000] systick: running - mult: 214748, shift: 32
[    0.010000] Calibrating delay loop... 239.61 BogoMIPS (lpj=1198080)
[    0.080000] pid_max: default: 32768 minimum: 301
[    0.090000] Mount-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.100000] Mountpoint-cache hash table entries: 1024 (order: 0, 4096 bytes)
[    0.110000] pinctrl core: initialized pinctrl subsystem
[    0.120000] NET: Registered protocol family 16
[    0.160000] rt2880_gpio 10000600.gpio: registering 22 gpios
[    0.170000] rt2880_gpio 10000600.gpio: registering 22 irq handlers
[    0.180000] Switched to clocksource systick
[    0.190000] NET: Registered protocol family 2
[    0.200000] TCP established hash table entries: 1024 (order: 0, 4096 bytes)
[    0.210000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)
[    0.220000] TCP: Hash tables configured (established 1024 bind 1024)
[    0.240000] TCP: reno registered
[    0.240000] UDP hash table entries: 256 (order: 0, 4096 bytes)
[    0.250000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)
[    0.270000] NET: Registered protocol family 1
[    0.280000] rt-timer 10000100.timer: maximum frequency is 7324Hz
[    0.290000] futex hash table entries: 256 (order: -1, 3072 bytes)
[    0.320000] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.330000] jffs2: version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.
[    0.350000] msgmni has been set to 57
[    0.390000] io scheduler noop registered
[    0.400000] io scheduler deadline registered (default)
[    0.410000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[147]
[    0.420000] drivers/phy/phy-ralink-usb.c:ralink_usb_phy_probe[161]
[    0.430000] Serial: 8250/16550 driver, 2 ports, IRQ sharing disabled
[    0.450000] console [ttyS0] disabled
[    0.460000] 10000c00.uartlite: ttyS0 at MMIO 0x10000c00 (irq = 20, base_baud = 2500000) is a 16550A
[    0.470000] console [ttyS0] enabled
[    0.470000] console [ttyS0] enabled
[    0.490000] bootconsole [early0] disabled
[    0.490000] bootconsole [early0] disabled
[    0.520000] m25p80 spi32766.0: mx25l3205d (4096 Kbytes)
[    0.530000] 4 ofpart partitions found on MTD device spi32766.0
[    0.540000] Creating 4 MTD partitions on "spi32766.0":
[    0.550000] 0x000000000000-0x000000030000 : "u-boot"
[    0.560000] 0x000000030000-0x000000040000 : "u-boot-env"
[    0.570000] 0x000000040000-0x000000050000 : "factory"
[    0.590000] 0x000000050000-0x000000400000 : "firmware"
[    0.640000] ralink_soc_eth 10100000.ethernet eth0: ralink at 0xb0100000, irq 5
[    0.660000] rt2880_wdt 10000120.watchdog: Initialized
[    0.670000] TCP: cubic registered
[    0.670000] NET: Registered protocol family 17
[    0.680000] bridge: automatic filtering via arp/ip/ip6tables has been deprecated. Update your scripts to load br_netfilter if you need this.
[    0.710000] 8021q: 802.1Q VLAN Support v1.8
[    0.730000] VFS: Cannot open root device "(null)" or unknown-block(0,0): error -6
[    0.750000] Please append a correct "root=" boot option; here are the available partitions:
[    0.760000] 1f00             192 mtdblock0  (driver?)
[    0.770000] 1f01              64 mtdblock1  (driver?)
[    0.780000] 1f02              64 mtdblock2  (driver?)
[    0.790000] 1f03            3776 mtdblock3  (driver?)
[    0.800000] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[    0.800000] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

(Last edited by an on 18 Jun 2015, 07:01)

@honken
ASIC 3052_MP2   <-- 930 A1 Hardware ?

@an
ASIC 5350_MP <-- 930 B1 Hardware ?