STRUCT WILCO_EC_TELEM_REQUEST(9)
π NAME π
ok so struct wilco_ec_telem_request β it's literally the telemetry command plus its arguments, all bundled up and sent off to the EC. that's it, that's the whole vibe π«Ά
β¨ SYNOPSIS β¨
struct wilco_ec_telem_request {
u8 command;
u8 reserved;
union {
u8 buf[TELEM_ARGS_SIZE_MAX];
struct telem_args_get_log get_log;
struct telem_args_get_version get_version;
struct telem_args_get_fan_info get_fan_info;
struct telem_args_get_diag_info get_diag_info;
struct telem_args_get_temp_info get_temp_info;
struct telem_args_get_temp_read get_temp_read;
struct telem_args_get_batt_ext_info get_batt_ext_info;
struct telem_args_get_batt_ppid_info get_batt_ppid_info;
} args;
};
like, look at that union. it's giving "choose your fighter" energy π₯
π Members π
commandβ bestie this is the moment, it's one of theWILCO_EC_TELEM_GET_*command codes. pick your icon, pick your command πreservedβ must be 0. no cap, not 1, not "eh close enough," literally0. respect the reserved space πargsβ here's the cute part: the first N bytes are one of thetelem_args_get_*structs, and the rest is0. so it's a struct sandwich where the filling is whatever you asked for and the bread is zeroes π
π SEE ALSO π
the kernel file doing all the heavy lifting:
./drivers/platform/chrome/wilco_ec/telemetry.c
and the rest of the squad, go say hi π:
check_telem_request(9)struct telem_device_data(9)struct telem_session_data(9)telem_open(9)telem_device_free(9)telem_device_probe(9)
ok that's the whole page, go be iconic with your EC telemetry π
sign-off time π§ from ./drivers/platform/chrome/wilc..., dated October 2026, and the page itself is struct wilc...elem_request(9) β mwah, periodt ππ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms