int __init mot_modem_init(void) { char bp_ctrl_bus[40] = "UART"; char bp_data_bus[20] = "only"; if ((machine_is_olympus() && !(HWREV_TYPE_IS_MORTABLE(system_rev) && HWREV_REV(system_rev) <= HWREV_REV_1)) || (machine_is_etna() && ((HWREV_TYPE_IS_PORTABLE(system_rev) && HWREV_REV(system_rev) >= HWREV_REV_2C) || (HWREV_TYPE_IS_BRASSBOARD(system_rev) && HWREV_REV(system_rev) >= HWREV_REV_3))) || machine_is_tegra_daytona() || machine_is_sunfire()) { strcat(bp_ctrl_bus, " (with mdm_ctrl)"); mot_mdm_ctrl_init(); mot_mdm6600_agent_init(); } else strcat(bp_ctrl_bus, " (NO mdm_ctrl)"); if (machine_is_olympus() || machine_is_tegra_daytona() || machine_is_sunfire()) { strcpy(bp_data_bus, "and SPI"); mot_setup_mdm6600_spi_ipc(); mot_setup_mdm6600_usb_ipc(0); } else if (machine_is_etna()) { strcpy(bp_data_bus, "and USB"); mot_setup_mdm6600_usb_ipc(MDM6600_HOST_WAKE_GPIO); } /* All hardware at least has MDM6x00 at the moment. */ printk(KERN_INFO "%s: MDM6x00 on %s %s\n", __func__, bp_ctrl_bus, bp_data_bus); if (machine_is_etna() && ((HWREV_TYPE_IS_PORTABLE(system_rev) && HWREV_REV(system_rev) >= HWREV_REV_2C) || (HWREV_TYPE_IS_BRASSBOARD(system_rev) && HWREV_REV(system_rev) >= HWREV_REV_3))) mot_setup_wrigley_host_wake(); return 0; }
int __init mot_modem_init(void) { char bp_ctrl_bus[40] = "UART"; char bp_data_bus[20] = "only"; if ( !(HWREV_TYPE_IS_MORTABLE(system_rev) && HWREV_REV(system_rev) <= HWREV_REV_1) ) { strcat(bp_ctrl_bus, " (with mdm_ctrl)"); mot_mdm_ctrl_init(); mot_mdm6600_agent_init(); } else strcat(bp_ctrl_bus, " (NO mdm_ctrl)"); strcpy(bp_data_bus, "and SPI"); mot_setup_mdm6600_spi_ipc(); mot_setup_mdm6600_usb_ipc(0); /* All hardware at least has MDM6x00 at the moment. */ printk(KERN_INFO "%s: MDM6x00 on %s %s\n", __func__, bp_ctrl_bus, bp_data_bus); return 0; }