tpm_cr50_i2c_wait_tpm_ready(9)
π tpm_cr50_i2c_wait_tpm_ready(9) π
okay so bestie, welcome to the Kernel API Manual β¨ β this is the page for tpm_cr50_i2c_wait_tpm_ready, and honestly? it's giving "small function, big responsibility." let's get into it π«Ά
πΈ NAME πΈ
tpm_cr50_i2c_wait_tpm_ready β literally just wait for the tpm to signal ready, that's the whole vibe π
β¨ SYNOPSIS β¨
int tpm_cr50_i2c_wait_tpm_ready (struct tpm_chip *chip );
bestie it takes exactly one argument and returns an int, no cap π§
π ARGUMENTS π
chipβ a TPM chip. that's it. that's the argument. it's the chip we're waiting on π
π¦ DESCRIPTION π¦
okay so here's the tea β β this function waits for the completion interrupt if one is available. and if it's not available? no stress, it falls back to a fixed delay so the TPM has time to be ready. either way, we're waiting, we're slaying, we're moving on π β¨
π RETURN π
0β success π iconic, we love to see it-errnoβ a POSIX error code π so like, something went sideways, and the error is one of the POSIX ones
π SEE ALSO π
the kernel file lives at ./drivers/char/tpm/tpm_tis_i2c_cr50.c β and it's also friends with struct tpm_i2c_cr50_priv_data(9) π«Ά plus this whole squad:
tpm_cr50_i2c_int_handler(9)tpm_cr50_i2c_enable_tpm_irq(9)tpm_cr50_i2c_disable_tpm_irq(9)tpm_cr50_i2c_transfer_message(9)tpm_cr50_i2c_read(9)tpm_cr50_i2c_write(9)tpm_cr50_check_locality(9)tpm_cr50_release_locality(9)tpm_cr50_request_locality(9)tpm_cr50_i2c_tis_status(9)tpm_cr50_i2c_tis_set_ready(9)tpm_cr50_i2c_get_burst_and_status(9)tpm_cr50_i2c_tis_recv(9)tpm_cr50_i2c_tis_send(9)tpm_cr50_i2c_req_canceled(9)tpm_cr50_vid_to_name(9)tpm_cr50_i2c_probe(9)tpm_cr50_i2c_remove(9)
fr fr go read those too, they're all in the same friend group π
k bye bestie, this page came from ./drivers/char/tpm and it's dated October 2026 πΈ β and yes, the header said tpm_cr50_i2c_wait_tpm_ready(9) the whole time, we been knew πβ¨π¦
π¦ 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