Hardware encryption support in Olinuxino A20 kernel ?

Started by mossroy, December 06, 2014, 11:59:18 PM

Previous topic - Next topic

mossroy

I found out that my Olinuxino A20 was quite slow to encrypt web pages for HTTPS (using Apache in the Debian release 8 image from Olimex).
Of course, SSL encryption always gives some overhead. But it's very significant on this machine, compared to a Sheevaplug (which has a much older single-core CPU, without FPU).

On the same page, here is the time for one request to get the response (with only one user) :
Olinuxino A20 alone, serving HTTP : 1.7s
Olinuxino A20 alone serving HTTPS : 3.8s
Olinuxino A20 serving HTTP + Sheevaplug as a reverse-proxy serving HTTPS (same private/public keys) : 2s
Olinuxino A20 alone serving HTTP + a reverse-proxy serving HTTPS on the same machine : 3.8s

I suspect that it might come from the fact that the linux kernel supports hardware SSL acceleration on the Sheevaplug CPU, but not yet on the Olinuxino A20.

I found this recent thread that seems to indicate that this support is on its way : http://lists.infradead.org/pipermail/linux-arm-kernel/2014-October/295267.html
I tried to compile the kernel myself (using http://olimex.wordpress.com/2013/11/05/building-the-ultimate-debian-sd-card-for-linux-with-kernel-3-4-for-a20-olinuxino-micro/ ) with these patches, on https://github.com/linux-sunxi/linux-sunxi/tree/reference-3.4, but the patches can't seem to apply on this branch.

Did anybody manage to activate hardware encryption in the kernel?