Hi Chen,
These Linux drivers are low-level and are not called by a user directly.
To understand how it works you should have the whole LTIB Kernel source code and to dig in it. The Linux Kernel Crypto documentation is very poor: http://www.mjmwired.net/kernel/Documentation/crypto/descore-readme.txt
http://www.mjmwired.net/kernel/Documentation/crypto/api-intro.txt
http://www.mjmwired.net/kernel/Documentation/crypto/async-tx-api.txt
It’s very tough area. Be ready to spend a lot of time. Also you can try to google (should be something new now, as I am out of this area long time).
If you like to create own stand-alone driver you should not waste time with the Linux crypto control structure organization and etc. You just need to try to reuse code from mcfcau_sha1_transform() assembler (but I am not able to help you in it).
If you do not need a source code, the best solution for you will be the binary library (is attached). I have not found the header API file, but you can reproduce it from the attached doc.
It should work for every platform that has CAU module (but I did not test it).
Best regards,
Andrey Butok