OpenWrt Forum Archive

Topic: WNDR3700v2 - Built custom firmware, but ethernet driver doesn't work

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

Realtek RTL8366S ethernet switch driver version 0.2.2
rtl8366s rtl8366s: using GPIO pins 5 (SDA) and 7 (SCK)
rtl8366s rtl8366s: RTL8366 ver. 1 chip found
rtl8366s rtl8366s: chip setup failed, err=-5
rtl8366s: probe of rtl8366s failed with error -5
eth0: Atheros AG71xx at 0xb9000000, irq 4
eth0: unable to find MII bus on device 'rtl8366s'
eth0: Atheros AG71xx at 0xba000000, irq 5
eth0: unable to find MII bus on device 'rtl8366s'

What's the problem with this?

I can use other third-party builds fine. But when I compile it myself from trunk (i've tried different versions and different compiler versions), my ethernet never comes up.

Wireless works fine though when I put my default wireless config to bring up the radios.

The above output is from revision 28000.

I've followed all the WNDR3700 guides, and tried default builds. I'm not sure if I'm missing a kernel driver?

(Last edited by hechacker1 on 21 Aug 2011, 01:52)

Yeah I'm kinda stuck here.

I changed a few "make kernel_config" options, and suddenly I had a working build (config_hz=250).

Then I reverted to default (config_hz=100), and now nothing I do gets my router to boot up. I've probably built and relashed 15 times now.

Strange.

I'm starting from scratch and using the latest trunk with all defaults.

EDIT: with latest trunk I got a Segmentation fault when trying to bring up /etc/init.d/network

Wireless again was working, but ethernet is non-responsive.

I'm trying again with a different version of gcc. Perhaps next I'll try a different binutils.

I can only guess the compilation is failing somehow.

(Last edited by hechacker1 on 21 Aug 2011, 06:33)

Well, I made some progress.

I have a working build on the latest trunk with binutils 2.21.1 and GCC 4.5 w/Linaro.

The default config (binutils 2.20.x) didn't work and produced firmwares that wouldn't boot or freeze up early in the boot process.

This thing is really responsive with config_hz set to 250 and voluntary preemption. I'm not sure why the defaults are config_hz=100 and no-preemption.

It seems this router doesn't like full preemption, the swconfig software can't handle it (it's a bug that should be fixed).

The ethernet driver also fails to respond if I set config_hz to 1000.

I may patch the kernel to try 500Hz.

The discussion might have continued from here.