drivers/crypto/nx/nx_csbcpb.h

Source file repositories/reference/linux-study-clean/drivers/crypto/nx/nx_csbcpb.h

File Facts

System
Linux kernel
Corpus path
drivers/crypto/nx/nx_csbcpb.h
Extension
.h
Size
4223 bytes
Lines
207
Domain
Driver Families
Bucket
drivers/crypto
Inferred role
Driver Families: implementation source
Status
source implementation candidate

Why This File Exists

Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.

Dependency Surface

Detected Declarations

Annotated Snippet

struct cop_symcpb_aes_ecb {
	u8 key[32];
	u8 __rsvd[80];
} __packed;

struct cop_symcpb_aes_cbc {
	u8 iv[16];
	u8 key[32];
	u8 cv[16];
	u32 spbc;
	u8 __rsvd[44];
} __packed;

struct cop_symcpb_aes_gca {
	u8 in_pat[16];
	u8 key[32];
	u8 out_pat[16];
	u32 spbc;
	u8 __rsvd[44];
} __packed;

struct cop_symcpb_aes_gcm {
	u8 in_pat_or_aad[16];
	u8 iv_or_cnt[16];
	u64 bit_length_aad;
	u64 bit_length_data;
	u8 in_s0[16];
	u8 key[32];
	u8 __rsvd1[16];
	u8 out_pat_or_mac[16];
	u8 out_s0[16];
	u8 out_cnt[16];
	u32 spbc;
	u8 __rsvd2[12];
} __packed;

struct cop_symcpb_aes_ctr {
	u8 iv[16];
	u8 key[32];
	u8 cv[16];
	u32 spbc;
	u8 __rsvd2[44];
} __packed;

struct cop_symcpb_aes_cca {
	u8 b0[16];
	u8 b1[16];
	u8 key[16];
	u8 out_pat_or_b0[16];
	u32 spbc;
	u8 __rsvd[44];
} __packed;

struct cop_symcpb_aes_ccm {
	u8 in_pat_or_b0[16];
	u8 iv_or_ctr[16];
	u8 in_s0[16];
	u8 key[16];
	u8 __rsvd1[48];
	u8 out_pat_or_mac[16];
	u8 out_s0[16];
	u8 out_ctr[16];
	u32 spbc;
	u8 __rsvd2[12];
} __packed;

struct cop_symcpb_aes_xcbc {
	u8 cv[16];
	u8 key[16];
	u8 __rsvd1[16];
	u8 out_cv_mac[16];
	u32 spbc;
	u8 __rsvd2[44];
} __packed;

struct cop_symcpb_sha256 {
	u64 message_bit_length;
	u64 __rsvd1;
	u8 input_partial_digest[32];
	u8 message_digest[32];
	u32 spbc;
	u8 __rsvd2[44];
} __packed;

struct cop_symcpb_sha512 {
	u64 message_bit_length_hi;
	u64 message_bit_length_lo;
	u8 input_partial_digest[64];
	u8 __rsvd1[32];
	u8 message_digest[64];

Annotation

Implementation Notes