You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Looking at the definition on try_touchpad_verify, i see:
int try_touchpad_verify(int type, int pass, int sendcmd)
so sendcmd=0... This is passed to touchpad_verify() which only does the SetReport when sendcmd is nonzero -- at the moment the code is just reading back the status 100 times and I guess by luck one of those times getting the expected ICERASE_PASS=0xE2 value.
This seems to explain quite a few people having TP flash failures, with the 2nd step failing on Touchpad erase failed. If this analysis is correct, it should be a simple case of:
I'm reading the source code of the touchpad firmware, and noticed in
write_tp_fw
:Looking at the definition on try_touchpad_verify, i see:
so
sendcmd=0
... This is passed totouchpad_verify()
which only does the SetReport whensendcmd
is nonzero -- at the moment the code is just reading back the status 100 times and I guess by luck one of those times getting the expectedICERASE_PASS=0xE2
value.This seems to explain quite a few people having TP flash failures, with the 2nd step failing on
Touchpad erase failed
. If this analysis is correct, it should be a simple case of:...and I'd be happy to do a PR if that sounds acceptable. Not tested on actual hardware, as my PBP is waiting in customs.
Other people hitting this problem:
Richard.
The text was updated successfully, but these errors were encountered: