On 11/06/2020 14.00, Stefan Berger wrote: > On 6/10/20 4:02 PM, Philippe Mathieu-Daudé wrote: >> TPM subsytem is split into backends (see commit f4ede81eed2) >> and frontends (see i.e. 3676bc69b35). Keep the emulated >> hardware 'frontends' under hw/tpm/, but move the backends >> in the backends/ directory. >> >> Signed-off-by: Philippe Mathieu-Daudé <phi...@redhat.com> >> --- >> RFC due to a FIXME in tpm_tis_common.c, it uses >> TRACE_TPM_UTIL_SHOW_BUFFER which is now generated >> by backends/trace-events... >> --- >> Makefile | 2 +- >> {hw/tpm => backends}/tpm_int.h | 6 ++--- >> {hw/tpm => backends}/tpm_ioctl.h | 0 >> {hw/tpm => backends}/tpm_emulator.c | 0 >> {hw/tpm => backends}/tpm_passthrough.c | 0 >> {hw/tpm => backends}/tpm_util.c | 0 > > I don't understand this move. Why not keep everything TPM related in one > directory even though there may be a backend directory where 'nothing > else fits but the name.' All we need to remember is that 'emulator' and > 'passthrough' are the backends.
We try to have a clean separation between frontends and backends in QEMU. The concepts have been mixed in the past (see e.g. the -drive parameter) and that led only to confusion and trouble later. The hw/ directory is clearly for emulated hardware device frontends only, we should not include any backend code here. Thomas