D-Link wireless IP security camera based on the Cellvision CAS-630.
Supported Versions
Partially supported.
OpenWrt support is possible using the target Infineon/ADMtek ADM5120. There already exists experimental support for identical hardware Cellvision CAS-630W IP camera but it seems there isn't much progress.
OEM source code available at: http://tsd.dlink.com.tw/
Version 5 Video Security and Monitoring Software - full version by Perspective Software is a Surveillance, Monitoring and Video Capture software supporting up to 64 cameras (Webcams, camcorders, network IP cams, analog cards, or your PC desktop). Version history for Security Monitor Pro.
→ see Notes
Hardware Highlights
SoC | Ram | Flash | Network | USB | Serial | JTag |
---|---|---|---|---|---|---|
Infineon ADM5120@175MHz | 32MiB | 4MiB | 1 | No | Yes | Yes |
Manufacturer's site: http://www.dlink.com
Forum: https://forum.openwrt.org/viewtopic.php?id=???
Installation
Flash Layout
Please check out the article flash.layout. It contains an example and a couple of explanations.
Offsets | Size (KiB) | Description |
---|---|---|
0x000000-0x008000 | 32 | Bootloader |
0x008000-0x010000 | 32 | BoardCfg |
0x010000-0x020000 | 64 | Linux NVFS |
0x020000-0x030000 | 64 | Linux NVFS2 |
0x030000-0x400000 | 3904 | Kernel Image |
OEM easy installation
You have two options for flashing a firmware. It's very recommendable to have the serial port ready for using it. If something goes wrong you may brick your device.
- Using the web interface: only available if you have a working firmware, use the web interface an look for the firmware upgrade option, then just upload it and wait. Be aware if you upgrade a faulty firmware you'll only have the option of flashing with the next method via serial.
- Using the serial console: after turning the device ON (pluging the power cable in the device) you have about 2 seconds to hit the SPACE key 3 times and you will get the following menu.
Drivers ken brown laptops reviews. choose (a) for flashing a new firmware, or choose (b) for loading a RAMDISK firmware. The RAMDISK firmware will not touch anything in your flash, it's just for testing. Then you'll have about 20 seconds for sending the firmware via XModem. It will take some time to transfer the firmware since XModem is really slow.
Never use the option ( c ) if you don't know what are you doing! |
Failsafe mode
Buttons
→ hardware.button on howto use and configure the hardware button(s).
The DCS-950G has one button. It is the Reset button at the back of the device:
BUTTON | Event | GPIO | active |
---|---|---|---|
Reset | reset | 0 | low |
LEDs
Label | color | GPIO | active |
---|---|---|---|
Power | orange | n/a | |
Link | green | 1 | low |
Hardware
Info
Instruction set | MIPS Little Endian |
---|---|
Vendor | Infineon |
bootloader | ADM Bootloader |
System-On-Chip | ADM5120 |
CPU @Frq | MIPS 4Kc V0.11 @175MHz |
Flash size | 4 MiB |
Flash Chip | |
RAM size | 32 MiB |
RAM Chip | SDR-133 |
Wireless | Ralink RT2560F 802.11b/g (PCI interface) |
Antenna | 1x detachable |
Ethernet | 1x 10/100Base-TX (SoC) |
USB | USB SoC → onboard Video Encoder |
Video Encoder | WIS Go7007SB MPEG-4 encoder → Linux Driver |
Power Adapter | 5V DC 2.5A / JTA0302E-E |
Serial | Yes |
JTAG | Yes |
Photos
Opening the case
Note: This will void your warranty!
Serial
→ port.serial general information about the serial port, serial port cable, etc.
How to connect to the Serial Port of this specific device:
JTAG
→ port.jtag general information about the JTAG port, JTAG cable, etc.
Asmedia scsi & raid devices driver. How to connect to the JTAG Port of this specific device:
Looks like J3 matches to a 14 pin JTAG header (not verified):
nTRST | 1 | 2 | GND |
---|---|---|---|
TDI | 3 | 4 | GND |
TDO | 5 | 6 | GND |
TMS | 7 | 8 | GND |
TCK | 9 | 10 | GND |
nSRST | 11 | 12 | n/a |
n/a | 13 | 14 | Vcc |
Debricking
Bootloader Mods
Hardware mods
- as a beginner, you really should inform yourself about soldering in general and then obtain some practical experience!
Bootlogs
OEM bootlog
ADM5120 Boot (V1.04)LINUX/5120 started..CPU revision is: 0001800bPrimary instruction cache 8kb, linesize 16 bytes (2 ways)Primary data cache 8kb, linesize 16 bytes (2 ways)Linux version 2.4.18-5120-05 (amy@SWTEST2) v1.00 #462 �T 11�� 28 15:47:09 CST 2007am5120_setup() starts.System has PCI BIOSDetermined physical RAM map: memory: 01b0f000 @ 004f1000 (usable)Initial ramdisk at: 0x801cd000 (3103645 bytes)On node 0 totalpages: 8192zone(0): 4096 pages.zone(1): 4096 pages.zone(2): 0 pages.Kernel command line: root=/dev/ram0 console=ttyS0CPU clock: 175MHzCalibrating delay loop.. 174.48 BogoMIPSMemory: 27184k/27708k available (1668k kernel code, 524k reserved, 3128k data, 56k init, 0k highmem)Dentry-cache hash table entries: 4096 (order: 3, 32768 bytes)Inode-cache hash table entries: 2048 (order: 2, 16384 bytes)Mount-cache hash table entries: 512 (order: 0, 4096 bytes)Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)Page-cache hash table entries: 8192 (order: 3, 32768 bytes)Checking for 'wait' instruction.. available.POSIX conformance testing by UNIFIXAutoconfig PCI channel 0x801cc9c8Scanning bus 00, I/O 0x11500000:0x115ffff0, Mem 0x11400000:0x1150000000:00.0 Class 0600: 1317:5120 Mem unavailable -- skipping I/O unavailable -- skipping00:02.0 Class 0280: 1814:0201 (rev 01) Mem at 0x11400000 [size=0x2000]fixup resourcefixup host controlleram5120 fix upfixup resourcepcibios_fixupfixup IRQPCI Interrupt Line = 0x0PCI Interrupt Pin = 0x0PCI Interrupt Line = 0x6PCI Interrupt Pin = 0x1Linux NET4.0 for Linux 2.4Based upon Swansea University Computer Society NET3.039Initializing RT netlink socketStarting kswapdpty: 256 Unix98 ptys configuredblock: 64 slots per queue, batch=16RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksizeloop: loaded (max 8 devices)ADM5120 Switch Module InitPPP generic driver version 2.4.1PPP Deflate Compression module registeredPPP BSD Compression module registeredAM5120 NOR flash device: 400000 at 1fc00000AM5120 NOR flash device: Found 1 x16 devices at 0x0 in 16-bit mode Amd/Fujitsu Extended Query Table at 0x0040number of CFI chips: 1cfi_cmdset_0002: Disabling fast programming due to code brokenness.Creating 4 MTD partitions on 'AM5120 NOR flash device':0x00008000-0x00010000 : 'BoardCfg'0x00010000-0x00020000 : 'Linux NVFS'0x00020000-0x00030000 : 'Linux NVFS2'0x00030000-0x00400000 : 'Kernel Image'AM5120 NOR flash device initializedusb.c: registered new driver usbdevfsusb.c: registered new driver hub Start Init AHCI_INITusb.c: new USB bus registered, assigned bus number 1hub.c: USB hub foundhub.c: 2 ports detectedDevice is hub/wis camera, so skip call policy(devnum=1)!!!NET4: Linux TCP/IP 1.0 for NET4.0IP Protocols: ICMP, UDP, TCPIP: routing cache hash table of 512 buckets, 4KbytesTCP: Hash tables configured (established 2048 bind 2048)NET4: Ethernet Bridge 008 for NET4.0RAMDISK: Compressed image found at block 0Freeing initrd memory: 3030k freedEXT2-fs warning: maximal mount count reached, running e2fsck is recommendedVFS: Mounted root (ext2 filesystem).Freeing prom memory: 0kb freedFreeing unused kernel memory: 56k freedhub.c: USB new device connect on bus1/3, assigned device number 2init started: BusyBox v1.00-pre1 (2006.04.21-07:46+0000) multi-call binaryusb.c: USB device 2 (vend/prod 0xeb1/0x7007) is not claimed by any active driver.Device is hub/wis camera, so skip call policy(devnum=2)!!!Check MTD block device .. MTDC: Mount MTD1 done. MTDC: Mount MTD2 done. MTDC: Backup files from MTD1 to MTD2. countryCode = 0 beginChannel = 1 endChannel = 11 cp /sys/mtd1/CountryRegion.conf /sys/mtd2/CountryRegion.conf** check copy default file** copy default config filesversion is the same** copy config filescp: /sys/mtd1/triggerURL: No such file or directory** umount mtd1** mount mtd2** copy default config files to mtd2** umount mtd2Using /sys/crfs/wireless/rt2500.ora0: at 0x11400000, VA 0xb1400000, IRQ 6. ** set loopback interfacera0: RT2500_open() irq 6. MAC = 00:19:5b:8c:7f:39 pAdapter->PortCfg.StaWithEtherBridge.Enable = FALSEbr0: port 2(ra0) entering learning statebr0: port 1(adm0) entering learning state** exec modulesbr0 HWaddr 00:19:5B:8C:7F:39 get last 2 items from MAC = 7F 39 IP Now = 169.254.127.57target = 169.254.127.57ARPING to 169.254.127.57 from 0.0.0.0 via br0Sent 2 probes (2 broadcast(s))Received 0 replyARPING return value = 0ifconfig: set interface br0:0 to 169.254.127.57check button version v1.08 2005.12.26** copy fix_setting.txt for sensorSensor Type: CMOS, MI0360** insert wis driver moduleUsing /etc/wis/wis_sensor.oUsing /etc/wis/wisgo7007sb.ousb.c: registered new driver wisgo<WIS DRV> InitBoard<WIS DRV> sensor type 1, audio 1download pipe size: 30784 %%%%download return: 0download pipe size: 72192 %%%%download return: 0download pipe size: 64download return: 0<WIS DRV> (1) rt 0, regData 0x823a<WIS DRV> MI0360ReadDeviceAddr 0x91download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 30784 %%%%download return: 0** go-server** execute rc.init.shAragorn IPV Srever version : v1.04.20071031ipv server port = 5100***************************************** Cellvision go-server v1.37.0402.2007 *****************************************pServer->FlickerType 1----------- go-server setting ----------gop_size = 30width = 640height = 480h_scale_enb = 0v_scale_enb = 0target_bitrate = 1000000peak_bitrate = 1200000frame_rate = 15000----------------------------------------Setting hostname .. DCS-950G Total free freme set : 20 Total free fremes : 600Board Revision number : 0x0200Board Name : AragornBoard Capability : 0x00000003Source Width : 640Source Height : 480br0: port 2(ra0) entering forwarding statebr0: topology change detected, propagatingbr0: port 1(adm0) entering forwarding statebr0: topology change detected, propagatingDHCP : 0PPPoE: 0<WIS DRV> GetSensorConfig: sensor type 1, audio 1<WIS DRV> OnStartCapture download pipe size: 74496 %%%%kill: Usage: kill [-s sigspec | -signum | -sigspec] [pid | job].. orkill -l [exitstatus]Set Timezone=2TimeZone = (GMT+02:00) Israel zoneoffset = GMT-02:00 1.Set Date & time ..(command: /bin/queryTimeServer ntp1.dlink.com &)download return: 0<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90Cellvision UPnPAV Media Server v1.03.0629.2006.SetMicronImage 1: r = 0download pipe size: 64download return: 0Cellvision UPnPAV Media Server v1.03.0629.2006.<go-server> ReadMicronRegister status 0x1, value 0x4<go-server> ReadMicronRegister return 0x0<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90IP=192.168.5.201:0IP=169.254.127.57:1IP=192.168.5.201:0IP=169.254.127.57:1SetMicronImage 2: r = 0, value = 0xd000download pipe size: 64download return: 0UPnPAV: 640x480-15000AVI_FILE_HEADER struct size 0x800<go-server> ReadMicronRegister status 0x20, value 0xd000<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90<go-server> ReadMicronRegister return 0x0UPnPAV: 640x480-15000AVI_FILE_HEADER struct size 0x800SetMicronImage 3: r = 0download pipe size: 64download return: 0<go-server> ReadMicronRegister status 0x1, value 0x1<go-server> ReadMicronRegister return 0x0<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MicronNightShot Disable : r = 0download pipe size: 64download return: 0<go-server> ReadMicronRegister status 0x37, value 0x61<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90<go-server> ReadMicronRegister return 0x0SetMicronFlicker 1: r = 0download pipe size: 64download return: 0<go-server> ReadMicronRegister status 0x37, value 0x61<go-server> ReadMicronRegister return 0x0<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90SetMicronFlicker 2: r = 0download pipe size: 64download return: 0<go-server> ReadMicronRegister status 0x5b, value 0x1<go-server> ReadMicronRegister return 0x0StartDevicemaxx=0, maxy=0download pipe size: 64download return: 0MDSetEnable SET_SUCCESS(Init)MDInitRegion: MDSetRegion 1 (324, 295)-(606, 461)maxx=40, maxy=30download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0MDSet: RegionMask 0xeMDInitRegion: MDSetRegion 2 (373, 59)-(610, 195)maxx=40, maxy=30download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0MDSet: RegionMask 0xeMDInitRegion: MDSetRegion 3 (347, 171)-(607, 308)maxx=40, maxy=30download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0MDSet: RegionMask 0xeMDInitRegion: successfulStartTime: 1970/01/01 02:00:32Runningaudio_work_thread Enteravi_file_save_thread Entermail_thread EnteriMode_thread Enteraudio_send_thread EnterCheck go Server ok.1.Set Date & time ..(command: /bin/queryTimeServer ntp1.dlink.com &)Result = 1 1.Set Date & time ..(command: /bin/queryTimeServer ntp.dlink.com.tw &)Result = 1 1.Set Date & time ..(command: /bin/queryTimeServer ntp1.dlink.com &)Result = 1 1.Set Date & time ..(command: /bin/queryTimeServer ntp.dlink.com.tw &)Result = 1 Jan 1 02:00:50 crond[251]: /sbin/crond 2.3.2 dillon, started, log level 8sib.conf<wireless>SSID [fumarel]<wireless>Channel [11]<wireless>Auth [1]<wireless>Security_mode [1]<wireless>Encry_mode [2]<wireless>Default_key [1]<wireless>PSK []cat: /var/run/pppoe.conf-adsl.pid: No such file or directorykill: Usage: kill [-s sigspec | -signum | -sigspec] [pid | job].. orkill -l [exitstatus]cat: /var/run/pppoe.conf-adsl.pid.pppoe: No such file or directorykill: Usage: kill [-s sigspec | -signum | -sigspec] [pid | job].. orkill -l [exitstatus]SIOCADDRT: File exists* Running chkwebs vMO Send Mail Version 1.0.0_20040804 */web/sib2.conf:53: no such option 'CF-UPNPAV-ENABLE'run check~~~+----------------------------------------+| Wecome to Linux/MIPS Cellvision Systems|+----------------------------------------+2.001.72.1128.2007(2.00g)Please press Enter to activate this console. Jun 24 10:26:08 crond[315]: /sbin/crond 2.3.2 dillon, started, log level 8Jun 24 10:26:19 crond[367]: /sbin/crond 2.3.2 dillon, started, log level 8
OpenWrt bootlog
OpenWrt RAMDISK firmware, just for testing.
ADM Bootloader (v0.04.01 20040216)(a) Download vmlinuz to flash ..(b) Download vmlinuz to sdram (for debug) ..(c) Update bootloader ..(e) ExitPlease enter your key : bDownloading.....0x150x150x150x150x150x150x150x150x150x15PASSdecompress kernel image .. boot linux ..LZMA loader for CAS-630, Copyright (C) 2007-2008 OpenWrt.orgdecompressing kernel.. done!launching kernel..[ 0.000000] Linux version 3.3.8 (dani@tool) (gcc version 4.6.3 20120201 (prerelease) (Linaro GCC 4.6-2012.02) ) #7 Tue Apr 15 14:16:15 CEST 2014[ 0.000000] bootconsole [early0] enabled[ 0.000000] CPU revision is: 0001800b (MIPS 4Kc)[ 0.000000] SoC : ADM5120 rev 8, running at 175.000 MHz[ 0.000000] Bootdev : NOR flash[ 0.000000] Prom : Generic[ 0.000000] Determined physical RAM map:[ 0.000000] memory: 02000000 @ 00000000 (usable)[ 0.000000] Initrd not found or empty - disabling initrd[ 0.000000] Zone PFN ranges:[ 0.000000] Normal 0x00000000 -> 0x00002000[ 0.000000] Movable zone start PFN for each node[ 0.000000] Early memory PFN ranges[ 0.000000] 0: 0x00000000 -> 0x00002000[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128[ 0.000000] Kernel command line: console=ttyS0,115200 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] Primary instruction cache 8kB, VIPT, 2-way, linesize 16 bytes.[ 0.000000] Primary data cache 8kB, 2-way, VIPT, no aliases, linesize 16 bytes[ 0.000000] Memory: 29220k/32768k available (1973k kernel code, 3548k reserved, 335k data, 704k init, 0k highmem)[ 0.000000] NR_IRQS:24[ 0.000000] Calibrating delay loop.. 173.05 BogoMIPS (lpj=346112)[ 0.040000] pid_max: default: 32768 minimum: 301[ 0.044000] Mount-cache hash table entries: 512[ 0.056000] NET: Registered protocol family 16[ 0.072000] gpiochip_add: registered GPIOs 0 to 7 on device: adm5120 gpio0[ 0.076000] gpiochip_add: registered GPIOs 8 to 22 on device: adm5120 gpio1[ 0.080000] MIPS: machine is Cellvision CAS-630/630W[ 0.088000] registering PCI controller with io_map_base unset[ 0.132000] bio: create slab <bio-0> at 0[ 0.144000] PCI host bridge to bus 0000:00[ 0.148000] pci_bus 0000:00: root bus resource [mem 0x11400000-0x114fffff][ 0.152000] pci_bus 0000:00: root bus resource [io 0x11500000-0x115fffef][ 0.160000] pci 0000:00:02.0: BAR 0: assigned [mem 0x11400000-0x11401fff][ 0.164000] PCI: pci_irq_map is not initialized[ 0.172000] Switching to clocksource MIPS[ 0.196000] NET: Registered protocol family 2[ 0.204000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)[ 0.212000] TCP established hash table entries: 1024 (order: 1, 8192 bytes)[ 0.220000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)[ 0.228000] TCP: Hash tables configured (established 1024 bind 1024)[ 0.232000] TCP reno registered[ 0.236000] UDP hash table entries: 256 (order: 0, 4096 bytes)[ 0.244000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)[ 0.252000] NET: Registered protocol family 1[ 3.400000] squashfs: version 4.0 (2009/01/31) Phillip Lougher[ 3.408000] JFFS2 version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.[ 3.420000] msgmni has been set to 57[ 3.424000] io scheduler noop registered[ 3.428000] io scheduler deadline registered (default)[ 4.452000] Serial: AMBA driver[ 4.456000] apb:uart0: ttyS0 at MMIO 0x12600000 (irq = 9) is a AMBA[ 4.464000] console [ttyS0] enabled, bootconsole disabled[ 4.464000] console [ttyS0] enabled, bootconsole disabled[ 4.476000] apb:uart1: ttyS1 at MMIO 0x12800000 (irq = 10) is a AMBA[ 4.496000] adm5120-flash.0: probing at 0x1FC00000, size:4096KiB, width:16 bits[ 4.504000] adm5120-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000001 Chip ID 0x001a00[ 4.516000] Amd/Fujitsu Extended Query Table at 0x0040[ 4.520000] Amd/Fujitsu Extended Query version 1.3.[ 4.524000] number of CFI chips: 1[ 4.528000] adm5120-flash.0: found at 0x1FC00000, size:4096KiB, width:16 bits[ 4.536000] Creating 5 MTD partitions on 'adm5120-flash.0':[ 4.544000] 0x000000000000-0x000000008000 : 'admboot'[ 4.560000] 0x000000008000-0x000000010000 : 'config'[ 4.576000] 0x000000010000-0x000000020000 : 'nvfs1'[ 4.592000] 0x000000020000-0x000000030000 : 'nvfs2'[ 4.608000] 0x000000030000-0x000000400000 : 'firmware'[ 4.628000] ADM5120 built-in ethernet switch driver version 0.1.1[ 4.672000] adm5120_wdt: Watchdog Timer version 0.1[ 4.680000] TCP cubic registered[ 4.684000] NET: Registered protocol family 17[ 4.688000] 8021q: 802.1Q VLAN Support v1.8[ 4.696000] trxsplit: searching TRX header in 'admboot'[ 4.700000] trxsplit: searching TRX header in 'config'[ 4.708000] trxsplit: searching TRX header in 'nvfs1'[ 4.712000] trxsplit: searching TRX header in 'nvfs2'[ 4.716000] trxsplit: searching TRX header in 'firmware'[ 4.732000] Please be patient, while OpenWrt loads ..[ 4.744000] Freeing unused kernel memory: 704k freed[ 10.948000] Button Hotplug driver version 0.4.1- preinit -Press the [f] key and hit [enter] to enter failsafe mode- regular preinit -- init -Please press Enter to activate this console. [ 22.296000] device eth0 entered promiscuous mode[ 22.308000] br-lan: port 1(eth0) entered forwarding state[ 22.312000] br-lan: port 1(eth0) entered forwarding state[ 24.316000] br-lan: port 1(eth0) entered forwarding stateBusyBox v1.19.4 (2014-04-15 12:30:11 CEST) built-in shell (ash)Enter 'help' for a list of built-in commands. _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- ATTITUDE ADJUSTMENT (Attitude Adjustment, r36422) ----------------------------------------------------- * 1/4 oz Vodka Pour all ingredients into mixing * 1/4 oz Gin tin with ice, strain into glass. * 1/4 oz Amaretto * 1/4 oz Triple sec * 1/4 oz Peach schnapps * 1/4 oz Sour mix * 1 splash Cranberry juice -----------------------------------------------------root@OpenWrt:/#
Notes
- Ethernet: port 4 at the integrated ADM5120 switch. Example code for enabling this port in Openwrt:
- Wifi card: connected to the PCI interface.
Example code for enabling PCI IRQs in Openwrt:
→ not working
- USB: integrated ADM5120 USB controller connected to the onboard WIS Go7007SB video encoder.
Tags
D-Link wireless IP security camera based on the Cellvision CAS-630.
Supported Versions
Partially supported.
OpenWrt support is possible using the target Infineon/ADMtek ADM5120. There already exists experimental support for identical hardware Cellvision CAS-630W IP camera but it seems there isn't much progress.
OEM source code available at: http://tsd.dlink.com.tw/
→ see Notes
Hardware Highlights
SoC | Ram | Flash | Network | USB | Serial | JTag |
---|---|---|---|---|---|---|
Infineon ADM5120@175MHz | 32MiB | 4MiB | 1 | No | Yes | Yes |
Manufacturer's site: http://www.dlink.com
Forum: https://forum.openwrt.org/viewtopic.php?id=???
Installation
Flash Layout
Please check out the article flash.layout. It contains an example and a couple of explanations.
Offsets | Size (KiB) | Description |
---|---|---|
0x000000-0x008000 | 32 | Bootloader |
0x008000-0x010000 | 32 | BoardCfg |
0x010000-0x020000 | 64 | Linux NVFS |
0x020000-0x030000 | 64 | Linux NVFS2 |
0x030000-0x400000 | 3904 | Kernel Image |
OEM easy installation
You have two options for flashing a firmware. It's very recommendable to have the serial port ready for using it. If something goes wrong you may brick your device.
- Using the web interface: only available if you have a working firmware, use the web interface an look for the firmware upgrade option, then just upload it and wait. Be aware if you upgrade a faulty firmware you'll only have the option of flashing with the next method via serial.
- Using the serial console: after turning the device ON (pluging the power cable in the device) you have about 2 seconds to hit the SPACE key 3 times and you will get the following menu.
choose (a) for flashing a new firmware, or choose (b) for loading a RAMDISK firmware. The RAMDISK firmware will not touch anything in your flash, it's just for testing. Then you'll have about 20 seconds for sending the firmware via XModem. It will take some time to transfer the firmware since XModem is really slow.
Drivers Collision Center
Never use the option ( c ) if you don't know what are you doing! |
Drivers Collision
Failsafe mode
Buttons
→ hardware.button on howto use and configure the hardware button(s).
The DCS-950G has one button. It is the Reset button at the back of the device:
BUTTON | Event | GPIO | active |
---|---|---|---|
Reset | reset | 0 | low |
LEDs
Label | color | GPIO | active |
---|---|---|---|
Power | orange | n/a | |
Link | green | 1 | low |
Hardware
Info
Instruction set | MIPS Little Endian |
---|---|
Vendor | Infineon |
bootloader | ADM Bootloader |
System-On-Chip | ADM5120 |
CPU @Frq | MIPS 4Kc V0.11 @175MHz |
Flash size | 4 MiB |
Flash Chip | |
RAM size | 32 MiB |
RAM Chip | SDR-133 |
Wireless | Ralink RT2560F 802.11b/g (PCI interface) |
Antenna | 1x detachable |
Ethernet | 1x 10/100Base-TX (SoC) |
USB | USB SoC → onboard Video Encoder |
Video Encoder | WIS Go7007SB MPEG-4 encoder → Linux Driver |
Power Adapter | 5V DC 2.5A / JTA0302E-E |
Serial | Yes |
JTAG | Yes |
Photos
Opening the case
Note: This will void your warranty!
Serial
→ port.serial general information about the serial port, serial port cable, etc.
How to connect to the Serial Port of this specific device:
JTAG
→ port.jtag general information about the JTAG port, JTAG cable, etc.
How to connect to the JTAG Port of this specific device:
Looks like J3 matches to a 14 pin JTAG header (not verified):
nTRST | 1 | 2 | GND |
---|---|---|---|
TDI | 3 | 4 | GND |
TDO | 5 | 6 | GND |
TMS | 7 | 8 | GND |
TCK | 9 | 10 | GND |
nSRST | 11 | 12 | n/a |
n/a | 13 | 14 | Vcc |
Debricking
Bootloader Mods
Hardware mods
- as a beginner, you really should inform yourself about soldering in general and then obtain some practical experience!
Bootlogs
OEM bootlog
ADM5120 Boot (V1.04)LINUX/5120 started..CPU revision is: 0001800bPrimary instruction cache 8kb, linesize 16 bytes (2 ways)Primary data cache 8kb, linesize 16 bytes (2 ways)Linux version 2.4.18-5120-05 (amy@SWTEST2) v1.00 #462 �T 11�� 28 15:47:09 CST 2007am5120_setup() starts.System has PCI BIOSDetermined physical RAM map: memory: 01b0f000 @ 004f1000 (usable)Initial ramdisk at: 0x801cd000 (3103645 bytes)On node 0 totalpages: 8192zone(0): 4096 pages.zone(1): 4096 pages.zone(2): 0 pages.Kernel command line: root=/dev/ram0 console=ttyS0CPU clock: 175MHzCalibrating delay loop.. 174.48 BogoMIPSMemory: 27184k/27708k available (1668k kernel code, 524k reserved, 3128k data, 56k init, 0k highmem)Dentry-cache hash table entries: 4096 (order: 3, 32768 bytes)Inode-cache hash table entries: 2048 (order: 2, 16384 bytes)Mount-cache hash table entries: 512 (order: 0, 4096 bytes)Buffer-cache hash table entries: 1024 (order: 0, 4096 bytes)Page-cache hash table entries: 8192 (order: 3, 32768 bytes)Checking for 'wait' instruction.. available.POSIX conformance testing by UNIFIXAutoconfig PCI channel 0x801cc9c8Scanning bus 00, I/O 0x11500000:0x115ffff0, Mem 0x11400000:0x1150000000:00.0 Class 0600: 1317:5120 Mem unavailable -- skipping I/O unavailable -- skipping00:02.0 Class 0280: 1814:0201 (rev 01) Mem at 0x11400000 [size=0x2000]fixup resourcefixup host controlleram5120 fix upfixup resourcepcibios_fixupfixup IRQPCI Interrupt Line = 0x0PCI Interrupt Pin = 0x0PCI Interrupt Line = 0x6PCI Interrupt Pin = 0x1Linux NET4.0 for Linux 2.4Based upon Swansea University Computer Society NET3.039Initializing RT netlink socketStarting kswapdpty: 256 Unix98 ptys configuredblock: 64 slots per queue, batch=16RAMDISK driver initialized: 16 RAM disks of 8192K size 1024 blocksizeloop: loaded (max 8 devices)ADM5120 Switch Module InitPPP generic driver version 2.4.1PPP Deflate Compression module registeredPPP BSD Compression module registeredAM5120 NOR flash device: 400000 at 1fc00000AM5120 NOR flash device: Found 1 x16 devices at 0x0 in 16-bit mode Amd/Fujitsu Extended Query Table at 0x0040number of CFI chips: 1cfi_cmdset_0002: Disabling fast programming due to code brokenness.Creating 4 MTD partitions on 'AM5120 NOR flash device':0x00008000-0x00010000 : 'BoardCfg'0x00010000-0x00020000 : 'Linux NVFS'0x00020000-0x00030000 : 'Linux NVFS2'0x00030000-0x00400000 : 'Kernel Image'AM5120 NOR flash device initializedusb.c: registered new driver usbdevfsusb.c: registered new driver hub Start Init AHCI_INITusb.c: new USB bus registered, assigned bus number 1hub.c: USB hub foundhub.c: 2 ports detectedDevice is hub/wis camera, so skip call policy(devnum=1)!!!NET4: Linux TCP/IP 1.0 for NET4.0IP Protocols: ICMP, UDP, TCPIP: routing cache hash table of 512 buckets, 4KbytesTCP: Hash tables configured (established 2048 bind 2048)NET4: Ethernet Bridge 008 for NET4.0RAMDISK: Compressed image found at block 0Freeing initrd memory: 3030k freedEXT2-fs warning: maximal mount count reached, running e2fsck is recommendedVFS: Mounted root (ext2 filesystem).Freeing prom memory: 0kb freedFreeing unused kernel memory: 56k freedhub.c: USB new device connect on bus1/3, assigned device number 2init started: BusyBox v1.00-pre1 (2006.04.21-07:46+0000) multi-call binaryusb.c: USB device 2 (vend/prod 0xeb1/0x7007) is not claimed by any active driver.Device is hub/wis camera, so skip call policy(devnum=2)!!!Check MTD block device .. MTDC: Mount MTD1 done. MTDC: Mount MTD2 done. MTDC: Backup files from MTD1 to MTD2. countryCode = 0 beginChannel = 1 endChannel = 11 cp /sys/mtd1/CountryRegion.conf /sys/mtd2/CountryRegion.conf** check copy default file** copy default config filesversion is the same** copy config filescp: /sys/mtd1/triggerURL: No such file or directory** umount mtd1** mount mtd2** copy default config files to mtd2** umount mtd2Using /sys/crfs/wireless/rt2500.ora0: at 0x11400000, VA 0xb1400000, IRQ 6. ** set loopback interfacera0: RT2500_open() irq 6. MAC = 00:19:5b:8c:7f:39 pAdapter->PortCfg.StaWithEtherBridge.Enable = FALSEbr0: port 2(ra0) entering learning statebr0: port 1(adm0) entering learning state** exec modulesbr0 HWaddr 00:19:5B:8C:7F:39 get last 2 items from MAC = 7F 39 IP Now = 169.254.127.57target = 169.254.127.57ARPING to 169.254.127.57 from 0.0.0.0 via br0Sent 2 probes (2 broadcast(s))Received 0 replyARPING return value = 0ifconfig: set interface br0:0 to 169.254.127.57check button version v1.08 2005.12.26** copy fix_setting.txt for sensorSensor Type: CMOS, MI0360** insert wis driver moduleUsing /etc/wis/wis_sensor.oUsing /etc/wis/wisgo7007sb.ousb.c: registered new driver wisgo<WIS DRV> InitBoard<WIS DRV> sensor type 1, audio 1download pipe size: 30784 %%%%download return: 0download pipe size: 72192 %%%%download return: 0download pipe size: 64download return: 0<WIS DRV> (1) rt 0, regData 0x823a<WIS DRV> MI0360ReadDeviceAddr 0x91download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 30784 %%%%download return: 0** go-server** execute rc.init.shAragorn IPV Srever version : v1.04.20071031ipv server port = 5100***************************************** Cellvision go-server v1.37.0402.2007 *****************************************pServer->FlickerType 1----------- go-server setting ----------gop_size = 30width = 640height = 480h_scale_enb = 0v_scale_enb = 0target_bitrate = 1000000peak_bitrate = 1200000frame_rate = 15000----------------------------------------Setting hostname .. DCS-950G Total free freme set : 20 Total free fremes : 600Board Revision number : 0x0200Board Name : AragornBoard Capability : 0x00000003Source Width : 640Source Height : 480br0: port 2(ra0) entering forwarding statebr0: topology change detected, propagatingbr0: port 1(adm0) entering forwarding statebr0: topology change detected, propagatingDHCP : 0PPPoE: 0<WIS DRV> GetSensorConfig: sensor type 1, audio 1<WIS DRV> OnStartCapture download pipe size: 74496 %%%%kill: Usage: kill [-s sigspec | -signum | -sigspec] [pid | job].. orkill -l [exitstatus]Set Timezone=2TimeZone = (GMT+02:00) Israel zoneoffset = GMT-02:00 1.Set Date & time ..(command: /bin/queryTimeServer ntp1.dlink.com &)download return: 0<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90Cellvision UPnPAV Media Server v1.03.0629.2006.SetMicronImage 1: r = 0download pipe size: 64download return: 0Cellvision UPnPAV Media Server v1.03.0629.2006.<go-server> ReadMicronRegister status 0x1, value 0x4<go-server> ReadMicronRegister return 0x0<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90IP=192.168.5.201:0IP=169.254.127.57:1IP=192.168.5.201:0IP=169.254.127.57:1SetMicronImage 2: r = 0, value = 0xd000download pipe size: 64download return: 0UPnPAV: 640x480-15000AVI_FILE_HEADER struct size 0x800<go-server> ReadMicronRegister status 0x20, value 0xd000<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90<go-server> ReadMicronRegister return 0x0UPnPAV: 640x480-15000AVI_FILE_HEADER struct size 0x800SetMicronImage 3: r = 0download pipe size: 64download return: 0<go-server> ReadMicronRegister status 0x1, value 0x1<go-server> ReadMicronRegister return 0x0<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MicronNightShot Disable : r = 0download pipe size: 64download return: 0<go-server> ReadMicronRegister status 0x37, value 0x61<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90<go-server> ReadMicronRegister return 0x0SetMicronFlicker 1: r = 0download pipe size: 64download return: 0<go-server> ReadMicronRegister status 0x37, value 0x61<go-server> ReadMicronRegister return 0x0<4>MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90MI IO_I2CWRITEREGISTER MI0360WriteDeviceAddr=90SetMicronFlicker 2: r = 0download pipe size: 64download return: 0<go-server> ReadMicronRegister status 0x5b, value 0x1<go-server> ReadMicronRegister return 0x0StartDevicemaxx=0, maxy=0download pipe size: 64download return: 0MDSetEnable SET_SUCCESS(Init)MDInitRegion: MDSetRegion 1 (324, 295)-(606, 461)maxx=40, maxy=30download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0MDSet: RegionMask 0xeMDInitRegion: MDSetRegion 2 (373, 59)-(610, 195)maxx=40, maxy=30download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0MDSet: RegionMask 0xeMDInitRegion: MDSetRegion 3 (347, 171)-(607, 308)maxx=40, maxy=30download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0download pipe size: 64download return: 0MDSet: RegionMask 0xeMDInitRegion: successfulStartTime: 1970/01/01 02:00:32Runningaudio_work_thread Enteravi_file_save_thread Entermail_thread EnteriMode_thread Enteraudio_send_thread EnterCheck go Server ok.1.Set Date & time ..(command: /bin/queryTimeServer ntp1.dlink.com &)Result = 1 1.Set Date & time ..(command: /bin/queryTimeServer ntp.dlink.com.tw &)Result = 1 1.Set Date & time ..(command: /bin/queryTimeServer ntp1.dlink.com &)Result = 1 1.Set Date & time ..(command: /bin/queryTimeServer ntp.dlink.com.tw &)Result = 1 Jan 1 02:00:50 crond[251]: /sbin/crond 2.3.2 dillon, started, log level 8sib.conf<wireless>SSID [fumarel]<wireless>Channel [11]<wireless>Auth [1]<wireless>Security_mode [1]<wireless>Encry_mode [2]<wireless>Default_key [1]<wireless>PSK []cat: /var/run/pppoe.conf-adsl.pid: No such file or directorykill: Usage: kill [-s sigspec | -signum | -sigspec] [pid | job].. orkill -l [exitstatus]cat: /var/run/pppoe.conf-adsl.pid.pppoe: No such file or directorykill: Usage: kill [-s sigspec | -signum | -sigspec] [pid | job].. orkill -l [exitstatus]SIOCADDRT: File exists* Running chkwebs vMO Send Mail Version 1.0.0_20040804 */web/sib2.conf:53: no such option 'CF-UPNPAV-ENABLE'run check~~~+----------------------------------------+| Wecome to Linux/MIPS Cellvision Systems|+----------------------------------------+2.001.72.1128.2007(2.00g)Please press Enter to activate this console. Jun 24 10:26:08 crond[315]: /sbin/crond 2.3.2 dillon, started, log level 8Jun 24 10:26:19 crond[367]: /sbin/crond 2.3.2 dillon, started, log level 8
OpenWrt bootlog
OpenWrt RAMDISK firmware, just for testing.
ADM Bootloader (v0.04.01 20040216)(a) Download vmlinuz to flash ..(b) Download vmlinuz to sdram (for debug) ..(c) Update bootloader ..(e) ExitPlease enter your key : bDownloading.....0x150x150x150x150x150x150x150x150x150x15PASSdecompress kernel image .. boot linux ..LZMA loader for CAS-630, Copyright (C) 2007-2008 OpenWrt.orgdecompressing kernel.. done!launching kernel..[ 0.000000] Linux version 3.3.8 (dani@tool) (gcc version 4.6.3 20120201 (prerelease) (Linaro GCC 4.6-2012.02) ) #7 Tue Apr 15 14:16:15 CEST 2014[ 0.000000] bootconsole [early0] enabled[ 0.000000] CPU revision is: 0001800b (MIPS 4Kc)[ 0.000000] SoC : ADM5120 rev 8, running at 175.000 MHz[ 0.000000] Bootdev : NOR flash[ 0.000000] Prom : Generic[ 0.000000] Determined physical RAM map:[ 0.000000] memory: 02000000 @ 00000000 (usable)[ 0.000000] Initrd not found or empty - disabling initrd[ 0.000000] Zone PFN ranges:[ 0.000000] Normal 0x00000000 -> 0x00002000[ 0.000000] Movable zone start PFN for each node[ 0.000000] Early memory PFN ranges[ 0.000000] 0: 0x00000000 -> 0x00002000[ 0.000000] Built 1 zonelists in Zone order, mobility grouping on. Total pages: 8128[ 0.000000] Kernel command line: console=ttyS0,115200 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] Primary instruction cache 8kB, VIPT, 2-way, linesize 16 bytes.[ 0.000000] Primary data cache 8kB, 2-way, VIPT, no aliases, linesize 16 bytes[ 0.000000] Memory: 29220k/32768k available (1973k kernel code, 3548k reserved, 335k data, 704k init, 0k highmem)[ 0.000000] NR_IRQS:24[ 0.000000] Calibrating delay loop.. 173.05 BogoMIPS (lpj=346112)[ 0.040000] pid_max: default: 32768 minimum: 301[ 0.044000] Mount-cache hash table entries: 512[ 0.056000] NET: Registered protocol family 16[ 0.072000] gpiochip_add: registered GPIOs 0 to 7 on device: adm5120 gpio0[ 0.076000] gpiochip_add: registered GPIOs 8 to 22 on device: adm5120 gpio1[ 0.080000] MIPS: machine is Cellvision CAS-630/630W[ 0.088000] registering PCI controller with io_map_base unset[ 0.132000] bio: create slab <bio-0> at 0[ 0.144000] PCI host bridge to bus 0000:00[ 0.148000] pci_bus 0000:00: root bus resource [mem 0x11400000-0x114fffff][ 0.152000] pci_bus 0000:00: root bus resource [io 0x11500000-0x115fffef][ 0.160000] pci 0000:00:02.0: BAR 0: assigned [mem 0x11400000-0x11401fff][ 0.164000] PCI: pci_irq_map is not initialized[ 0.172000] Switching to clocksource MIPS[ 0.196000] NET: Registered protocol family 2[ 0.204000] IP route cache hash table entries: 1024 (order: 0, 4096 bytes)[ 0.212000] TCP established hash table entries: 1024 (order: 1, 8192 bytes)[ 0.220000] TCP bind hash table entries: 1024 (order: 0, 4096 bytes)[ 0.228000] TCP: Hash tables configured (established 1024 bind 1024)[ 0.232000] TCP reno registered[ 0.236000] UDP hash table entries: 256 (order: 0, 4096 bytes)[ 0.244000] UDP-Lite hash table entries: 256 (order: 0, 4096 bytes)[ 0.252000] NET: Registered protocol family 1[ 3.400000] squashfs: version 4.0 (2009/01/31) Phillip Lougher[ 3.408000] JFFS2 version 2.2 (NAND) (SUMMARY) (LZMA) (RTIME) (CMODE_PRIORITY) (c) 2001-2006 Red Hat, Inc.[ 3.420000] msgmni has been set to 57[ 3.424000] io scheduler noop registered[ 3.428000] io scheduler deadline registered (default)[ 4.452000] Serial: AMBA driver[ 4.456000] apb:uart0: ttyS0 at MMIO 0x12600000 (irq = 9) is a AMBA[ 4.464000] console [ttyS0] enabled, bootconsole disabled[ 4.464000] console [ttyS0] enabled, bootconsole disabled[ 4.476000] apb:uart1: ttyS1 at MMIO 0x12800000 (irq = 10) is a AMBA[ 4.496000] adm5120-flash.0: probing at 0x1FC00000, size:4096KiB, width:16 bits[ 4.504000] adm5120-flash.0: Found 1 x16 devices at 0x0 in 16-bit bank. Manufacturer ID 0x000001 Chip ID 0x001a00[ 4.516000] Amd/Fujitsu Extended Query Table at 0x0040[ 4.520000] Amd/Fujitsu Extended Query version 1.3.[ 4.524000] number of CFI chips: 1[ 4.528000] adm5120-flash.0: found at 0x1FC00000, size:4096KiB, width:16 bits[ 4.536000] Creating 5 MTD partitions on 'adm5120-flash.0':[ 4.544000] 0x000000000000-0x000000008000 : 'admboot'[ 4.560000] 0x000000008000-0x000000010000 : 'config'[ 4.576000] 0x000000010000-0x000000020000 : 'nvfs1'[ 4.592000] 0x000000020000-0x000000030000 : 'nvfs2'[ 4.608000] 0x000000030000-0x000000400000 : 'firmware'[ 4.628000] ADM5120 built-in ethernet switch driver version 0.1.1[ 4.672000] adm5120_wdt: Watchdog Timer version 0.1[ 4.680000] TCP cubic registered[ 4.684000] NET: Registered protocol family 17[ 4.688000] 8021q: 802.1Q VLAN Support v1.8[ 4.696000] trxsplit: searching TRX header in 'admboot'[ 4.700000] trxsplit: searching TRX header in 'config'[ 4.708000] trxsplit: searching TRX header in 'nvfs1'[ 4.712000] trxsplit: searching TRX header in 'nvfs2'[ 4.716000] trxsplit: searching TRX header in 'firmware'[ 4.732000] Please be patient, while OpenWrt loads ..[ 4.744000] Freeing unused kernel memory: 704k freed[ 10.948000] Button Hotplug driver version 0.4.1- preinit -Press the [f] key and hit [enter] to enter failsafe mode- regular preinit -- init -Please press Enter to activate this console. [ 22.296000] device eth0 entered promiscuous mode[ 22.308000] br-lan: port 1(eth0) entered forwarding state[ 22.312000] br-lan: port 1(eth0) entered forwarding state[ 24.316000] br-lan: port 1(eth0) entered forwarding stateBusyBox v1.19.4 (2014-04-15 12:30:11 CEST) built-in shell (ash)Enter 'help' for a list of built-in commands. _______ ________ __ | |.-----.-----.-----.| | | |.----.| |_ | - || _ | -__| || | | || _|| _| |_______|| __|_____|__|__||________||__| |____| |__| W I R E L E S S F R E E D O M ----------------------------------------------------- ATTITUDE ADJUSTMENT (Attitude Adjustment, r36422) ----------------------------------------------------- * 1/4 oz Vodka Pour all ingredients into mixing * 1/4 oz Gin tin with ice, strain into glass. * 1/4 oz Amaretto * 1/4 oz Triple sec * 1/4 oz Peach schnapps * 1/4 oz Sour mix * 1 splash Cranberry juice -----------------------------------------------------root@OpenWrt:/#
Notes
- Ethernet: port 4 at the integrated ADM5120 switch. Example code for enabling this port in Openwrt:
- Wifi card: connected to the PCI interface.
Example code for enabling PCI IRQs in Openwrt:
Download audiocodes drivers. → not working
- USB: integrated ADM5120 USB controller connected to the onboard WIS Go7007SB video encoder.