STRUCT DTHE_TFM_CTX(9)
π NAME
okay so bestie, gather round β struct dthe_tfm_ctx is the transform ctx struct, and it's literally the main character because it holds the ctx for every single sub-component of DTHE V2. one struct to hold them all, iykyk π«Ά
β¨ SYNOPSIS
here's the whole vibe, verbatim, no cap:
struct dthe_tfm_ctx {
struct dthe_data *dev_data;
unsigned int keylen;
unsigned int authsize;
u32 key[DTHE_MAX_KEYSIZE / sizeof(u32)];
enum dthe_aes_mode aes_mode;
union {
struct crypto_sync_aead *aead_fb;
struct crypto_sync_skcipher *skcipher_fb;
};
};
πΈ MEMBERS
like, every field explained, and yes we're doing all of them π
dev_dataβ pointer to the device data struct. that's it, that's the field πkeylenβ the AES key length. how long the key is, fr fr.authsizeβ the authentication size, but only for the modes that actually have authentication. it's giving "conditional queen" β¨keyβ the AES key itself. the whole point, lowkey. πaes_modeβ the AES mode. which mode we're in, bestie.{unnamed_union}β an anonymous union. no name, no problem πaead_fbβ fallback crypto aead handle. it's the backup plan, but make it cryptographic π¦skcipher_fbβ fallback crypto skcipher handle for AES-XTS mode specifically. so if you're in AES-XTS, this is your girl π
ngl, the union meansaead_fbandskcipher_fbshare the same space β one or the other, never both at once. that's the whole point of a union, periodt.
π¦ SEE ALSO
go read these too, bestie, they're all in the kernel file ./drivers/crypto/ti/dthev2-common.h:
struct dthe_data(9)struct dthe_list(9)struct dthe_aes_req_ctx(9)dthe_copy_sg(9)
and that's the tea β β this lil page lives at ./drivers/crypto/ti, dated October 2026, and it's all about struct dthe_tfm_ctx(9). slay, go forth and transform those crypto requests πβ¨
π¦ 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