#if CONFIG_BATTERY_STC3117 int null_fn(void) { return 0; // for discharging status } int Temperature_fn(void) { return (25); } static struct stc311x_platform_data stc3117_data = { .battery_online = NULL, .charger_online = null_fn, // used in stc311x_get_status() .charger_enable = null_fn, // used in stc311x_get_status() .power_supply_register = NULL, .power_supply_unregister = NULL, .Vmode= 0, /*REG_MODE, BIT_VMODE 1=Voltage mode, 0=mixed mode */ .Alm_SOC = 10, /* SOC alm level %*/ .Alm_Vbat = 3600, /* Vbat alm level mV*/ .CC_cnf = 525, /* nominal CC_cnf, coming from battery characterisation*/ .VM_cnf = 558, /* nominal VM cnf , coming from battery characterisation*/ .Rint = 200, /* nominal internal impedance*/ .Cnom = 2600, /* nominal capacity in mAh, coming from battery characterisation*/ .Rsense = 10, /* sense resistor mOhms*/ .RelaxCurrent = 150, /* current for relaxation in mA (< C/20) */ .Adaptive = 1, /* 1=Adaptive mode enabled, 0=Adaptive mode disabled */ /* Elentec Co Ltd Battery pack - 80 means 8% */ .CapDerating[6] = 71, /* capacity derating in 0.1%, for temp = -20°C */ .CapDerating[5] = 42, /* capacity derating in 0.1%, for temp = -10°C */ .CapDerating[4] = 13, /* capacity derating in 0.1%, for temp = 0°C */ .CapDerating[3] = 5, /* capacity derating in 0.1%, for temp = 10°C */ .CapDerating[2] = 0, /* capacity derating in 0.1%, for temp = 25°C */ .CapDerating[1] = 0, /* capacity derating in 0.1%, for temp = 40°C */ .CapDerating[0] = 0, /* capacity derating in 0.1%, for temp = 60°C */ .OCVValue[15] = 0, /* OCV curve adjustment */ .OCVValue[14] = 0, /* OCV curve adjustment */ .OCVValue[13] = 0, /* OCV curve adjustment */ .OCVValue[12] = 0, /* OCV curve adjustment */ .OCVValue[11] = 0, /* OCV curve adjustment */ .OCVValue[10] = 0, /* OCV curve adjustment */ .OCVValue[9] = 0, /* OCV curve adjustment */ .OCVValue[8] = 0, /* OCV curve adjustment */ .OCVValue[7] = 0, /* OCV curve adjustment */ .OCVValue[6] = 0, /* OCV curve adjustment */ .OCVValue[5] = 0, /* OCV curve adjustment */ .OCVValue[4] = 0, /* OCV curve adjustment */ .OCVValue[3] = 0, /* OCV curve adjustment */ .OCVValue[2] = 0, /* OCV curve adjustment */ .OCVValue[1] = 0, /* OCV curve adjustment */ .OCVValue[0] = 0, /* OCV curve adjustment */ /*if the application temperature data is preferred than the STC3117 temperature*/ .ExternalTemperature = Temperature_fn, /*External temperature fonction, return °C*/ .ForceExternalTemperature = 0, /* 1=External temperature, 0=STC3117 temperature */ }; #endif static struct i2c_board_info __initdata beagle_i2c2_boardinfo[] = { #if CONFIG_BATTERY_STC3117 { I2C_BOARD_INFO("stc3117", 0x70), .platform_data = &stc3117_data, }, #endif };