[Samsung Galaxy J7 (2017) Questions & Answers] Feandil:
As many around, the touch screen of my J7 Pro (SM-J730GM/DS) stopped working after the Oreo Update.

After some debugging, I believe I now understand why: a non OEM screen assembly.

Here is what I did and what I found:

- As the screen was not working, I used an USB On The Go adapter to connect an external mouse to get to the phone

- After getting into the phone, I connected a Bluetooth mouse & keyboard, to keep access to the phone without anything on the USB

- Using them, I enabled debugging and connected a computer with adb, getting a shell (non root)

- Looking around, I finally found some interesting logs in `/data/log/prev_dump.log` (repeating lines replaces with [...]):

<3>[ 1.257220] [5: swapper/0: 1] mms_ts 10-0048: mms_probe [START]

<6>[ 1.257256] [5: swapper/0: 1] mms_ts 10-0048: mms_parse_devicetree [START]

<3>[ 1.257346] [5: swapper/0: 1] mms_ts 10-0048: Failed to get regulator_avdd name property

<3>[ 1.257373] [5: swapper/0: 1] mms_ts 10-0048: Failed to get factory_item_version property

<6>[ 1.257400] [5: swapper/0: 1] mms_ts 10-0048: mms_parse_devicetree: fw_name tsp_melfas/mms438_j7y17.fw max_x:1080 max_y:1920 int:15 irq:9 sda:79 scl:80 support_LPM:1

<6>[ 1.257778] [5: swapper/0: 1] mms_ts 10-0048: mms_power_control [START on]

<6>[ 1.316892] [0: swapper/0: 1] mms_ts 10-0048: mms_power_control [DONE on]

<6>[ 1.316918] [0: swapper/0: 1] mms_ts 10-0048: mms_fw_update_from_kernel [START]

<6>[ 1.317383] [0: swapper/0: 1] mms_ts 10-0048: mms_get_fw_version: boot:0.0 core:0.0 custom:0.0 parameter:0.0

<6>[ 1.317413] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Chip firmware version [0x0000 0x0000 0x0000 0x0000]

<6>[ 1.317441] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Firmware file info : Sections[4] Offset[0x00000060] Length[0x0000C000]

<3>[ 1.317475] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[0] IC: 0000 / BIN: EEEE

<6>[ 1.317499] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[0] is need to be updated.

<3>[ 1.317531] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[1] IC: 0000 / BIN: 0601

<6>[ 1.317555] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[1] is need to be updated.

<3>[ 1.317587] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[2] IC: 0000 / BIN: 0119

<6>[ 1.317611] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[2] is need to be updated.

<3>[ 1.317643] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[3] IC: 0000 / BIN: 0119

<6>[ 1.317667] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[3] is need to be updated.

<6>[ 1.317768] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Erase first page : Offset[0x0000]

<3>[ 1.318341] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[...]

<3>[ 3.297180] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 3.316884] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 3.317454] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[...]

<3>[ 5.297178] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 5.316883] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 5.317447] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[...]

<3>[ 7.297178] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 7.316883] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 7.316909] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw [ERROR] clear first page failed

<3>[ 7.316931] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw [ERROR]

<6>[ 7.317360] [0: swapper/0: 1] mms_ts 10-0048: mms_get_fw_version: boot:ee.ee core:6.1 custom:1.22 parameter:1.16

<6>[ 7.317391] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Chip firmware version [0xEEEE 0x0601 0x0116 0x0116]

<6>[ 7.317418] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Firmware file info : Sections[4] Offset[0x00000060] Length[0x0000C000]

<3>[ 7.317453] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[0] IC: EEEE / BIN: EEEE

<3>[ 7.317486] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[1] IC: 0601 / BIN: 0601

<3>[ 7.317519] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[2] IC: 0116 / BIN: 0119

<6>[ 7.317543] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[2] is need to be updated.

<3>[ 7.317575] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[3] IC: 0116 / BIN: 0119

<6>[ 7.317599] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[3] is need to be updated.

<6>[ 7.317689] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Erase first page : Offset[0x0000]

<3>[ 7.318254] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[...]

<3>[ 9.297180] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 9.316886] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 9.317456] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[...]

<3>[ 11.297177] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 11.316883] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 11.317448] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[...]

<3>[ 13.297178] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 13.316882] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 13.316908] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw [ERROR] clear first page failed

<3>[ 13.316931] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw [ERROR]

<6>[ 13.317354] [0: swapper/0: 1] mms_ts 10-0048: mms_get_fw_version: boot:ee.ee core:6.1 custom:1.22 parameter:1.16

<6>[ 13.317385] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Chip firmware version [0xEEEE 0x0601 0x0116 0x0116]

<6>[ 13.317412] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Firmware file info : Sections[4] Offset[0x00000060] Length[0x0000C000]

<3>[ 13.317447] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[0] IC: EEEE / BIN: EEEE

<3>[ 13.317480] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[1] IC: 0601 / BIN: 0601

<3>[ 13.317513] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[2] IC: 0116 / BIN: 0119

<6>[ 13.317538] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[2] is need to be updated.

<3>[ 13.317570] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[3] IC: 0116 / BIN: 0119

<6>[ 13.317594] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Section[3] is need to be updated.

<6>[ 13.317659] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw - Erase first page : Offset[0x0000]

<3>[ 13.318222] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[...]

<3>[ 15.297180] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 15.316883] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 15.317453] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[...]

<3>[ 17.297179] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 17.316882] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 17.317447] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

[....]

<3>[ 19.297177] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] wrong value [0x00]

<3>[ 19.316882] [0: swapper/0: 1] mms_ts 10-0048: mms_isc_read_status [ERROR] count overflow - cnt [0] status [0x00]

<3>[ 19.316908] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw [ERROR] clear first page failed

<3>[ 19.316931] [0: swapper/0: 1] mms_ts 10-0048: mms_flash_fw [ERROR]

<3>[ 19.316961] [0: swapper/0: 1] mms_ts 10-0048: mms_fw_update_from_kernel [ERROR] mms_flash_fw failed

<3>[ 19.316986] [0: swapper/0: 1] mms_ts 10-0048: mms_fw_update_from_kernel [ERROR]

<3>[ 19.317009] [0: swapper/0: 1] mms_ts 10-0048: mms_probe [ERROR] mms_fw_update_from_kernel

<6>[ 19.317033] [0: swapper/0: 1] mms_ts 10-0048: mms_power_control [START off]

<6>[ 19.328405] [0: swapper/0: 1] mms_ts 10-0048: mms_power_control [DONE off]

<4>[ 19.377034] [5: swapper/0: 1] mms_ts: probe of 10-0048 failed with error -1

It seems to me that the Oreo update contained a firmware update for the touch screen controller (mms_ts).

It seems that my controller, coming from a cheap TFT screen assembly from China does not support this update...

If anyone is interesting in getting mode information on this, let me know and I'll try to see if I can get it.

Please note that I'm not looking for a tutorial for how to flash my phone, this is not the topic of this thread.

I didn't find any resource on the root cause of the issue, so here I am, trying to understanding the problem (and maybe push back the knowledge to the cheap screen assembly manufacturer so that they fix their chip).

So please do not answer with "here is my fix, flash it with WYZ", but if you have any idea about that mms_ts firmware update, be my guest!