static void enterprise_baseband_init(void)
{
	int modem_id = tegra_get_modem_id();

	switch (modem_id) {
	case TEGRA_BB_PH450: /* PH450 ULPI */
		enterprise_modem_init();
		break;
	case TEGRA_BB_XMM6260: /* XMM6260 HSIC */
		/* baseband-power.ko will register ehci2 device */
		tegra_ehci2_device.dev.platform_data =
					&tegra_ehci2_hsic_xmm_pdata;
		tegra_baseband_power_data.hsic_register =
						&tegra_usb_hsic_host_register;
		tegra_baseband_power_data.hsic_unregister =
						&tegra_usb_hsic_host_unregister;

		platform_device_register(&tegra_baseband_power_device);
		platform_device_register(&tegra_baseband_power2_device);
		break;
#ifdef CONFIG_TEGRA_BB_M7400
	case TEGRA_BB_M7400: /* M7400 HSIC */
		tegra_ehci2_hsic_xmm_pdata.u_data.host.power_off_on_suspend = 0;
		tegra_ehci2_device.dev.platform_data
			= &tegra_ehci2_hsic_xmm_pdata;
		platform_device_register(&tegra_baseband_m7400_device);
		break;
#endif
	}
}
static void enterprise_baseband_init(void)
{
	int modem_id = tegra_get_modem_id();

#ifdef CONFIG_MODEM_ICERA_E450
       printk(KERN_INFO "enterprise_baseband_init modem_id %d", modem_id);
       modem_id = 1;
       printk(KERN_INFO "set modem_id to %d", modem_id);
#endif

	switch (modem_id) {
	case TEGRA_BB_PH450: /* PH450 ULPI */
		enterprise_modem_init();
		break;
	case TEGRA_BB_XMM6260: /* XMM6260 HSIC */
		/* baseband-power.ko will register ehci2 device */
		tegra_ehci2_device.dev.platform_data =
					&tegra_ehci2_hsic_xmm_pdata;
		/* enable XMM6260 baseband gpio(s) */
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.mdm_reset);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.mdm_on);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.ap2mdm_ack);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.mdm2ap_ack);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.ap2mdm_ack2);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.mdm2ap_ack2);
		tegra_baseband_power_data.hsic_register =
						&tegra_usb_hsic_host_register;
		tegra_baseband_power_data.hsic_unregister =
						&tegra_usb_hsic_host_unregister;
		platform_device_register(&tegra_baseband_power_device);
		platform_device_register(&tegra_baseband_power2_device);
		break;
#ifdef CONFIG_TEGRA_BB_M7400
	case TEGRA_BB_M7400: /* M7400 HSIC */
		tegra_ehci2_hsic_xmm_pdata.u_data.host.power_off_on_suspend = 0;
		tegra_ehci2_device.dev.platform_data
			= &tegra_ehci2_hsic_xmm_pdata;
		platform_device_register(&tegra_baseband_m7400_device);
		break;
#endif
	}
}
Esempio n. 3
0
static void enterprise_baseband_init(void)
{
	int modem_id = tegra_get_modem_id();

	switch (modem_id) {
	case TEGRA_BB_PH450: /* PH450 ULPI */
		enterprise_modem_init();
		break;
	case TEGRA_BB_XMM6260: /* XMM6260 HSIC */
		/* xmm baseband - do not switch off phy during suspend */
		tegra_ehci_uhsic_pdata.power_down_on_bus_suspend = 0;
		uhsic_phy_config.postsuspend = enterprise_usb_hsic_postsupend;
		uhsic_phy_config.preresume = enterprise_usb_hsic_preresume;
		uhsic_phy_config.usb_phy_ready = enterprise_usb_hsic_phy_ready;
		uhsic_phy_config.post_phy_off = enterprise_usb_hsic_phy_off;
		/* enable XMM6260 baseband gpio(s) */
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.mdm_reset);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.mdm_on);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.ap2mdm_ack);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.mdm2ap_ack);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.ap2mdm_ack2);
		tegra_gpio_enable(tegra_baseband_power_data.modem.generic
			.mdm2ap_ack2);
		tegra_baseband_power_data.hsic_register =
						&tegra_usb_hsic_host_register;
		tegra_baseband_power_data.hsic_unregister =
						&tegra_usb_hsic_host_unregister;
		platform_device_register(&tegra_baseband_power_device);
		platform_device_register(&tegra_baseband_power2_device);
		break;
#ifdef CONFIG_TEGRA_BB_M7400
	case TEGRA_BB_M7400: /* M7400 HSIC */
		tegra_ehci_uhsic_pdata.power_down_on_bus_suspend = 0;
		tegra_ehci2_device.dev.platform_data
			= &tegra_ehci_uhsic_pdata;
		platform_device_register(&tegra_baseband_m7400_device);
		break;
#endif
	}
}
static void enterprise_baseband_init(void)
{
	struct board_info board_info;

	int modem_id = tegra_get_modem_id();

	tegra_get_board_info(&board_info);

	switch (modem_id) {
	case TEGRA_BB_PH450: /* PH450 ULPI */
		enterprise_modem_init();
		break;
	case TEGRA_BB_XMM6260: /* XMM6260 HSIC */
		/* baseband-power.ko will register ehci2 device */
		tegra_ehci2_device.dev.platform_data =
					&tegra_ehci2_hsic_xmm_pdata;
		tegra_baseband_power_data.hsic_register =
						&tegra_usb_hsic_host_register;
		tegra_baseband_power_data.hsic_unregister =
						&tegra_usb_hsic_host_unregister;
		if ((board_info.board_id == BOARD_E1239) &&
			(board_info.fab <= BOARD_FAB_A02)) {
			tegra_baseband_power_data.modem.
				xmm.ipc_hsic_active  = BB_GPIO_LCD_PWR2;
			tegra_baseband_power_data.modem.
				xmm.ipc_hsic_sus_req = BB_GPIO_LCD_PWR1;
		}
		platform_device_register(&tegra_baseband_power_device);
		platform_device_register(&tegra_baseband_power2_device);
		break;
#ifdef CONFIG_TEGRA_BB_M7400
	case TEGRA_BB_M7400: /* M7400 HSIC */
		tegra_ehci2_hsic_xmm_pdata.u_data.host.power_off_on_suspend = 0;
		tegra_ehci2_device.dev.platform_data
			= &tegra_ehci2_hsic_xmm_pdata;
		platform_device_register(&tegra_baseband_m7400_device);
		break;
#endif
	}
}