static void dc_xpwr_fg_pdata(void)
{
	static struct dollarcove_fg_pdata pdata;
	struct em_config_oem0_data data;
	int i;
#ifdef CONFIG_BTNS_PMIC
	snprintf(pdata.battid, (BATTID_LEN + 1),
			"%s", "INTN0001");
	pdata.technology = POWER_SUPPLY_TECHNOLOGY_LION;

	pdata.design_cap = 728;
	pdata.design_min_volt = 3550;
	pdata.design_max_volt = 4350;
	pdata.max_temp = 45;
	pdata.min_temp = 0;
#else
	if (em_config_get_oem0_data(&data)) {
		snprintf(pdata.battid, (BATTID_LEN + 1),
				"%s", "INTN0001");
		pdata.technology = POWER_SUPPLY_TECHNOLOGY_LION;
	} else {
		snprintf(pdata.battid, (BATTID_LEN + 1),
				"%s", "UNKNOWNB");
		pdata.technology = POWER_SUPPLY_TECHNOLOGY_UNKNOWN;
	}

	pdata.design_cap = 4980;
	pdata.design_min_volt = 3400;
	pdata.design_max_volt = 4350;
	pdata.max_temp = 55;
	pdata.min_temp = 0;
#endif
	intel_mid_pmic_set_pdata("dollar_cove_battery",
				(void *)&pdata, sizeof(pdata), 0);
}
static void dc_xpwr_pwrsrc_pdata(void)
{
	static struct dc_xpwr_pwrsrc_pdata pdata;

#if defined(CONFIG_MRD8) || defined(CONFIG_MRD7P05)
	int ret;

	pdata.mux_gpio = 131; /* GPIO_S5[1] */
	ret = gpio_request(pdata.mux_gpio, "otg_gpio");
	if (ret) {
		pr_err("unable to request GPIO pin\n");
		pdata.mux_gpio = -1;
	} else {
		lnw_gpio_set_alt(pdata.mux_gpio, 0);
	}
	/*
	 * set en_chrg_det to true if the
	 * D+/D- lines are connected to
	 * PMIC itself.
	 */
	pdata.en_chrg_det = true;
#else
	pdata.en_chrg_det = false;
#endif

	intel_mid_pmic_set_pdata("dollar_cove_pwrsrc",
				(void *)&pdata, sizeof(pdata), 0);
}
static void dc_xpwr_chrg_pdata(void)
{
	static struct dollarcove_chrg_pdata pdata;
	int ret;

	pdata.max_cc = 2000;
	pdata.max_cv = 4350;
	pdata.def_cc = 500;
	pdata.def_cv = 4350;
	pdata.def_ilim = 900;
	pdata.def_iterm = 300;
	pdata.def_max_temp = 55;
	pdata.def_min_temp = 0;

	pdata.otg_gpio = 117; /* GPIONC_15 */
	/* configure output */
	ret = gpio_request(pdata.otg_gpio, "otg_gpio");
	if (ret) {
		pr_err("unable to request GPIO pin\n");
		pdata.otg_gpio = -1;
	} else {
		lnw_gpio_set_alt(pdata.otg_gpio, 0);
	}

	platform_init_chrg_params(&pdata);

	intel_mid_pmic_set_pdata("dollar_cove_charger",
				(void *)&pdata, sizeof(pdata), 0);
}
static int set_byt_platform_thermal_data(void)
{
	return intel_mid_pmic_set_pdata(BYT_THERM_DEV_NAME,
				&pdata[byt_thermal],
				sizeof(pdata[byt_thermal]));
}