STRUCT CCP_PASSTHRU_NOMAP_ENGINE(9)

πŸ“¦ version 7.3.1, in nixpkgs unstable

πŸ’… NAME πŸ’…

struct ccp_passthru_nomap_engine β€” bestie, this is the CCP pass-through operation that does its thing without performing DMA mapping ✨

(also hey, this is section 9 of the Kernel API Manual, in case you were wondering where you wandered into πŸŽ€)


πŸ¦‹ SYNOPSIS πŸ¦‹

struct ccp_passthru_nomap_engine {
    enum ccp_passthru_bitwise bit_mod;
    enum ccp_passthru_byteswap byte_swap;
    dma_addr_t mask;
    u32 mask_len;
    dma_addr_t src_dma, dst_dma;
    u64 src_len;
    u32 final;
 };

Like, that's the whole vibe right there πŸ‘‘ no cap.


🌸 Members 🌸

  • bit_mod β€” the bitwise operation you're gonna perform, periodt
  • byte_swap β€” the byteswap operation you're gonna perform, also periodt
  • mask β€” the mask to be applied to the data πŸŽ€
  • mask_len β€” length in bytes of mask
  • src_len β€” length in bytes of the data used for this operation
  • final β€” indicate final pass-through operation 🏁
lowkey notice how src_dma and dst_dma are chillin' in the struct but not described up here? yeah. not me pointing that out. anyway πŸ’€

✨ Description ✨

Okay so these are the variables you literally must have set when you call ccp_enqueue_cmd β€” no skipping, bestie, it's giving non-negotiable:

  • bit_mod, byte_swap, src, dst, src_len
  • mask, mask_len β€” but only if bit_mod is not CCP_PASSTHRU_BITWISE_NOOP πŸ‘€
🫢 highkey important: that second bullet is conditional. if bit_mod is CCP_PASSTHRU_BITWISE_NOOP, you don't need the mask stuff. iykyk.

πŸ”₯ SEE ALSO πŸ”₯

Kernel file ./include/linux/ccp.h β€” and honestly the whole friend group:

ccp_present(9), ccp_version(9), ccp_enqueue_cmd(9), struct ccp_aes_engine(9), struct ccp_xts_aes_engine(9), struct ccp_sha_engine(9), struct ccp_des3_engine(9), struct ccp_rsa_engine(9), struct ccp_passthru_engine(9), struct ccp_ecc_modular_math(9), struct ccp_ecc_point(9), struct ccp_ecc_point_math(9), struct ccp_ecc_engine(9), struct ccp_cmd(9)

like, go read them, they're all iconic πŸ’œ


okay bye bestie 🧚✨ this lil page came from ./include/linux, stamped October 2026, and it lives in section 9 of the Kernel API Manual as struct ccp_p...nomap_engine(9) β€” slay, go map some DMA (except, y'know, not in this one πŸ™ˆ) πŸ“πŸ’–

πŸ“¦ where this page comes from