diff options
author | Eric Yilun Lin <yllin@chromium.org> | 2020-02-14 10:05:55 +0800 |
---|---|---|
committer | Commit Bot <commit-bot@chromium.org> | 2020-02-24 06:17:57 +0000 |
commit | fc75d9a817df0fcb8f9a878828a146ef1553f18f (patch) | |
tree | 763813f20e13a25ecd961479107d1147dd5abef1 /board/servo_v4 | |
parent | 0792aa6f5cf35f9e3fc1de37f8f4d28de71e2b34 (diff) | |
download | chrome-ec-fc75d9a817df0fcb8f9a878828a146ef1553f18f.tar.gz |
servo_v4: add command ada_srccaps to list adapter's SrcCap
Add the command for a new servod control.
FAFT tests can be aware of the capability of the adapter on servo_v4.
BUG=b:140256624
BRANCH=servo_v4
TEST=ensure the command print all the SrcCap
> ada_srccaps
0: 5000mV/3000mA
1: 9000mV/3000mA
2: 10000mV/3000mA
3: 12000mV/3000mA
4: 15000mV/3000mA
5: 20000mV/3000mA
Change-Id: I5d08240f87838267464a38fa09ab2ee59c7d4edf
Signed-off-by: Eric Yilun Lin <yllin@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/2055267
Reviewed-by: Jett Rink <jettrink@chromium.org>
Reviewed-by: Wai-Hong Tam <waihong@google.com>
Diffstat (limited to 'board/servo_v4')
-rw-r--r-- | board/servo_v4/usb_pd_policy.c | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/board/servo_v4/usb_pd_policy.c b/board/servo_v4/usb_pd_policy.c index 484ab96df0..1759d18b54 100644 --- a/board/servo_v4/usb_pd_policy.c +++ b/board/servo_v4/usb_pd_policy.c @@ -965,6 +965,24 @@ static int cmd_fake_disconnect(int argc, char *argv[]) DECLARE_CONSOLE_COMMAND(fakedisconnect, cmd_fake_disconnect, "<delay_ms> <duration_ms>", NULL); +static int cmd_ada_srccaps(int argc, char *argv[]) +{ + int i; + const uint32_t * const ada_srccaps = pd_get_src_caps(CHG); + + for (i = 0; i < pd_get_src_cap_cnt(CHG); ++i) { + uint32_t max_ma, max_mv; + + pd_extract_pdo_power(ada_srccaps[i], &max_ma, &max_mv); + ccprintf("%d: %dmV/%dmA\n", i, max_mv, max_ma); + } + + return EC_SUCCESS; +} +DECLARE_CONSOLE_COMMAND(ada_srccaps, cmd_ada_srccaps, + "", + "Print adapter SrcCap"); + static int cmd_usbc_action(int argc, char *argv[]) { if (argc != 2 && argc != 3) |