mbox series

[v2,0/3] hw/misc: Model ASPEED hash and crpyto engine

Message ID 20210311234726.437676-1-joel@jms.id.au (mailing list archive)
Headers show
Series hw/misc: Model ASPEED hash and crpyto engine | expand

Message

Joel Stanley March 11, 2021, 11:47 p.m. UTC
v2: Address review from Andrew and Phillepe. Adds a qtest.

This adds a model for the ASPEED hash and crypto engine (HACE) found on
all supported ASPEED SoCs.

The model uses Qemu's gcrypto API to perform the SHA and MD5 hashing
directly in the machine's emulated memory space, which I found a neat
use of Qemu's features.

It has been tested using u-boot and from Linux userspace, and v2 adds a
qtest for the model running as part of the ast2600-evb machine.

Joel Stanley (3):
  hw: Model ASPEED's Hash and Crypto Engine
  aspeed: Integrate HACE
  tests/qtest: Add test for Aspeed HACE

 docs/system/arm/aspeed.rst     |   2 +-
 include/hw/arm/aspeed_soc.h    |   3 +
 include/hw/misc/aspeed_hace.h  |  33 ++++
 hw/arm/aspeed_ast2600.c        |  14 ++
 hw/arm/aspeed_soc.c            |  15 ++
 hw/misc/aspeed_hace.c          | 312 +++++++++++++++++++++++++++++++++
 tests/qtest/aspeed_hace-test.c | 215 +++++++++++++++++++++++
 MAINTAINERS                    |   1 +
 hw/misc/meson.build            |   2 +-
 tests/qtest/meson.build        |   3 +
 10 files changed, 598 insertions(+), 2 deletions(-)
 create mode 100644 include/hw/misc/aspeed_hace.h
 create mode 100644 hw/misc/aspeed_hace.c
 create mode 100644 tests/qtest/aspeed_hace-test.c