Build Help?
Posted: Tue Feb 14, 2012 10:13 pm
Hi all,
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:
and
Now I did some preliminary digging (I'm way over my head.
) and I found this section of mach-wzr-hp-g300nh.c
It looks to me like the script detects the proper chip, but then ignores the detection and sets the device to rtl8366s. I'm going to try building with an rtl8366rb there instead. . .
Statik
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

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