charge_state_v2: ignore false battery SOC readings
charge_state_v2: ignore false battery SOC readings

Ignore battery readings over 100%. This fixes a samus bug
where a false battery SOC reading causes charging to
stop.

BUG=chrome-os-partner:36115, chrome-os-partner:36081
BRANCH=samus
TEST=add following code to common/smart.c:

static int reset_soc;

in battery_get_params():
if (reset_soc) {
        batt_new.state_of_charge = 65535;
        reset_soc = 0;
}

after battery_get_params():
static int command_battsoc(int argc, char **argv)
{
       reset_soc = 1;
       return EC_SUCCESS;
}
DECLARE_CONSOLE_COMMAND(battsoc, command_battsoc,
                       "",
                       "",
                       NULL);

This changes the battery state of charge to 65535% for one
loop through charge state machine. w/o this CL, on samus the
battery stops charging when you call this, but with this CL
it is fixed.

Change-Id: I44f054a4e84260bd7cd7b77e44b1698645ab6c35
Signed-off-by: Alec Berg <1a4429eeda29095a12e19a73405f80f5b7f37a63@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/244346
Reviewed-by: Shawn N <5259333ce42e3ace6a73988cec7115ed9d3a661a@chromium.org>
Signed-off-by: Alec Berg <1a4429eeda29095a12e19a73405f80f5b7f37a63@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/245751

thehobn/ec,thehobn/ec,thehobn/ec,thehobn/ec