I was able to build a version of the trunk that worked, but it was buggy. I realized the reason chaos calmer wasn’t building was that I’d forgotten to remove the tmp directory after patching the tree. Once I did that, I was able to get an AR150 build. Unfortunately, flashing that to the router bricked it. I don’t know if this is the result of failing to wipe the configuration, or if the chaos calmer build is simply broken.
So now I’m trying to access the u-boot web UI, but it’s not working. I hold down the button, wait for the five flashes and then let go, and I get the little burst of flashes on the red LED. At this point ARP for 192.168.1.1 works, but when I try to connect to port 80 with my browser, the connection times out–there’s no response to the TCP SYN packet. If I try to connect to any other port (I tried them all!) I get an RST, so the TCP stack is sort of working.
Here’s the TCPDUMP output:
12:37:23.809166 IP 192.168.1.2.47201 > 192.168.1.1.20: Flags [S], seq 727319644, win 29200, options [mss 1460,sackOK,TS val 19684815 ecr 0,nop,wscale 7], length 0
12:37:23.809287 IP 192.168.1.1.20 > 192.168.1.2.47201: Flags [R.], seq 0, ack 727319645, win 29200, length 0
12:37:28.821121 ARP, Request who-has 192.168.1.1 tell 192.168.1.2, length 28
12:37:28.821220 ARP, Reply 192.168.1.1 is-at e4:95:6e:40:60:81, length 46
Is it possible that some of the TCP options linux is sending are causing the stack to reject the packet? Unfortunately I don’t have a Windows machine, so I can’t try that.