BACKPORT: arm64: Expose support for optional ARMv8-A features

ARMv8-A adds a few optional features for ARMv8.2 and ARMv8.3.
Expose them to the userspace via HWCAPs and mrs emulation.

SHA2-512  - Instruction support for SHA512 Hash algorithm (e.g SHA512H,
	    SHA512H2, SHA512U0, SHA512SU1)
SHA3 	  - SHA3 crypto instructions (EOR3, RAX1, XAR, BCAX).
SM3	  - Instruction support for Chinese cryptography algorithm SM3
SM4 	  - Instruction support for Chinese cryptography algorithm SM4
DP	  - Dot Product instructions (UDOT, SDOT).

Cc: Will Deacon <will.deacon@arm.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Dave Martin <dave.martin@arm.com>
Cc: Marc Zyngier <marc.zyngier@arm.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Suzuki K Poulose <suzuki.poulose@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>

(cherry picked from commit f5e035f8694c3bdddc66ea46ecda965ee6853718)
Signed-off-by: Kevin Brodsky <Kevin.Brodsky@arm.com>
Backport-by: Kevin Brodsky <Kevin.Brodsky@arm.com>
Tested-by: Kevin Brodsky <Kevin.Brodsky@arm.com>
Bug: 119112014
Change-Id: Ic723fc8c743376d96a3cc2fea1f4855d0178a503
4 files changed