This AES Engine is available in the Mediatek MT76x8 SoC.
It enables hardware crypto for AES-ECB and AES-CBC with 128/192/256 keysize.
This should be added to your device DTS or better yet to the mt76x8.dtsi:
crypto: crypto@10004000 {
compatible = "mediatek,mtk-aes";
reg = <0x10004000 0x1000>;
interrupt-parent = <&intc>;
interrupts = <13>;
resets = <&rstctrl 29>;
reset-names = "cryp";
clocks = <&clkctrl 29>;
clock-names = "cryp";
};
Benchmark: By default crypto-blocks <100 bytes are software only
You have chosen to measure elapsed time instead of user CPU time.
Doing aes-256-cbc for 3s on 16 size blocks: 358615 aes-256-cbc's in 3.00s
Doing aes-256-cbc for 3s on 64 size blocks: 184798 aes-256-cbc's in 3.00s
Doing aes-256-cbc for 3s on 256 size blocks: 152296 aes-256-cbc's in 3.00s
Doing aes-256-cbc for 3s on 1024 size blocks: 120724 aes-256-cbc's in 3.00s
Doing aes-256-cbc for 3s on 8192 size blocks: 36151 aes-256-cbc's in 3.00s
The 'numbers' are in 1000s of bytes per second processed.
type 16 bytes 64 bytes 256 bytes 1024 bytes 8192 bytes
aes-256-cbc 1912.61k 3942.36k 12995.93k 41207.13k 98716.33k