SMx内核驱动开发笔记
- 背景
硬件背景
为SMx开发Linux驱动。
SMx为与ARMv8核心以AXI和AHB挂接的SoC内部模块,用于SM3/4加速。
SMx功能包括SM3,SM4-ECB/CBC/CTR/CFB/OFB/GCM计算。
含有内部自用DMA,以及与SPAcc相似的内部连线接口。
软件背景
目标系统Peta Linux, kernel 4.6, ......
SMx内核驱动开发笔记
- 背景
硬件背景
为SMx开发Linux驱动。
SMx为与ARMv8核心以AXI和AHB挂接的SoC内部模块,用于SM3/4加速。
SMx功能包括SM3,SM4-ECB/CBC/CTR/CFB/OFB/GCM计算。
含有内部自用DMA,以及与SPAcc相似的内部连线接口。
软件背景
目标系统Peta Linux, kernel 4.6, ......
由于内核驱动运行于内核空间,而Linux的crypto API本身并不推荐开放给用户空间调用,如果要测试该驱动,理论上的办法是在内核里再写一个模块,像kernel自带的tcrypt那样,insmod这个新模块,用类似modprobe tcrypt sec=1 mode=200的方式测试。然而这个方法对于需要大量调用固定测试向量的testbench非常不友好,于是还是寻求从用户空间自由自在编写测试框......
first linux kernel driver
Reference:
LED驱动/dev/led
preparation
get kernel version from uname -r.
find real KERNELDIR (in Makefile), for kernel module programming.
if /lib/module/build doesn&......