void mop500_sdi_tc35892_init(struct device *parent)
{
	mop500_sdi0_data.gpio_cd = GPIO_SDMMC_CD;
	sdi0_en = GPIO_SDMMC_EN;
	sdi0_vsel = GPIO_SDMMC_1V8_3V_SEL;
	sdi0_configure(parent);
}
예제 #2
0
static int __init ssg_sdi_init(void)
{
//	ssg_sdi2_data.card_sleep_on_suspend = true;
#ifndef CONFIG_STE_WLAN
	int ret;
#endif
	/* v2 has a new version of this block that need to be forced */
	u32 periphid = 0x10480180;

	db8500_add_sdi2(&ssg_sdi2_data, periphid);
	codina_sdi2_init();

	if ((sec_debug_settings & SEC_DBG_STM_VIA_SD_OPTS) == 0) {
		/* not tracing via SDI0 pins, so can enable SDI0 */
		sdi0_configure();
		db8500_add_sdi0(&ssg_sdi0_data, periphid);
	}

	db8500_add_sdi1(&ssg_sdi1_data, periphid);

#ifndef CONFIG_STE_WLAN
	/* BCM */
	codina_wifi_init();
#endif

#ifdef CONFIG_BROADCOM_WIFI_RESERVED_MEM
	brcm_init_wlan_mem();
#endif
#ifndef CONFIG_STE_WLAN
	ret =  platform_device_register(&brcm_device_wlan);
#endif
	return 0;
}
예제 #3
0
void __init snowball_sdi_init(struct device *parent)
{
	/* On Snowball MMC_CAP_SD_HIGHSPEED isn't supported (Hardware issue?) */
	mop500_sdi0_data.capabilities &= ~MMC_CAP_SD_HIGHSPEED;
	/* On-board eMMC */
	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
	/* External Micro SD slot */
	mop500_sdi0_data.gpio_cd = SNOWBALL_SDMMC_CD_GPIO;
	mop500_sdi0_data.cd_invert = true;
	sdi0_configure(parent);
}
예제 #4
0
void __init hrefv60_sdi_init(struct device *parent)
{
	/* PoP:ed eMMC */
	db8500_add_sdi2(parent, &mop500_sdi2_data, U8500_SDI_V2_PERIPHID);
	/* On-board eMMC */
	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
	/* External Micro SD slot */
	mop500_sdi0_data.gpio_cd = HREFV60_SDMMC_CD_GPIO;
	sdi0_configure(parent);
	/* WLAN SDIO channel */
	db8500_add_sdi1(parent, &mop500_sdi1_data, U8500_SDI_V2_PERIPHID);
}
예제 #5
0
void __init snowball_sdi_init(struct device *parent)
{
	
	mop500_sdi0_data.capabilities &= ~MMC_CAP_SD_HIGHSPEED;
	
	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
	
	mop500_sdi0_data.gpio_cd = SNOWBALL_SDMMC_CD_GPIO;
	mop500_sdi0_data.cd_invert = true;
	sdi0_en = SNOWBALL_SDMMC_EN_GPIO;
	sdi0_vsel = SNOWBALL_SDMMC_1V8_3V_GPIO;
	sdi0_configure(parent);
}
예제 #6
0
void __init hrefv60_sdi_init(struct device *parent)
{
	
	db8500_add_sdi2(parent, &mop500_sdi2_data, U8500_SDI_V2_PERIPHID);
	
	db8500_add_sdi4(parent, &mop500_sdi4_data, U8500_SDI_V2_PERIPHID);
	
	mop500_sdi0_data.gpio_cd = HREFV60_SDMMC_CD_GPIO;
	sdi0_en = HREFV60_SDMMC_EN_GPIO;
	sdi0_vsel = HREFV60_SDMMC_1V8_3V_GPIO;
	sdi0_configure(parent);
	
	db8500_add_sdi1(parent, &mop500_sdi1_data, U8500_SDI_V2_PERIPHID);
}
static int __init ssg_sdi_init(void)
{
	ssg_sdi2_data.card_sleep_on_suspend = true;
	db8500_add_sdi2(&ssg_sdi2_data);
	janice_sdi2_init();

	if ((sec_debug_settings & SEC_DBG_STM_VIA_SD_OPTS) == 0) {
		/* not tracing via SDI0 pins, so can enable SDI0 */
		sdi0_configure();
		db8500_add_sdi0(&ssg_sdi0_data);
	}

	db8500_add_sdi1(&ssg_sdi1_data);

	/* BCM */
	janice_wifi_init();
#ifdef WLAN_STATIC_BUF
	init_wifi_mem();
#endif /* WLAN_STATIC_BUF */

	return 0;
}
예제 #8
0
void mop500_sdi_tc35892_init(struct device *parent)
{
	mop500_sdi0_data.gpio_cd = GPIO_SDMMC_CD;
	sdi0_configure(parent);
}