[Galaxy S III Original Android Development] codeworkx:
<7>[ 1.262795] c0 [TSP] melfas_power on
<6>[ 1.365314] c0 melfas-ts 3-0048: [TSP]fw version 0xbd !!!!
<6>[ 1.365516] c0 melfas-ts 3-0048: [TSP]hw rev = 0x01
<3>[ 1.366039] c0 [TSP] ISC Ver [0xbd] [0x22] [0x22]
<6>[ 1.366069] c0 [TSP ISC] mms100_ISC_download_mbinary
<7>[ 1.366100] c0 [TSP] melfas_power off
<7>[ 1.400048] c0 [TSP] melfas_power on
<6>[ 1.705751] c0 TS : Section(0) version: 0x02
<6>[ 1.705778] c0 TS : Section(0) Start Address: 0x00
<6>[ 1.705806] c0 TS : Section(0) End Address: 0x00
<6>[ 1.705833] c0 TS : Section(0) Compatibility: 0x00
<6>[ 1.705861] c0 TS : Section(1) version: 0x45
<6>[ 1.705887] c0 TS : Section(1) Start Address: 0x01
<6>[ 1.705915] c0 TS : Section(1) End Address: 0x16
<6>[ 1.705941] c0 TS : Section(1) Compatibility: 0x02
<6>[ 1.705969] c0 TS : Section(2) version: 0x22
<6>[ 1.705994] c0 TS : Section(2) Start Address: 0x17
<6>[ 1.706021] c0 TS : Section(2) End Address: 0x1C
<6>[ 1.706048] c0 TS : Section(2) Compatibility: 0x45
<6>[ 1.706075] c0 TS : Section(3) version: 0x22
<6>[ 1.706100] c0 TS : Section(3) Start Address: 0x1D
<6>[ 1.706128] c0 TS : Section(3) End Address: 0x1E
<6>[ 1.706155] c0 TS : Section(3) Compatibility: 0x45
<6>[ 1.706183] c0 [TSP ISC] fw_mbin[0]->data is NULL
<6>[ 1.706261] c0 [TSP ISC] MBin : Section(0) Version: 0x02
<6>[ 1.706292] c0 [TSP ISC] MBin : Section(0) Start Address: 0x00
<6>[ 1.706324] c0 [TSP ISC] MBin : Section(0) End Address: 0x00
<6>[ 1.706355] c0 [TSP ISC] MBin : Section(0) Compatibility: 0x00
<6>[ 1.706387] c0 [TSP ISC] MBin : Section(1) Version: 0x45
<6>[ 1.706417] c0 [TSP ISC] MBin : Section(1) Start Address: 0x01
<6>[ 1.706450] c0 [TSP ISC] MBin : Section(1) End Address: 0x16
<6>[ 1.706481] c0 [TSP ISC] MBin : Section(1) Compatibility: 0x02
<6>[ 1.706513] c0 [TSP ISC] MBin : Section(2) Version: 0x20
<6>[ 1.706543] c0 [TSP ISC] MBin : Section(2) Start Address: 0x17
<6>[ 1.706575] c0 [TSP ISC] MBin : Section(2) End Address: 0x1C
<6>[ 1.706606] c0 [TSP ISC] MBin : Section(2) Compatibility: 0x45
<6>[ 1.706638] c0 [TSP ISC] MBin : Section(3) Version: 0x20
<6>[ 1.706667] c0 [TSP ISC] MBin : Section(3) Start Address: 0x1D
<6>[ 1.706699] c0 [TSP ISC] MBin : Section(3) End Address: 0x1E
<6>[ 1.706731] c0 [TSP ISC] MBin : Section(3) Compatibility: 0x45
<6>[ 1.706763] c0 [TSP ISC] [0] section will be updated!
<6>[ 1.706791] c0 [TSP ISC] [1] section will be updated!
<6>[ 1.706819] c0 [TSP ISC] [2] section will be updated!
<6>[ 1.706847] c0 [TSP ISC] [3] section will be updated!
<6>[ 1.706876] c0 [TSP ISC] [1] [1] [1]
<6>[ 1.706899] c0 [TSP ISC] section_update_flag(1), 0x02, 0x02
<6>[ 1.706931] c0 [TSP ISC] section_update_flag(2), 0x45, 0x45
<6>[ 1.706961] c0 [TSP ISC] mms100_enter_ISC_mode
<6>[ 1.760602] c0 [TSP ISC]End mms100_enter_config_update()
<6>[ 1.921755] c0 [TSP ISC]End mms100_ISC_clear_page()
<6>[ 2.082920] c0 [TSP ISC]End mms100_ISC_clear_page()
<6>[ 2.244077] c0 [TSP ISC]End mms100_ISC_clear_page()
<6>[ 2.244106] c0 [TSP ISC]mms100_update_section_data start
<6>[ 2.244135] c0 [TSP ISC] section data i2c flash : [1]
<6>[ 5.789598] c0 [TSP ISC] section data i2c flash : [2]
<6>[ 6.756397] c0 [TSP ISC] section data i2c flash : [3]
<6>[ 7.078709] c0 [TSP ISC]End mms100_update_section_data()
<6>[ 7.078740] c0 [TSP ISC]mms100_update_section_data end
<6>[ 7.078768] c0 [TSP ISC]FIRMWARE_UPDATE_FINISHED!!!
<7>[ 7.078800] c0 [TSP] melfas_power off
<7>[ 7.110077] c0 [TSP] melfas_power on
<3>[ 7.415219] c0 [TSP] mms100_ISC_download_mbinary success
<3>[ 7.415745] c0 [TSP] ISC Ver [0xbb] [0x20] [0x20]

Flash at your own risk!

kernel-i9300-FORCE_TS_FW_FLASH-DANGER-signed.zip - 5.31 MB

diff --git a/drivers/input/touchscreen/mms_ts.c b/drivers/input/touchscreen/mms_ts.c
index ebca68c..9358b1a 100644
--- a/drivers/input/touchscreen/mms_ts.c
+++ b/drivers/input/touchscreen/mms_ts.c
@@ -19,8 +19,8 @@
/*#define SEC_TSP_DEBUG*/
/* #define SEC_TSP_VERBOSE_DEBUG */

-/* #define FORCE_FW_FLASH */
-/* #define FORCE_FW_PASS */
+#define FORCE_FW_FLASH
+#define FORCE_FW_PASS
/* #define ESD_DEBUG */

#define SEC_TSP_FACTORY_TEST
@@ -974,11 +974,15 @@ static eISCRet_t mms100_compare_version_info(struct i2c_client *_client)

/* Check update areas , 0 : bootloader 1: core 2: private 3: public */
for (i = 0; i < SECTION_NUM; i++) {
+#ifndef FORCE_FW_PASS
if ((mbin_info[i].version == 0) ||
(mbin_info[i].version != ts_info[i].version)) {
+#endif
section_update_flag[i] = true;
pr_info("[TSP ISC] [%d] section will be updated!", i);
+#ifndef FORCE_FW_PASS
}
+#endif
}
section_update_flag[0] = false;
pr_info("[TSP ISC] [%d] [%d] [%d]", section_update_flag[1],
@@ -1889,6 +1893,7 @@ static int mms_ts_fw_load(struct mms_ts_info *info)
goto out;
}

+#ifndef FORCE_FW_FLASH
/* 4.8" OCTA LCD FW */
if (ver >= FW_VERSION_4_8 && ver != 0xFF\
&& ver != 0x00 && ver != 0x45) {
@@ -1896,6 +1901,7 @@ static int mms_ts_fw_load(struct mms_ts_info *info)
"4.8 fw version update does not need\n");
goto done;
}
+#endif

while (retries--) {
ret = mms100_ISC_download_mbinary(info);