diff options
author | Daisuke Nojiri <dnojiri@chromium.org> | 2021-03-15 19:58:15 -0700 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2021-03-25 21:20:44 +0000 |
commit | b0833e615e36a8f25647ddb85a4c0cf2ab92bcc0 (patch) | |
tree | 3e53c5a1a92e62543703a7681c2e8da91eae1588 | |
parent | 8c1630fb33a2bc8a025370dbda2618c92f7e43b7 (diff) | |
download | chrome-ec-b0833e615e36a8f25647ddb85a4c0cf2ab92bcc0.tar.gz |
PCHG: Count number of dropped events per port
Currently, dropped events are counted for all ports combined. This
patch makes them counted for each port separately.
BUG=b:173235954,b:183151376
BRANCH=trogdor
TEST=Verify 'pchg 0' prints dropped event count.
Signed-off-by: Daisuke Nojiri <dnojiri@chromium.org>
Change-Id: I09380927613defe34bef0fece022fc9d47ebb8a1
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2770502
(cherry picked from commit 4126a065489fe40668186c5f5b4dee4797388b25)
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2787474
-rw-r--r-- | common/peripheral_charger.c | 6 | ||||
-rw-r--r-- | include/peripheral_charger.h | 2 |
2 files changed, 5 insertions, 3 deletions
diff --git a/common/peripheral_charger.c b/common/peripheral_charger.c index c7371c5dc5..3c11c68be1 100644 --- a/common/peripheral_charger.c +++ b/common/peripheral_charger.c @@ -20,13 +20,11 @@ #define CPRINTS(fmt, args...) cprints(CC_PCHG, "PCHG: " fmt, ##args) -static int dropped_event; - static void pchg_queue_event(struct pchg *ctx, enum pchg_event event) { mutex_lock(&ctx->mtx); if (queue_add_unit(&ctx->events, &event) == 0) { - dropped_event++; + ctx->dropped_event_count++; CPRINTS("ERR: Queue is full"); } mutex_unlock(&ctx->mtx); @@ -487,6 +485,8 @@ static int cc_pchg(int argc, char **argv) ccprintf("P%d STATE_%s EVENT_%s SOC=%d%%\n", port, _text_state(ctx->state), _text_event(ctx->event), ctx->battery_percent); + ccprintf("error=0x%x dropped=%u\n", + ctx->error, ctx->dropped_event_count); return EC_SUCCESS; } diff --git a/include/peripheral_charger.h b/include/peripheral_charger.h index b3d19edc52..a53fbb9104 100644 --- a/include/peripheral_charger.h +++ b/include/peripheral_charger.h @@ -138,6 +138,8 @@ struct pchg { uint32_t error; /* Battery percentage (0% ~ 100%) of the connected peripheral device */ uint8_t battery_percent; + /* Number of dropped events (due to queue overflow) */ + uint32_t dropped_event_count; }; /** |