MSY had them for $15 the other week so I bought two. Getting the lid of this thing was a bit painful but I managed to do it without destroying it and soldered in a serial header.
There is GPL source code for the DIR636L, I just downloaded it from DLink but havent had a chance to try it yet.
It uses U-boot as well. So theoretically is would be 'easy' for someone with the right experience to port this.
One problem stopping me from attempting it (aside from the obvious, lack of time) is that the stock build still uses a 2.6.36 kernel and gcc 3.4.2 (standard D-Link kit it seems) and thus has no device tree; device tree would make porting quite simple, but without that someone would need to step through the GPL kernel code and port the changes into a new RALink subtarget.
This thing has 128MB of ram and 16MB flash so would be an awesome device to get ported over.
Bootloader processing
U-Boot 1.1.3 (Jul 18 2012 - 17:51:59)
Board: Ralink APSoC DRAM: 128 MB
relocate_code Pointer at: 87f94000
flash manufacture id: c2, device id 20 18
find flash: MX25L12805D
MAC: c8:be:19:71:a1:d8
============================================
Ralink UBoot Version: 3.5.2.0
DIR-636L(1.00b13)
--------------------------------------------
ASIC 63365_MP (Port5<->GigaSW)
DRAM_CONF_FROM: From Uboot
DRAM_TYPE: DDR2
DRAM component: 1024 Mbits
DRAM bus: 16 bit
Total memory: 128 MBytes
Flash component: SPI Flash
Date:Jul 18 2012 Time:17:51:59
============================================
icache: sets:512, ways:4, linesz:32 ,total:65536
dcache: sets:256, ways:4, linesz:32 ,total:32768
##### The CPU freq = 700 MHZ ####
estimate memory size =128 Mbytes
software reset RTL8367RB...
RTL8367RB driver initialized
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
3: System Boot system code via Flash.
## Booting image at b0100000 ...
Image Name: Linux Kernel Image
Created: 2012-10-22 11:17:53 UTC
Image Type: MIPS Linux Kernel Image (lzma compressed)
Data Size: 7406921 Bytes = 7.1 MB
Load Address: 80020000
Entry Point: 80023ed0
Verifying Checksum ... OK
Uncompressing Kernel Image ... OK
No initrd
## Transferring control to Linux (at address 80023ed0) ...
## Giving linux memsize in MB, 128
Starting kernel ...
init started: BusyBox v1.12.1 (2012-10-22 19:09:27 CST)
starting pid 39, tty '': '/etc_ro/rcS'
mount: mounting none on /proc/bus/usb failed: No such file or directory
Welcome to
_______ _______ ___ __ ____ _ _ ___
| ___ \| __ || | |__|| \ | || | / /
| |___| || |__| || |__ __ | \| || |/ /
| _ /| _ || || || |\ || \
|__| \__\|__| |__||______||__||_| \____||_|\___\
=System Architecture Department=
mount mydlink ok
old language pack not found
language pack exists
Starting loop
Waiting for Wireless Events from interfaces...
================nice=-20
[ leobox_ipc.c: 207 sem_create()]:::add semid = 0
[ leobox_ipc.c: 207 sem_create()]:::add semid = 32769
[ leobox_ipc.c: 207 sem_create()]:::add semid = 65538
[ leobox_ipc.c: 207 sem_create()]:::add semid = 98307
[ leobox_ipc.c: 207 sem_create()]:::add semid = 131076
[ leobox_ipc.c: 207 sem_create()]:::add semid = 163845
[ leobox_ipc.c: 207 sem_create()]:::add semid = 196614
[ leobox_ipc.c: 207 sem_create()]:::add semid = 229383
[ leobox_ipc.c: 207 sem_create()]:::add semid = 262152
[ leobox_ipc.c: 207 sem_create()]:::add semid = 294921
[ leobox_ipc.c: 207 sem_create()]:::add semid = 327690
[ leobox_ipc.c: 207 sem_create()]:::add semid = 360459
[ leobox_ipc.c: 207 sem_create()]:::add semid = 393228
[ leobox_ipc.c: 207 sem_create()]:::add semid = 425997
[ leobox_ipc.c: 207 sem_create()]:::add semid = 458766
[ leobox_ipc.c: 207 sem_create()]:::add semid = 491535
[ leobox_ipc.c: 207 sem_create()]:::add semid = 524304
[ leobox_ipc.c: 207 sem_create()]:::add semid = 557073
[ leobox_ipc.c: 207 sem_create()]:::add semid = 589842
[ leobox_ipc.c: 207 sem_create()]:::add semid = 622611
[ leobox_ipc.c: 207 sem_create()]:::add semid = 655380
[ 80 ncc_main.c : 177 main()]:::[80]Thread Create[main thread]
starting pid 86, tty '/dev/ttyS0': '/bin/sh'
# [ 80 ncc_runtimecfg.c : 397 initRunTimeCfg()]:::Init Run-Time Config Success.
[ 80 ncc_runtimecfg.c : 398 initRunTimeCfg()]:::Total 4342 nodes, each node 24 bytes.
[ 80 ncc_runtimecfg.c : 399 initRunTimeCfg()]:::Total 104208 byte for all nodes.
[ 80 ncc_runtimecfg.c : 400 initRunTimeCfg()]:::Total 63665 byte for data.
[ 80 ncc_runtimecfg.c : 153 loadCfg()]:::Start loadCfg
[ 80 ncc_lz77.c : 527 flash2rootfs()]:::Load Success(/var/tmp/cfg.txt)
[ 80 ncc_inf.c : 605 ncc_inf_main()]:::JTraceLevel=4
[ 80 leobox_network.c : 1064 socket_select()]:::Enter pid=80,ppid=1
[leobox_network.c: 1074 socket_select()]:::main process get thread id=1026
[ 88 leobox_network.c : 816 socket_select_hdlr()]:::[88]Thread Create[socket_select_hdlr]
[ 89 ncc_inf.c : 432 processInf()]:::[89]Thread Create[processInf]
bind: Address already in use
[ 80 ncc_main.c : 270 main()]:::Stop Web Access HTTP
[ 80 ncc_httpd.c : 350 httpdOp()]:::st is null.
[ 80 /opt/release/RT288x_SDK_0214/RT288x_SDK/source/user/wolf/cameo/ncc/../model/dlink_636/objTools/ncc_objTools.c: 5019 probeHTTPsEnable()]:::probeHTTPsEnable();
[ 80 ncc_main.c : 291 main()]:::Start HTTPS
mini_httpd: started as root without requesting chroot(), warning only
sh: cannot create /sys/class/net/br0/bridge/tcp_allow: nonexistent directory
bind: Address already in use
[ 80 ncc_main.c : 304 main()]:::Stop Web Access HTTPS
[ 80 ncc_httpd.c : 350 httpdOp()]:::st is null.
[ 103 leobox_timer.c : 248 timerThread()]:::[103]Thread Create[timerThread]
[ 103 leobox_timer.c : 256 timerThread()]:::Timer Thread Running
mini_httpd: started as root without requesting chroot(), warning only
[ 104 ncc_main.c : 41 sendBootEvent()]:::[104]Thread Create[sendBootEvent]
sh: cannot create /proc/sys/net/ipv4/conf/eth2.2/arp_ignore: nonexistent directory
[ 80 ncc_fsm_boot.c : 378 Boot()]:::=====================Start DIR_636_Boot=====================
[ 80 ncc_fsm_boot.c : 435 Boot()]:::MAC 0 = C8BE1971A1D8
[ 80 ncc_fsm_boot.c : 436 Boot()]:::MAC 1 = C8BE1971A1D9
[ 80 ncc_l2_independence.c: 178 swSpeedSet()]:::port = 4, speed = 0
killall: crond: no process killed
[ 80 ncc_crond.c : 54 crondConf()]:::DEBUG ON
[ 80 ncc_firewall.c : 1485 reBuildMAC6()]:::reBuildMAC6()+
[ 80 ncc_firewall.c : 1513 reBuildMAC6()]:::reBuildMAC6()-
ip6tables: No chain/target/match by that name.
killall: wakeOnLanProxy: no process killed
[ 80 ncc_firewall.c : 4526 runFwScript()]:::===ipt run start===
[ 80 ncc_firewall.c : 4528 runFwScript()]:::===ipt run end===
[ 80 ncc_fsm_boot.c : 635 Boot()]:::cfg->tzone=128
Sat Jan 1 00:00:00 GMT 2011
[ 80 ncc_fsm_boot.c : 661 Boot()]:::Merge language pack!!
[ 4400 lang_merge.c : 898 main()]:::before print info
[ 4400 lang_merge.c : 901 main()]:::Parameters:
ori_lang_fp: /var/tmp/lang.js
def_lang_fp: /www/def_lang.js
sh: cannot create /proc/sys/net/ipv6/conf/ra1/disable_ipv6: nonexistent directory
sh: cannot create /proc/sys/net/ipv6/conf/rai0/disable_ipv6: nonexistent directory
sh: cannot create /proc/sys/net/ipv6/conf/rai1/disable_ipv6: nonexistent directory
[ 80 ncc_eagle_udhcpd.c : 427 eagle_udhcpdOp()]:::eagle_udhcpdOp::opCode=2, sData=0
[ 80 ncc_help.c : 1204 checkDefCfg()]:::defCfg=0
[ 80 ncc_firewall.c : 4526 runFwScript()]:::===ipt run start===
llmnr: have no available linklocal address. wait count=0
[ 80 ncc_firewall.c : 4528 runFwScript()]:::===ipt run end===
llmnr: have no available linklocal address. wait count=1
mDNSResponderPosix: Starting in daemon mode
killall: lld2d: no process killed
***** g_wl_interface = ra0 ******
killall: proxy: no process killed
[ leobox_ipc.c: 207 sem_create()]:::add semid = 688149
[ 6076 lanmapd.c : 2614 main()]:::=============================Lanmapd=============================
[ 6076 lanmapd.c : 2615 main()]:::iface br0
[ 6076 lanmapd.c : 2616 main()]:::ip 192.168.0.1
[ 6076 lanmapd.c : 2620 main()]:::netmask 255.255.255.0
[ 6076 lanmapd.c : 2621 main()]:::network id 192.168.0.0
[ 6076 lanmapd.c : 2622 main()]:::mac c8:be:19:71:a1:d8
[ 6076 lanmapd.c : 2623 main()]:::hostname dlinkrouter
[ 6076 lanmapd.c : 2624 main()]:::hostname encode EEEMEJEOELFCEPFFFEEFFCCACACACAAA
[ 6076 lanmapd.c : 2629 main()]:::=================================================================
killall: crond: no process killed
[ 80 ncc_crond.c : 54 crondConf()]:::DEBUG ON
killall: crond: no process killed
[ 80 ncc_crond.c : 54 crondConf()]:::DEBUG ON
killall: wscd: no process killed
Starting loop
killall: crond: no process killed
[ 80 ncc_crond.c : 54 crondConf()]:::DEBUG ON
killall: crond: no process killed
[ 80 ncc_crond.c : 54 crondConf()]:::DEBUG ON
[ 80 ncc_fsm_boot.c : 243 doRtInit()]:::Send Event to open 2.4G Wlan !
[ 80 ncc_EventInternal.c : 251 wlanSchedCheck()]:::no sched
llmnr: have no available linklocal address. wait count=2
llmnr: have no available linklocal address. wait count=3
llmnr: have no available linklocal address. wait count=4
llmnr: have no available linklocal address. wait count=5
llmnr: have no available linklocal address. wait count=6
llmnr: have no available linklocal address. wait count=7
llmnr: have no available linklocal address. wait count=8
killall: crond: no process killed
Starting loop
killall: wscd: no process killed
brctl: bridge br0: Device or resource busy
brctl: bridge br0: Device or resource busy
[ 80 ncc_fsm_boot.c : 776 Boot()]:::wanCableLink = 0
libupnp: using UDP SSDP_PORT = 1900
[ 80 /opt/release/RT288x_SDK_0214/RT288x_SDK/source/user/wolf/cameo/ncc/../model/dlink_636/objTools/ncc_objTools.c: 5192 probeSamba()]:::count = 2
[ 80 ncc_fsm_boot.c : 818 Boot()]:::Send Event to Mount Storage !
[ 80 ncc_dev_independence.c: 3582 devOpFunc()]:::get internet_cable_lose
[ 80 ncc_firewall.c : 4526 runFwScript()]:::===ipt run start===
[ 80 ncc_firewall.c : 4528 runFwScript()]:::===ipt run end===
llmnr: have no available linklocal address. wait count=9
llmnr: have no available linklocal address. wait count=10
bind: Address already in use
mini_httpd: started as root without requesting chroot(), warning only
bind: Address already in use
mini_httpd: started as root without requesting chroot(), warning only
ip6tables: Bad rule (does a matching rule exist in that chain?).
[ 80 ncc_radvd.c : 224 radvdConf()]:::is6rdsunset: 0, prefix:
[ 80 ncc_fsm_boot.c : 1118 Boot()]:::setting v6Lan Host Filter=fe80:0:0:0:cabe:19ff:fe71:a1d9!
[ 80 ncc_fsm_boot.c : 1141 Boot()]:::=====================finish DIR_636_Boot=====================
[SYS][ 80 ncc_fsm_boot.c : 1150 Boot()]:::Boot Complate!!
[ 80 ncc_EventInternal.c : 1137 doEventInternal()]:::InternalLocalTimeChange
[ 80 ncc_EventInternal.c : 498 onMailSchedule()]:::mailCfg.schedSendEnable ? 0
[ 80 ncc_EventInternal.c : 1153 doEventInternal()]:::needSendLog = 0
[ 80 ncc_EventInternal.c : 927 doEventInternal()]:::====== Usbmount start ======
****** Run usb_mount.sh remove ******
****** Run usb_mount.sh final ******
****** Run usb_mount.sh mount ******
****** Run usb_mount.sh final ******
[ 80 ncc_EventInternal.c : 929 doEventInternal()]:::====== Usbmount finish ======
ifconfig: ioctl 0x8913 failed: No such device
ifconfig: ioctl 0x8913 failed: No such device
/proc/cpuinfo -save as for Zyxel above
system type : Ralink RT63165 SOC
processor : 0
cpu model : MIPS 34Kc V5.5
BogoMIPS : 465.30
wait instruction : yes
microsecond timers : yes
tlb_entries : 32
extra interrupt vector : yes
hardware watchpoint : yes, count: 4, address/irw mask: [0x0000, 0x0c88, 0x0ff8, 0x0a20]
ASEs implemented : mips16 dsp mt
shadow register sets : 1
core : 0
VCED exceptions : not available
VCEI exceptions : not available
MTD Partitions:
major minor #blocks name
31 0 16384 mtdblock0
31 1 192 mtdblock1
31 2 64 mtdblock2
31 3 64 mtdblock3
31 4 192 mtdblock4
31 5 512 mtdblock5
31 6 1305 mtdblock6
31 7 14054 mtdblock7
31 8 14848 mtdblock8
31 9 512 mtdblock9
(Last edited by oldcomputerjunk on 6 Jul 2014, 11:53)