Platform: x86: chromeos_laptop - convert to i2c_driver to handle i915 race
Get series with b4
b4 am [email protected]Versions newest first
- v1 Latest1 patch 5 repliesIn review
Patches in v1 No applies recorded yet
| # | Subject and files | Size | Replies | Applied |
|---|---|---|---|---|
| 1/1 | Platform: x86: chromeos_laptop - convert to i2c_driver to handle i915 racedrivers/ | +194 | 0 replies |
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.
Cover letter [PATCH 0/1] Platform: x86: chromeos_laptop - convert to i2c_driver to handle i915 race
From: Martin Nordholts <[email protected]>
Hello,
I have looked into solving the "touchpad/touchscreen not working on boot"-problem on Chromebook Pixel, see for example Brock Tice's last comment on https://plus.google.com/+LinusTorvalds/posts/1iFsBWBqoYY
I have seen Olof's attempt at a fix:
[PATCH] Platform: x86: chromeos_laptop: defer probing if no i2c busses found
https://lkml.org/lkml/2013/4/18/556
At first, I tried Olofs suggestion at the end of the thread, namely to do bus_register_notifier() on i2c_bus_type, but it is a bit awkward:
How do you know that the i2c_adapter you are notified about is ready to be interacted with? While investigating this, I noticed that the i2c_driver has a .detect() mechanism, which is exactly what we need: A callback when a newly added i2c_adapter is initialized and ready to be used.
Since all chromeos_laptop does is to instantiate i2c devices, I figured it would be nice to simply convert chromeos_laptop into a i2c_driver. The result is the patch in the next mail (based on v3.11-rc1).
I have gone through the SubmitChecklist and done everything that applied. I have however only tested this patch on the Chromebook Pixel, as that is what I have. I will need help with verifying the patch on other Chromebooks.
But first, what do you think about my patch?
/ Martin
Martin Nordholts (1):
Platform: x86: chromeos_laptop - convert to i2c_driver to handle i915
race
drivers/platform/x86/chromeos_laptop.c | 426 +++++++++++++++----------------- 1 file changed, 194 insertions(+), 232 deletions(-)
Signature · 1 line
1.7.10.4