arch/powerpc/crypto/aes-spe-glue.c
Source file repositories/reference/linux-study-clean/arch/powerpc/crypto/aes-spe-glue.c
File Facts
- System
- Linux kernel
- Corpus path
arch/powerpc/crypto/aes-spe-glue.c- Extension
.c- Size
- 11766 bytes
- Lines
- 446
- Domain
- Architecture Layer
- Bucket
- arch/powerpc
- Inferred role
- Architecture Layer: exported/initcall integration point
- Status
- integration implementation candidate
Why This File Exists
CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.
- CPU and platform-specific kernel glue: boot entry, traps, syscall entry, interrupts, page tables, context switch, and low-level barriers.
- Exports symbols or registers init work; inspect boot/module ordering and who consumes the exported contract.
- Allocates kernel memory; connect allocation flags and lifetime to context constraints.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
crypto/aes.hlinux/minmax.hlinux/module.hlinux/init.hlinux/types.hlinux/errno.hlinux/crypto.hasm/byteorder.hasm/switch_to.hcrypto/algapi.hcrypto/internal/skcipher.hcrypto/xts.hcrypto/gf128mul.hcrypto/scatterwalk.h
Detected Declarations
struct ppc_aes_ctxstruct ppc_xts_ctxfunction spe_beginfunction spe_endfunction ppc_aes_setkey_skcipherfunction ppc_xts_setkeyfunction ppc_ecb_cryptfunction ppc_ecb_encryptfunction ppc_ecb_decryptfunction ppc_cbc_cryptfunction ppc_cbc_encryptfunction ppc_cbc_decryptfunction ppc_ctr_cryptfunction ppc_xts_cryptfunction ppc_xts_encryptfunction ppc_xts_decryptfunction ppc_aes_mod_initfunction ppc_aes_mod_finimodule init ppc_aes_mod_init
Annotated Snippet
module_init(ppc_aes_mod_init);
module_exit(ppc_aes_mod_fini);
MODULE_LICENSE("GPL");
MODULE_DESCRIPTION("AES-ECB/CBC/CTR/XTS, SPE optimized");
MODULE_ALIAS_CRYPTO("aes");
MODULE_ALIAS_CRYPTO("ecb(aes)");
MODULE_ALIAS_CRYPTO("cbc(aes)");
MODULE_ALIAS_CRYPTO("ctr(aes)");
MODULE_ALIAS_CRYPTO("xts(aes)");
MODULE_ALIAS_CRYPTO("aes-ppc-spe");
Annotation
- Immediate include surface: `crypto/aes.h`, `linux/minmax.h`, `linux/module.h`, `linux/init.h`, `linux/types.h`, `linux/errno.h`, `linux/crypto.h`, `asm/byteorder.h`.
- Detected declarations: `struct ppc_aes_ctx`, `struct ppc_xts_ctx`, `function spe_begin`, `function spe_end`, `function ppc_aes_setkey_skcipher`, `function ppc_xts_setkey`, `function ppc_ecb_crypt`, `function ppc_ecb_encrypt`, `function ppc_ecb_decrypt`, `function ppc_cbc_crypt`.
- Atlas domain: Architecture Layer / arch/powerpc.
- Implementation status: integration implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.