示例#1
0
static void __init rt_v11st_fe_init(void)
{
	rt288x_gpio_init(RT2880_GPIO_MODE_UART0);

	rt288x_register_flash(0);

	ramips_register_gpio_leds(-1, ARRAY_SIZE(v11st_fe_leds_gpio),
				  v11st_fe_leds_gpio);

	ramips_register_gpio_buttons(-1, V11ST_FE_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(v11st_fe_gpio_buttons),
				     v11st_fe_gpio_buttons);

	rt288x_register_wifi();

	/* Board is connected to an IC+ IP175C Fast Ethernet switch */
	rt288x_eth_data.speed = SPEED_100;
	rt288x_eth_data.duplex = DUPLEX_FULL;
	rt288x_eth_data.tx_fc = 1;
	rt288x_eth_data.rx_fc = 1;
	rt288x_eth_data.phy_mask = BIT(0);
	rt288x_register_ethernet();

	rt288x_register_wdt();
	rt288x_register_pci();
}
示例#2
0
static void __init whr_g300n_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_register_flash(0, &whr_g300n_flash_data);
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(whr_g300n_leds_gpio),
				  whr_g300n_leds_gpio);
	ramips_register_gpio_buttons(-1, WHR_G300N_BUTTONS_POLL_INTERVAL,
				     ARRAY_SIZE(whr_g300n_gpio_buttons),
				     whr_g300n_gpio_buttons);
	rt305x_register_wifi();
}
示例#3
0
static void __init dir_300b_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_register_flash(0, &dir_300b_flash_data);
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(dir_300b_leds_gpio),
				  dir_300b_leds_gpio);
	ramips_register_gpio_buttons(-1, DIR_300B_BUTTONS_POLL_INTERVAL,
				     ARRAY_SIZE(dir_300b_gpio_buttons),
				     dir_300b_gpio_buttons);
	rt305x_register_wifi();
}
static void __init pwh2004_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);
	rt305x_register_flash(0, &pwh2004_flash_data);
	ramips_register_gpio_leds(-1, ARRAY_SIZE(pwh2004_leds_gpio),
				  pwh2004_leds_gpio);
	ramips_register_gpio_buttons(-1, PWH2004_BUTTONS_POLL_INTERVAL,
				     ARRAY_SIZE(pwh2004_gpio_buttons),
				     pwh2004_gpio_buttons);
	rt305x_register_ethernet();
	rt305x_register_wifi();
	rt305x_register_wdt();
}
示例#5
0
static void __init rt_g32b_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);
	rt305x_register_spi(rt_g32b_spi_slave_info,
			    ARRAY_SIZE(rt_g32b_spi_slave_info));

	rt305x_register_ethernet();
	ramips_register_gpio_buttons(-1, RT_G32B_BUTTONS_POLL_INTERVAL,
				     ARRAY_SIZE(rt_g32b_gpio_buttons),
				     rt_g32b_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
}
示例#6
0
static void __init dir_common_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_register_flash(0);

	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	ramips_register_gpio_buttons(-1, DIR_300B_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(dir_300b_gpio_buttons),
				     dir_300b_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
}
示例#7
0
static void __init pwh2004_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);
	rt305x_register_flash(0, &pwh2004_flash_data);
	ramips_register_gpio_leds(-1, ARRAY_SIZE(pwh2004_leds_gpio),
				  pwh2004_leds_gpio);
	ramips_register_gpio_buttons(-1, PWH2004_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(pwh2004_gpio_buttons),
				     pwh2004_gpio_buttons);
	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	rt305x_register_wifi();
	rt305x_register_wdt();
}
示例#8
0
static void __init dir615h1_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);
	rt305x_register_spi(dir615h1_spi_slave_info,
			    ARRAY_SIZE(dir615h1_spi_slave_info));
	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(dir_615_h1_leds_gpio),
				  dir_615_h1_leds_gpio);
	ramips_register_gpio_buttons(-1, DIR_615_H1_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(dir_615_h1_gpio_buttons),
				     dir_615_h1_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
}
示例#9
0
static void __init all0256n_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);
	rt305x_register_spi(all0256n_spi_slave_info,
			    ARRAY_SIZE(all0256n_spi_slave_info));
	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_NONE;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(all0256n_leds_gpio),
				  all0256n_leds_gpio);
	ramips_register_gpio_buttons(-1, ALL0256N_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(all0256n_gpio_buttons),
				     all0256n_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
}
示例#10
0
static void __init nbg_419n_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_register_flash(0);

	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(nbg_419n_leds_gpio),
				  nbg_419n_leds_gpio);
	ramips_register_gpio_buttons(-1, NBG_419N_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(nbg_419n_gpio_buttons),
				     nbg_419n_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
}
示例#11
0
static void __init hw550_3g_init(void)
{
	rt305x_gpio_init(HW550_3G_GPIO_MODE);

	rt305x_register_flash(0, &hw550_3g_flash_data);
       rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_WLLLL;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(hw550_3g_leds_gpio),
				  hw550_3g_leds_gpio);
	ramips_register_gpio_buttons(-1, HW550_3G_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(hw550_3g_gpio_buttons),
				     hw550_3g_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#12
0
static void __init mofi3500_3gn_init(void)
{
	rt305x_gpio_init(MOFI3500_3GN_GPIO_MODE);

	rt305x_register_flash(0, &mofi3500_3gn_flash_data);
	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(mofi3500_3gn_leds_gpio),
				  mofi3500_3gn_leds_gpio);
	ramips_register_gpio_buttons(-1, MOFI3500_3GN_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(mofi3500_3gn_gpio_buttons),
				     mofi3500_3gn_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#13
0
static void __init wl_330n3g_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);
	rt305x_register_spi(wl_330n3g_spi_slave_info,
			    ARRAY_SIZE(wl_330n3g_spi_slave_info));
	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_WLLLL;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(wl_330n3g_leds_gpio),
				  wl_330n3g_leds_gpio);
	ramips_register_gpio_buttons(-1, WL_330N3G_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(wl_330n3g_gpio_buttons),
				     wl_330n3g_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_usb();
	rt305x_register_wdt();
}
示例#14
0
static void __init w306r_v20_init(void)
{
	rt305x_register_flash(0);

	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_WLLLL;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(w306r_v20_leds_gpio),
				  w306r_v20_leds_gpio);
	ramips_register_gpio_buttons(-1, W306R_V20_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(w306r_v20_gpio_buttons),
				     w306r_v20_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
}
示例#15
0
static void __init wl341v3_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_register_flash(0, &wl341v3_flash_data);
	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_WLLLL;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(wl341v3_leds_gpio),
				  wl341v3_leds_gpio);
	ramips_register_gpio_buttons(-1, WL341V3_BUTTONS_POLL_INTERVAL,
				     ARRAY_SIZE(wl341v3_gpio_buttons),
				     wl341v3_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#16
0
static void __init v22rw_2x2_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_register_flash(0);

	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(v22rw_2x2_leds_gpio),
				  v22rw_2x2_leds_gpio);
	ramips_register_gpio_buttons(-1, V22RW_2X2_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(v22rw_2x2_gpio_buttons),
				     v22rw_2x2_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#17
0
static void __init nw718_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_I2C |
			 RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(nw718_leds_gpio),
				  nw718_leds_gpio);
	ramips_register_gpio_buttons(-1, NW718_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(nw718_gpio_buttons),
				     nw718_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_spi(nw718_spi_info, ARRAY_SIZE(nw718_spi_info));
	rt305x_register_usb();
}
static void __init omni_emb_init(void)
{
	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;

	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	ramips_register_gpio_leds(-1, ARRAY_SIZE(omni_emb_leds_gpio),
				omni_emb_leds_gpio);
	ramips_register_gpio_buttons(-1, OMNI_EMB_BUTTONS_POLL_INTERVAL,
				ARRAY_SIZE(omni_emb_gpio_buttons),
				omni_emb_gpio_buttons);

	rt305x_register_flash(0, &omni_emb_flash_data);
	rt305x_register_ethernet();
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#19
0
static void __init fonera20n_init(void)
{
	rt305x_gpio_init(RT305X_GPIO_MODE_GPIO << RT305X_GPIO_MODE_UART0_SHIFT);

	rt305x_register_flash(0, &fonera20n_flash_data);

	ramips_register_gpio_leds(-1, ARRAY_SIZE(fonera20n_leds_gpio),
				  fonera20n_leds_gpio);

	ramips_register_gpio_buttons(-1, FONERA20N_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(fonera20n_gpio_buttons),
				     fonera20n_gpio_buttons);

	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#20
0
static void __init w502u_init(void)
{
	rt305x_gpio_init((RT305X_GPIO_MODE_GPIO <<
			  RT305X_GPIO_MODE_UART0_SHIFT));

	rt305x_flash0_data.nr_parts = ARRAY_SIZE(w502u_partitions);
	rt305x_flash0_data.parts = w502u_partitions;
	rt305x_register_flash(0);

	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_WLLLL;
	rt305x_register_ethernet();
	ramips_register_gpio_leds(-1, ARRAY_SIZE(w502u_leds_gpio),
				  w502u_leds_gpio);
	ramips_register_gpio_buttons(-1, W502U_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(w502u_gpio_buttons),
				     w502u_gpio_buttons);
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#21
0
static void __init bc2_init(void)
{
	rt305x_gpio_init((RT305X_GPIO_MODE_GPIO <<
			  RT305X_GPIO_MODE_UART0_SHIFT) |
			  RT305X_GPIO_MODE_JTAG);

	rt305x_register_flash(0, &bc2_flash_data);

	ramips_register_gpio_leds(-1, ARRAY_SIZE(bc2_leds_gpio),
				  bc2_leds_gpio);

	ramips_register_gpio_buttons(-1, BC2_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(bc2_gpio_buttons),
				     bc2_gpio_buttons);

	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_LLLLW;
	rt305x_register_ethernet();
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#22
0
static void __init omni_emb_hpm_init(void)
{
	omni_emb_hpm_gpio_init();

	ramips_register_gpio_leds(-1, ARRAY_SIZE(omni_emb_hpm_leds_gpio),
				  omni_emb_hpm_leds_gpio);

	ramips_register_gpio_buttons(-1, OMNI_EMB_HPM_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(omni_emb_hpm_gpio_buttons),
				     omni_emb_hpm_gpio_buttons);

	rt3883_register_spi(omni_emb_hpm_spi_info,
			    ARRAY_SIZE(omni_emb_hpm_spi_info));

	rt3883_register_wlan();

	rt3883_eth_data.phy_mask = BIT(4);
	rt3883_register_ethernet();

	rt3883_register_wdt(false);
	rt3883_register_usbhost();
}
示例#23
0
static void __init wl351_init(void)
{
	rt305x_gpio_init((RT305X_GPIO_MODE_GPIO <<
				RT305X_GPIO_MODE_UART0_SHIFT) |
				RT305X_GPIO_MODE_I2C |
				RT305X_GPIO_MODE_SPI |
				RT305X_GPIO_MODE_MDIO);
	rt305x_register_flash(0, &wl351_flash_data);
	ramips_register_gpio_leds(-1, ARRAY_SIZE(wl351_leds_gpio),
						wl351_leds_gpio);
	ramips_register_gpio_buttons(-1, WL351_KEYS_POLL_INTERVAL,
				     ARRAY_SIZE(wl351_gpio_buttons),
				     wl351_gpio_buttons);
	// external rtl8366rb
	rt305x_esw_data.vlan_config = RT305X_ESW_VLAN_CONFIG_BYPASS;
	rt305x_esw_data.reg_initval_fct2 = 0x0002500c;
	rt305x_esw_data.reg_initval_fpa2 = 0x1f003fff;
	rt305x_register_ethernet();
	platform_device_register(&wl351_switch);
	rt305x_register_wifi();
	rt305x_register_wdt();
	rt305x_register_usb();
}
示例#24
0
static void __init f5d8235_init(void)
{
    rt288x_gpio_init(RT2880_GPIO_MODE_UART0 | RT2880_GPIO_MODE_I2C);

    rt288x_register_flash(0, &f5d8235_flash_data);
    rt288x_register_wifi();
    rt288x_register_wdt();

    ramips_register_gpio_leds(-1, ARRAY_SIZE(f5d8235_leds_gpio),
                              f5d8235_leds_gpio);

    ramips_register_gpio_buttons(-1, F5D8235_BUTTONS_POLL_INTERVAL,
                                 ARRAY_SIZE(f5d8235_gpio_buttons),
                                 f5d8235_gpio_buttons);

    platform_device_register(&f5d8235_rtl8366s_device);

    rt288x_eth_data.speed = SPEED_1000;
    rt288x_eth_data.duplex = DUPLEX_FULL;
    rt288x_eth_data.tx_fc = 1;
    rt288x_eth_data.rx_fc = 1;
    rt288x_register_ethernet();
}