STRUCT OPTEE_MSG_ARG(9)
β¨ struct optee_msg_arg β call argument β¨
okay so bestie, welcome to the struct optee_msg_arg(9) page from the Kernel API Manual β yes we're in kernel land today and honestly? it's giving main character energy π«Ά this one's short and sweet, so let's go π
πΈ NAME πΈ
struct optee_msg_arg β literally the call argument. that's it. that's the vibe π
π¦ SYNOPSIS π¦
struct optee_msg_arg {
u32 cmd;
u32 func;
u32 session;
u32 cancel_id;
u32 pad;
u32 ret;
u32 ret_origin;
u32 num_params;
struct optee_msg_param params[];
};
look at her. flawless. no notes. π₯
π Members π
cmdβ the command, bestie. it's one ofOPTEE_MSG_CMD_*orOPTEE_MSG_RPC_CMD_*β¨funcβ the Trusted Application function, and it's specific to the Trusted Application, iykyk. only used whencmd == OPTEE_MSG_CMD_INVOKE_COMMANDπsessionβ lowkey the plot twist of this struct: it's an in parameter for allOPTEE_MSG_CMD_*β¦ except forOPTEE_MSG_CMD_OPEN_SESSION, where it's an output parameter instead πcancel_idβ the cancellation id, a unique value that identifies this request π―padβ padding for alignment. she's just here for the vibes, keeping things lined up πretβ return value πret_originβ the origin of the return value πnum_paramsβ number of parameters supplied to the OS Command βparamsβ the actual parameters supplied to the OS Command, a whole array of them π
π Description π
okay so real talk: all normal calls to Trusted OS use this struct, fr fr. periodt. π§
if cmd needs more info than what these fields can hold, you can pass it as a parameter tagged as meta β that's you setting the OPTEE_MSG_ATTR_META bit in the corresponding attrs field π₯
β οΈ but heads up bestie: all parameters tagged as meta have to come first. no cap. that's the rule and we respect her π
π SEE ALSO π
- Kernel file
./drivers/tee/optee/optee_msg.hstruct optee_msg_param_tmem(9)struct optee_msg_param_rmem(9)struct optee_msg_param_fmem(9)struct optee_msg_param_value(9)struct optee_msg_param(9)OPTEE_MSG_GET_ARG_SIZE(9)
and that's the page, gorgeous π
huge shoutout to ./drivers/tee/optee for hosting this icon, October 2026 for the date stamp, all under the Kernel API Manual banner πΈ now go forth and slay your TEE calls, bestie β you got this π«Άβ¨
π¦ 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