STRUCT MV_CESA_AHASH_REQ(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’– struct mv_cesa_ahash_req(9) β€” hash request, but make it iconic πŸ’–

okay bestie, so this is from the Kernel API Manual, and it's literally the struct that holds everything about a hash request for the Marvell CESA crypto driver. it's giving main character energy in drivers/crypto/marvell/cesa/cesa.h, no cap. let's get into it 🫢

✨ SYNOPSIS ✨

struct mv_cesa_ahash_req {
    struct mv_cesa_req base;
    union {
      struct mv_cesa_ahash_dma_req dma;
      struct mv_cesa_ahash_std_req std;
    } req;
    struct mv_cesa_op_ctx op_tmpl;
    u8 cache[CESA_MAX_HASH_BLOCK_SIZE];
    unsigned int cache_ptr;
    u64 len;
    int src_nents;
    bool last_req;
    bool algo_le;
    u32 state[8];
 };

like, look at all those fields. she's got range. πŸ’…


🌸 Members 🌸

  • req β€” the type specific request info, aka where the DMA version and the std version live together in a union, living their best messy lives πŸ¦‹
  • cache β€” the cache buffer, just vibing and holding bytes
  • cache_ptr β€” the write pointer in the cache buffer, so we know exactly where we're at, periodt
  • len β€” the hash total length, the big picture number, the moment
  • src_nents β€” the number of entries in the scatterlist, aka how many little pieces the source is scattered into (iykyk)
  • last_req β€” defines whether the current operation is the last one or not. literally the "is this the finale or not" flag πŸ‘‘
  • state β€” the hash state, the ~inner workings~, the vibe check of the whole operation 🌈

πŸŽ€ SEE ALSO πŸŽ€

so there's a whole friend group here, and you need to know all of them. the kernel file is ./drivers/crypto/marvell/cesa/cesa.h and here's the squad, all these structs and the enum:

  • struct mv_cesa_sec_accel_desc(9)
  • struct mv_cesa_skcipher_op_ctx(9)
  • struct mv_cesa_hash_op_ctx(9)
  • struct mv_cesa_op_ctx(9)
  • struct mv_cesa_tdma_desc(9)
  • struct mv_cesa_sg_dma_iter(9)
  • struct mv_cesa_dma_iter(9)
  • struct mv_cesa_tdma_chain(9)
  • struct mv_cesa_caps(9)
  • struct mv_cesa_dev_dma(9)
  • struct mv_cesa_engine(9)
  • struct mv_cesa_dev(9)
  • struct mv_cesa_req_ops(9)
  • struct mv_cesa_ctx(9)
  • struct mv_cesa_hash_ctx(9)
  • enum mv_cesa_req_type(9)
  • struct mv_cesa_req(9)
  • struct mv_cesa_sg_std_iter(9)
  • struct mv_cesa_skcipher_std_req(9)
  • struct mv_cesa_skcipher_req(9)
  • struct mv_cesa_ahash_std_req(9)
  • struct mv_cesa_ahash_dma_req(9)

like, that's the whole crew. read them, love them, know them 🧚


and that's the tea, bestie β˜• this page is from ./drivers/crypto/marvell/cesa, dated October 2026, and it's struct mv_cesa_ahash_req(9) β€” slay, ate, no crumbs, periodt πŸ’œβœ¨

πŸ“¦ where this page comes from