From: Benson Leung <[email protected]>

The atmel_mxt_ts bootloader mode can support 400khz operation
successfully. Enable it for bootloader at address 0x25 on the
VGADDC adapter.

BUG=chrome-os-partner:9994
TEST=place valid atmel mxt firmware at /lib/firmware/maxtouch.fw
time echo 1 > update_fw
Check that firmware update succeeds, and that the time is less than 9s.
time echo 1 > update_fw

real    0m8.450s
user    0m0.001s
sys     0m0.100s

Change-Id: I52373189e051c265ce32a99cee8b139f51721b28
Signed-off-by: Benson Leung <[email protected]>
Reviewed-on: https://gerrit.chromium.org/gerrit/23760
Reviewed-by: Daniel Kurtz <[email protected]>
---
 drivers/gpu/drm/i915/intel_i2c.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/i915/intel_i2c.c b/drivers/gpu/drm/i915/intel_i2c.c
index 6d9364c..a18837f 100644
--- a/drivers/gpu/drm/i915/intel_i2c.c
+++ b/drivers/gpu/drm/i915/intel_i2c.c
@@ -346,10 +346,12 @@ gmbus_xfer(struct i2c_adapter *adapter,
        /* Hack to use 400kHz only for touch i2c devices on ddc ports */
        gmbus0 = bus->reg0;
        if (((gmbus0 & GMBUS_PORT_MASK) == GMBUS_PORT_VGADDC &&
-            (msgs[0].addr == 0x4b || msgs[0].addr == 0x67)) ||
+            (msgs[0].addr == 0x4b || msgs[0].addr == 0x67 ||
+             msgs[0].addr == 0x25)) ||
            ((gmbus0 & GMBUS_PORT_MASK) == GMBUS_PORT_PANEL &&
-            (msgs[0].addr == 0x4a || msgs[0].addr == 0x26)))
+            (msgs[0].addr == 0x4a || msgs[0].addr == 0x26))) {
                gmbus0 = (gmbus0 & ~GMBUS_RATE_MASK) | GMBUS_RATE_400KHZ;
+       }
        I915_WRITE(GMBUS0 + reg_offset, gmbus0);
 
        for (i = 0; i < num; i++) {
-- 
1.8.3.2

_______________________________________________
Intel-gfx mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to