I was looking into the STM32 CRYPT, HASH and CRC32 units and how they
fit in Zephyr and could not really figure it out.
There is a drivers/crypto/ with some "real" drivers for doing encryption
and decryption of data via a Zephyr "device driver".
There is also a drivers/crc/ that holds only a function to do crc16
without any "device driver".
And there doesn't seem to be anything that has to do with hashes like
SHA1, MD5 etc. (except for the CRC which is technically also a hash).
So now my problem is where and how the 3 STM32 devices CRYPT, HASH and
CRC32 could be added to Zephyr in a way that they are also generally
For example how to deal with the limitations of hardware like the
STM32F4 CRC32 unit (it only supports one fixed polynomial and 0xffffffff
as start value)?