Files
OpenCellular/include
philipchen 4912f214aa i2c_passthru: fix virtual battery operation
In some cases, the virtual battery code creates
transactions that violate SB spec.

One example:
If the host command is structured as two messages -
a write to 0x03 (reg addr), followed by two bytes of write data,
the first byte of the second message (write data) will be sent to
virtual_battery_read(), as if it were a reg read request.

Let's do the following change for virtual battery:
1. Parse the command more carefully with state machines.
2. Support write caching for some critical registers.
3. Cache more attributes (0x03 and 0x0f).

BUG=chrome-os-partner:59239, chromium:659819
BRANCH=none
TEST='power_supply_info' works on kevin

Change-Id: Icdeb12b21f0dc3c329f29b206b7b9395ca4c9998
Reviewed-on: https://chromium-review.googlesource.com/407987
Commit-Ready: Philip Chen <philipchen@chromium.org>
Tested-by: Philip Chen <philipchen@chromium.org>
Reviewed-by: Shawn N <shawnn@chromium.org>
2016-12-14 06:03:14 -08:00
..
2016-05-26 16:17:26 -07:00
2013-12-17 21:27:53 +00:00
2016-11-15 17:41:53 -08:00
2015-11-08 07:59:40 -08:00
2016-12-13 23:49:39 -08:00
2015-06-18 19:07:00 +00:00
2015-06-18 19:07:00 +00:00
2015-07-27 22:19:16 +00:00
2014-02-08 00:14:48 +00:00
2013-10-25 20:12:49 +00:00
2015-06-10 18:24:05 +00:00
2015-05-27 03:58:16 +00:00
2016-04-27 14:04:07 -07:00
2015-05-27 03:58:16 +00:00
2016-09-07 14:01:18 -07:00
2013-06-26 09:08:23 -07:00
2011-12-07 19:10:02 +00:00
2016-11-08 17:11:28 -08:00
2012-10-25 14:12:11 -07:00
2015-10-07 17:51:36 -07:00
2016-07-29 10:51:22 -07:00
2015-06-18 19:07:00 +00:00
2016-12-05 16:43:18 -08:00
2015-06-18 19:07:00 +00:00
2015-06-18 19:07:00 +00:00
2012-08-09 17:40:37 -07:00
2016-11-15 17:41:53 -08:00
2015-12-21 14:58:54 -08:00
2016-11-28 20:55:02 -08:00
2016-11-08 17:11:28 -08:00
2016-07-11 21:27:46 -07:00
2015-09-16 14:49:46 -07:00
2015-06-18 19:07:00 +00:00
2016-11-02 17:39:56 -07:00
2015-01-20 20:56:43 +00:00