Add GCM implementation based on OSSL source code.
Implementation uses dedicated neon functions (gcm_init_neon,
gcm_ghash_neon, gcm_gmult_neon) provided in assembly code.
Works with 128bit key and 16bytes tag.
Tested on armada388-clearfog with NISTs vector set.
style(9) wants to keep this blank line
Given the amount of modifications needed for GCM vs CBC compared to the duplication, I think it would be cleaner to have a separate osal_aes_gcm and leave osal_aes_cbc as-is. It's also worth it I think given the point is accelerated crypto to avoid at least some branches that way by using dedicated functions for the different modes.
This will not work with stream ciphers like GCM where payloads are not a multiple of the block size.
Tag mismatches should fail with EBADMSG not EINVAL
Please remove the file mode change to tests/sys/opencrypto/runtests.sh.
I'm not sure if we need the Htable to be this big.
Separate function for ossl_aes_cbc and ossl_aes_gcm
Change return EINVAL to EBADMSG
Decrease Htable size to single 128bit value
TODO: fix to work with stream ciphers