diff options
author | YH Lin <yueherngl@chromium.org> | 2022-12-03 00:17:55 +0000 |
---|---|---|
committer | Chromeos LUCI <chromeos-scoped@luci-project-accounts.iam.gserviceaccount.com> | 2022-12-05 17:43:18 +0000 |
commit | dd732876495ed4942d00b9f9ca8dd3b01bad7120 (patch) | |
tree | bdff671e5ad3e71e30ab56f4f084f34a2fd72e28 /util/ectool.cc | |
parent | 184d13e77614be3be5374d3fef9d1edf66ec8687 (diff) | |
download | chrome-ec-factory-brya-14909.124.B-main.tar.gz |
Revert "Merge remote-tracking branch cros/main into factory-brya-14909.124.B-main"factory-brya-14909.124.B-main
This reverts commit 184d13e77614be3be5374d3fef9d1edf66ec8687.
Reason for revert: broken build due to ec-utils.
Original change's description:
> Merge remote-tracking branch cros/main into factory-brya-14909.124.B-main
>
> Generated by: util/update_release_branch.py --baseboard brya --relevant_paths_file
> baseboard/brya/relevant-paths.txt factory-brya-14909.124.B-main
>
> Relevant changes:
>
> git log --oneline 19d4d68ffa..aa40b859b3 -- baseboard/brya board/agah
> board/anahera board/banshee board/brya board/crota board/felwinter
> board/gimble board/kano board/mithrax board/osiris board/primus
> board/redrix board/taeko board/taniks board/vell board/volmar
> driver/bc12/pi3usb9201_public.* driver/charger/bq25710.*
> driver/ppc/nx20p348x.* driver/ppc/syv682x_public.*
> driver/retimer/bb_retimer_public.* driver/tcpm/nct38xx.*
> driver/tcpm/ps8xxx_public.* driver/tcpm/tcpci.* include/power/alderlake*
> include/intel_x86.h power/alderlake* power/intel_x86.c
> util/getversion.sh
>
> e6da633c38 driver: Sort header files
> 234a87ae2d tcpci: Add FRS enable to driver structure
> a56be59ccd tcpm_header: add test for tcpm_dump_registers
> 57b3256963 Rename CONFIG_CHARGER_INPUT_CURRENT to _CHARGER_DEFAULT_CURRENT_LIMIT
> e420c8ff9a marasov: Modify TypeC and TypeA configuration.
> 43b53e0045 Add default implementation of board_set_charge_limit
> b75dc90677 Add CONFIG_CHARGER_MIN_INPUT_CURRENT_LIMIT
> f1b563c350 baseboard: Sort header files
> 7d01b1e58d driver/retimer/ps8818.h: Add I2C ADDR FLAGS 0x30, 0x58, 0x70
> ec31407993 Add CONFIG_CHARGER_INPUT_CURRENT_DERATE_PCT
> 8f89f69a5b crota: disable lid angle sensor for clamshell
>
> BRANCH=None
> BUG=b:260630630 b:163093572 b:259002141 b:255184961 b:259354679
> BUG=b:247100970 b:254328661
> TEST=`emerge-brya chromeos-ec`
>
> Force-Relevant-Builds: all
> Change-Id: I0ecfa0e6af68631283c7a9e8f1afb9d827176c62
> Signed-off-by: YH Lin <yueherngl@google.com>
Bug: b:260630630 b:163093572 b:259002141 b:255184961 b:259354679
Bug: b:247100970 b:254328661
Change-Id: Ia14942d1bd6a502062399d77cb59d1f4b549b2c9
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/platform/ec/+/4077247
Auto-Submit: YH Lin <yueherngl@chromium.org>
Tested-by: YH Lin <yueherngl@chromium.org>
Reviewed-by: Boris Mittelberg <bmbm@google.com>
Commit-Queue: YH Lin <yueherngl@chromium.org>
Diffstat (limited to 'util/ectool.cc')
-rw-r--r-- | util/ectool.cc | 114 |
1 files changed, 30 insertions, 84 deletions
diff --git a/util/ectool.cc b/util/ectool.cc index fd27105d1f..61c0e85301 100644 --- a/util/ectool.cc +++ b/util/ectool.cc @@ -33,11 +33,8 @@ #include "lock/gec_lock.h" #include "misc_util.h" #include "panic.h" -#include "tablet_mode.h" #include "usb_pd.h" -#include <libec/add_entropy_command.h> - /* Maximum flash size (16 MB, conservative) */ #define MAX_FLASH_SIZE 0x1000000 @@ -316,8 +313,6 @@ const char help_str[] = " Display system info.\n" " switches\n" " Prints current EC switch positions\n" - " tabletmode [on | off | reset]\n" - " Manually force tablet mode to on, off or reset.\n" " temps <sensorid>\n" " Print temperature and temperature ratio between fan_off and\n" " fan_max values, which could be a fan speed if it's controlled\n" @@ -569,24 +564,39 @@ int cmd_adc_read(int argc, char *argv[]) int cmd_add_entropy(int argc, char *argv[]) { - bool reset = false; + struct ec_params_rollback_add_entropy p; + int rv; + int tries = 100; /* Wait for 10 seconds at most */ + if (argc >= 2 && !strcmp(argv[1], "reset")) - reset = true; + p.action = ADD_ENTROPY_RESET_ASYNC; + else + p.action = ADD_ENTROPY_ASYNC; - ec::AddEntropyCommand add_entropy_command(reset); - if (!add_entropy_command.Run(comm_get_fd())) { - fprintf(stderr, "Failed to run addentropy command\n"); - return -1; - } + rv = ec_command(EC_CMD_ADD_ENTROPY, 0, &p, sizeof(p), NULL, 0); - int rv = add_entropy_command.Result(); - if (rv != EC_RES_SUCCESS) { - rv = -EECRESULT - add_entropy_command.Result(); - fprintf(stderr, "Failed to add entropy: %d\n", rv); - return rv; + if (rv != EC_RES_SUCCESS) + goto out; + + while (tries--) { + usleep(100000); + + p.action = ADD_ENTROPY_GET_RESULT; + rv = ec_command(EC_CMD_ADD_ENTROPY, 0, &p, sizeof(p), NULL, 0); + + if (rv == EC_RES_SUCCESS) { + printf("Entropy added successfully\n"); + return EC_RES_SUCCESS; + } + + /* Abort if EC returns an error other than EC_RES_BUSY. */ + if (rv <= -EECRESULT && rv != -EECRESULT - EC_RES_BUSY) + goto out; } - printf("Entropy added successfully\n"); + rv = -EECRESULT - EC_RES_TIMEOUT; +out: + fprintf(stderr, "Failed to add entropy: %d\n", rv); return rv; } @@ -874,7 +884,7 @@ int cmd_test(int argc, char *argv[]) int cmd_s5(int argc, char *argv[]) { struct ec_params_get_set_value p; - struct ec_response_get_set_value r; + struct ec_params_get_set_value r; int rv, param; p.flags = 0; @@ -7261,37 +7271,6 @@ int cmd_switches(int argc, char *argv[]) return 0; } -int cmd_tabletmode(int argc, char *argv[]) -{ - struct ec_params_set_tablet_mode p; - - if (argc != 2) - return EC_ERROR_PARAM_COUNT; - - memset(&p, 0, sizeof(p)); - if (argv[1][0] == 'o' && argv[1][1] == 'n') { - p.tablet_mode = TABLET_MODE_FORCE_TABLET; - } else if (argv[1][0] == 'o' && argv[1][1] == 'f') { - p.tablet_mode = TABLET_MODE_FORCE_CLAMSHELL; - } else if (argv[1][0] == 'r') { - // Match tablet mode to the current HW orientation. - p.tablet_mode = TABLET_MODE_DEFAULT; - } else { - return EC_ERROR_PARAM1; - } - - int rv = ec_command(EC_CMD_SET_TABLET_MODE, 0, &p, sizeof(p), NULL, 0); - rv = (rv < 0 ? rv : 0); - - if (rv < 0) { - fprintf(stderr, "Failed to set tablet mode, rv=%d\n", rv); - } else { - printf("\n"); - printf("SUCCESS. The tablet mode has been set.\n"); - } - return rv; -} - int cmd_wireless(int argc, char *argv[]) { char *e; @@ -10170,10 +10149,7 @@ int cmd_typec_control(int argc, char *argv[]) " <mux_mode> is one of: dp, dock, usb, tbt,\n" " usb4, none, safe\n" " 5: Enable bist share mode\n" - " args: <0: DISABLE, 1: ENABLE>\n" - " 6: Send VDM REQ\n" - " args: <tx_type vdm_hdr [vdo...]>\n" - " <tx_type> is 0 - SOP, 1 - SOP', 2 - SOP''\n", + " args: <0: DISABLE, 1: ENABLE>\n", argv[0]); return -1; } @@ -10277,35 +10253,6 @@ int cmd_typec_control(int argc, char *argv[]) } p.bist_share_mode = conversion_result; break; - case TYPEC_CONTROL_COMMAND_SEND_VDM_REQ: - if (argc < 5) { - fprintf(stderr, "Missing VDM header and type\n"); - return -1; - } - if (argc > 4 + VDO_MAX_SIZE) { - fprintf(stderr, "Too many VDOs\n"); - return -1; - } - - conversion_result = strtol(argv[3], &endptr, 0); - if ((endptr && *endptr) || conversion_result > UINT8_MAX || - conversion_result < 0) { - fprintf(stderr, "Bad SOP* type\n"); - return -1; - } - p.vdm_req_params.partner_type = conversion_result; - - int vdm_index; - for (vdm_index = 0; vdm_index < argc - 4; vdm_index++) { - uint32_t vdm_entry = - strtoul(argv[vdm_index + 4], &endptr, 0); - if (endptr && *endptr) { - fprintf(stderr, "Bad VDO\n"); - return -1; - } - p.vdm_req_params.vdm_data[vdm_index] = vdm_entry; - } - p.vdm_req_params.vdm_data_objects = vdm_index; } rv = ec_command(EC_CMD_TYPEC_CONTROL, 0, &p, sizeof(p), ec_inbuf, @@ -11044,7 +10991,6 @@ const struct command commands[] = { { "sysinfo", cmd_sysinfo }, { "port80flood", cmd_port_80_flood }, { "switches", cmd_switches }, - { "tabletmode", cmd_tabletmode }, { "temps", cmd_temperature }, { "tempsinfo", cmd_temp_sensor_info }, { "test", cmd_test }, |