Ticket #12327 (closed defect: fixed)
Touchscreen Firmware reprogramming so slow as to appear hung
| Reported by: | wad | Owned by: | Quozl |
|---|---|---|---|
| Priority: | high | Milestone: | 4-firmware |
| Component: | touchscreen | Version: | Development build as of this date |
| Keywords: | XO-4, touchscreen | Cc: | wad |
| Action Needed: | no action | Verified: | no |
| Deployments affected: | Blocked By: | ||
| Blocking: |
Description
On one XO-4 C1 laptop only (so far), the touchscreen firmware auto-upgrade process is INCREDIBLY slow. It is so slow that it only draws one dot on the screen per minute. On the serial console, it is more like one dot every five seconds, although sometimes there are bursts of two or three dots printed.
One time, it was slow for the first few writes, then ran at full speed for the rest of the programming.
If the slow programming is allowed to complete, the MSP430 has been reprogrammed correctly.
Other C1 laptops tested so far don't show this problem. This is a 1.2 GHz SKU.
This was tested with both q7b05, q7b07 and q7b07ja, with both 0.6 and 0.5 neonode software preprogrammed into the MSP430.
Manually running flash-nn, $flash-bsl, or update-nn-flash works fine, at full speed. The touchscreen tests seem to run fine on this laptop.
I have seen update-nn-flash return a prompt imediately, with no error messages, but typing flash-nn rom:\nn.hex right afterwards worked fine.
The timing relative to boot is critical. If I delay the boot process by dropping into CForth then typing ofw, the programming is just as slow. If I delay the boot process by dropping into CForth then typing ofw while holding down the rotate key, then type resume after a few seconds, the reprogramming runs at full speed but always reboots the laptop immediately after completing (before returning an ok prompt, by jumping to a reset vector --- the EC is not involved in the reset).
Looking at the async. serial BSL signals between the SoC and the MSP430, the waveforms are nice and clean and running at the right voltages.


