STRUCT QCE_ALGO_OPS(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… struct qce_algo_ops β€” kernel API manual, section 9, bestie

okay so picture this: you're deep in the kernel, specifically chilling in the Qualcomm Crypto Engine, and you need a little struct that holds the algorithm operations for each crypto type. that's it, that's the whole vibe of struct qce_algo_ops. it's giving "little dispatch table with main character energy." πŸŽ€


✨ NAME ✨

struct qce_algo_ops β€” algorithm operations per crypto type. literally what it says on the tin, no cap. 🫢


🌸 SYNOPSIS 🌸

here's the whole struct, verbatim, don't touch a single character of it:

struct qce_algo_ops {
    u32 type;
    int (*register_algs)(struct qce_device *qce);
    void (*unregister_algs)(struct qce_device *qce);
    int (*async_req_handle)(struct crypto_async_request *async_req);
 };

look at those function pointers. so organized. so iconic. πŸ‘‘


πŸ¦‹ Members πŸ¦‹

okay bestie let's go through the squad one by one:

  • type β€” should be CRYPTO_ALG_TYPE_XXX. yes, that's the literal note in the docs. it's the crypto type tag, iykyk. 🏷️
  • register_algs β€” int (*register_algs)(struct qce_device *qce); β€” the core invokes this one to register the algorithms. it's the "hey come join the party" function. ✨
  • unregister_algs β€” void (*unregister_algs)(struct qce_device *qce); β€” the core invokes this one to unregister the algorithms. the "okay party's over, everybody out" function. 😭
  • async_req_handle β€” int (*async_req_handle)(struct crypto_async_request *async_req); β€” the core invokes this one to handle an enqueued request. this is the worker bee of the group, fr fr. πŸ”₯
ngl these all say "invoked by core" β€” that's the kernel core calling in, not you. respect the hierarchy bestie. πŸ’…

🌈 SEE ALSO 🌈

  • Kernel file ./drivers/crypto/qce/core.h
  • struct qce_device(9)

and that's the whole page, no crumbs left behind πŸ“ β€” this one's straight out of ./drivers/crypto/qce, dated October 2026, and it's filed under struct qce_algo_ops(9) in the Kernel API Manual. slay, go register some algorithms, periodt. πŸ’–πŸ§šπŸ’œ

πŸ“¦ where this page comes from