I'm looking at trying to get gargoyle running on a wzr-hp-g300nh with the rtl8366rb switch instead of the supported rtl8366s switch.
I downloaded and built the latest experimental build and I still have the same failure. The relevant parts seem to be:
Code: Select all
Calibrating delay loop... 266.24 BogoMIPS (lpj=1331200)
Mount-cache hash table entries: 512
NET: Registered protocol family 16
MIPS: machine is Buffalo WZR-HP-G300NH
Found an RTL8366RB switch
bio: create slab <bio-0> at 0
Switching to clocksource MIPS
NET: Registered protocol family 2
Code: Select all
Atheros AR71xx SPI Controller driver version 0.2.4
Realtek RTL8366S ethernet switch driver version 0.2.2
rtl8366s rtl8366s: using GPIO pins 19 (SDA) and 20 (SCK)
rtl8366s rtl8366s: unknown chip id (0000)
rtl8366s rtl8366s: chip detection failed, err=-19
eth0: Atheros AG71xx at 0xb9000000, irq 4
![Smile :)](./images/smilies/icon_e_smile.gif)
Code: Select all
static void __init wzrhpg300nh_setup(void)
{
u8 *eeprom = (u8 *) KSEG1ADDR(0x1fff1000);
bool hasrtl8366rb = false;
ar71xx_set_mac_base(eeprom + WZRHPG300NH_MAC_OFFSET);
if (rtl8366_smi_detect(&wzrhpg300nh_rtl8366_data) == RTL8366_TYPE_RB)
hasrtl8366rb = true;
if (hasrtl8366rb) {
ar71xx_eth0_pll_data.pll_1000 = 0x1f000000;
ar71xx_eth0_data.mii_bus_dev = &wzrhpg300nh_rtl8366rb_device.dev;
ar71xx_eth1_pll_data.pll_1000 = 0x100;
ar71xx_eth1_data.mii_bus_dev = &wzrhpg300nh_rtl8366rb_device.dev;
} else {
ar71xx_eth0_pll_data.pll_1000 = 0x1e000100;
ar71xx_eth0_data.mii_bus_dev = &wzrhpg300nh_rtl8366s_device.dev;
ar71xx_eth1_pll_data.pll_1000 = 0x1e000100;
ar71xx_eth1_data.mii_bus_dev = &wzrhpg300nh_rtl8366s_device.dev;
}
ar71xx_eth0_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII;
ar71xx_eth0_data.speed = SPEED_1000;
ar71xx_eth0_data.duplex = DUPLEX_FULL;
ar71xx_eth1_data.phy_if_mode = PHY_INTERFACE_MODE_RGMII;
ar71xx_eth1_data.phy_mask = 0x10;
ar71xx_add_device_eth(0);
ar71xx_add_device_eth(1);
ar71xx_add_device_usb();
ar913x_add_device_wmac(eeprom, NULL);
platform_device_register(&wzrhpg300nh_74hc153_device);
platform_device_register(&wzrhpg300nh_flash_device);
platform_device_register(&wzrhpg300nh_rtl8366s_device);
ar71xx_add_device_leds_gpio(-1, ARRAY_SIZE(wzrhpg300nh_leds_gpio),
wzrhpg300nh_leds_gpio);
ar71xx_add_device_gpio_buttons(-1, WZRHPG300NH_BUTTONS_POLL_INTERVAL,
ARRAY_SIZE(wzrhpg300nh_gpio_buttons),
wzrhpg300nh_gpio_buttons);
}
Statik