From 8b3d62d32a3057eda79fa4359fbd9d326eb5c2c2 Mon Sep 17 00:00:00 2001
From: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
Date: Wed, 15 Dec 2010 05:11:00 +0530
Subject: [Patch 1/3] MSIC Battery: cleanup and bug fix patch

This patch is a cleanup and bug fix patch

Summary of changes:
AS ADC readings are having some error and due to this Charge full condition is
never happening to fix this ADC Voltage error is increased to max error value.

Fixed few coding style or format issues
IPC read/write or register initialization  failed cases are ignored in probe
function to avoid driver insertion fail due msic read write calls.

Signed-off-by: Ramakrishna Pallala <ramakrishna.pallala@intel.com>
---
 drivers/power/intel_mdf_battery.c |   11 ++++-------
 1 files changed, 4 insertions(+), 7 deletions(-)

diff --git a/drivers/power/intel_mdf_battery.c b/drivers/power/intel_mdf_battery.c
index 5371bc5..d657674 100644
--- a/drivers/power/intel_mdf_battery.c
+++ b/drivers/power/intel_mdf_battery.c
@@ -219,7 +219,7 @@
 
 #define BATT_LOWBATT_CUTOFF_VOLT	3800	/* 3800 mV */
 #define BATT_DEAD_CUTOFF_VOLT		3400	/* 3400 mV */
-#define BATT_ADC_VOLT_ERROR		25	/* 25 mV */
+#define BATT_ADC_VOLT_ERROR		40	/* 40 mV */
 #define CHARGE_FULL_IN_MAH		1500	/* 1500 mAh */
 #define MSIC_CHRG_RBATT_VAL		180	/* 180 mOhms */
 #define COLMB_TO_MAHRS_CONV_FCTR	3600
@@ -623,10 +623,9 @@ static void free_adc_channels(u16 ch_index, struct msic_power_module_info *mbi)
 	base_addr = ADC_CHNL_START_ADDR + ch_index;
 	for (i = 0; i < 4 && base_addr < ADC_CHANLS_MAX; i++) {
 		ret = intel_scu_ipc_iowrite8(base_addr, 0x0);
-		if (ret) {
+		if (ret)
 			dev_warn(&mbi->pdev->dev, "%s:ipc write failed\n",
 								__func__);
-		}
 		base_addr++;
 	}
 }
@@ -2428,7 +2427,7 @@ static int msic_battery_probe(struct platform_device *pdev)
 	/* Init MSIC Registers */
 	retval = init_msic_regs(mbi);
 	if (retval < 0)
-		goto init_failed;
+		dev_err(&pdev->dev, "Regisrer init failed\n");
 
 	/* Initialize ADC Channels */
 	mbi->adc_index = mdf_initialize_adc(mbi);
@@ -2482,7 +2481,7 @@ static int msic_battery_probe(struct platform_device *pdev)
 	/* Check if already exist a Charger connection */
 	retval = check_charger_conn(mbi);
 	if (retval)
-		goto ipc_read_failed;
+		dev_err(&pdev->dev, "check charger Conn failed\n");
 
 	/* register interrupt */
 	retval = request_threaded_irq(mbi->irq, msic_battery_interrupt_handler,
@@ -2498,7 +2497,6 @@ static int msic_battery_probe(struct platform_device *pdev)
 
 requestirq_failed:
 	penwell_otg_unregister_bc_callback(otg_handle);
-ipc_read_failed:
 otg_failed:
 	device_remove_file(&pdev->dev, &dev_attr_emrg_charge_enable);
 sysfs_create_faied:
@@ -2506,7 +2504,6 @@ sysfs_create_faied:
 power_reg_failed_usb:
 	power_supply_unregister(&mbi->batt);
 power_reg_failed_batt:
-init_failed:
 	iounmap(mbi->msic_regs_iomap);
 ioremap_failed:
 	kfree(sfi_table);
-- 
1.7.2.3

