aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--MAINTAINERS1
-rw-r--r--Makefile.objs2
-rw-r--r--hw/tpm/tpm_tis.c2
-rw-r--r--include/sysemu/tpm.h1
-rw-r--r--stubs/Makefile.objs1
-rw-r--r--stubs/tpm.c33
-rw-r--r--tpm.c4
-rw-r--r--vl.c2
8 files changed, 39 insertions, 7 deletions
diff --git a/MAINTAINERS b/MAINTAINERS
index 12175425a7..2650063242 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -1544,6 +1544,7 @@ TPM
M: Stefan Berger <stefanb@linux.vnet.ibm.com>
S: Maintained
F: tpm.c
+F: stubs/tpm.c
F: hw/tpm/*
F: include/hw/acpi/tpm.h
F: include/sysemu/tpm*
diff --git a/Makefile.objs b/Makefile.objs
index d4f973a8fc..285c6f3c15 100644
--- a/Makefile.objs
+++ b/Makefile.objs
@@ -62,7 +62,7 @@ bt-host.o-cflags := $(BLUEZ_CFLAGS)
common-obj-y += dma-helpers.o
common-obj-y += vl.o
vl.o-cflags := $(GPROF_CFLAGS) $(SDL_CFLAGS)
-common-obj-y += tpm.o
+common-obj-$(CONFIG_TPM) += tpm.o
common-obj-$(CONFIG_SLIRP) += slirp/
diff --git a/hw/tpm/tpm_tis.c b/hw/tpm/tpm_tis.c
index 8c5cac5fa5..7402528b25 100644
--- a/hw/tpm/tpm_tis.c
+++ b/hw/tpm/tpm_tis.c
@@ -422,6 +422,8 @@ static void tpm_tis_receive_bh(void *opaque)
s->loc[locty].r_offset = 0;
s->loc[locty].w_offset = 0;
+ tpm_tis_show_buffer(&s->loc[locty].r_buffer, "tpm_tis: From TPM");
+
if (TPM_TIS_IS_VALID_LOCTY(s->next_locty)) {
tpm_tis_abort(s, locty);
}
diff --git a/include/sysemu/tpm.h b/include/sysemu/tpm.h
index c8afa179e5..d7a2bd8556 100644
--- a/include/sysemu/tpm.h
+++ b/include/sysemu/tpm.h
@@ -13,6 +13,7 @@
#define QEMU_TPM_H
#include "qemu/option.h"
+#include "qom/object.h"
typedef struct TPMState TPMState;
diff --git a/stubs/Makefile.objs b/stubs/Makefile.objs
index c7594796c3..8cfe34328a 100644
--- a/stubs/Makefile.objs
+++ b/stubs/Makefile.objs
@@ -28,6 +28,7 @@ stub-obj-y += runstate-check.o
stub-obj-y += set-fd-handler.o
stub-obj-y += slirp.o
stub-obj-y += sysbus.o
+stub-obj-y += tpm.o
stub-obj-y += trace-control.o
stub-obj-y += uuid.o
stub-obj-y += vm-stop.o
diff --git a/stubs/tpm.c b/stubs/tpm.c
new file mode 100644
index 0000000000..c18aac1c73
--- /dev/null
+++ b/stubs/tpm.c
@@ -0,0 +1,33 @@
+/*
+ * TPM stubs
+ *
+ * This work is licensed under the terms of the GNU GPL, version 2 or later.
+ * See the COPYING file in the top-level directory.
+ */
+#include "qemu/osdep.h"
+#include "sysemu/tpm.h"
+#include "qmp-commands.h"
+
+int tpm_init(void)
+{
+ return 0;
+}
+
+void tpm_cleanup(void)
+{
+}
+
+TPMInfoList *qmp_query_tpm(Error **errp)
+{
+ return NULL;
+}
+
+TpmTypeList *qmp_query_tpm_types(Error **errp)
+{
+ return NULL;
+}
+
+TpmModelList *qmp_query_tpm_models(Error **errp)
+{
+ return NULL;
+}
diff --git a/tpm.c b/tpm.c
index 45520f555d..ab5d29e91e 100644
--- a/tpm.c
+++ b/tpm.c
@@ -30,8 +30,6 @@ void tpm_register_model(enum TpmModel model)
tpm_models[model] = true;
}
-#ifdef CONFIG_TPM
-
static const TPMBackendClass *
tpm_be_find_by_type(enum TpmType type)
{
@@ -192,8 +190,6 @@ int tpm_config_parse(QemuOptsList *opts_list, const char *optarg)
return 0;
}
-#endif /* CONFIG_TPM */
-
/*
* Walk the list of active TPM backends and collect information about them
* following the schema description in qapi-schema.json.
diff --git a/vl.c b/vl.c
index 0723835bbf..ec299099ff 100644
--- a/vl.c
+++ b/vl.c
@@ -4624,11 +4624,9 @@ int main(int argc, char **argv, char **envp)
exit(1);
}
-#ifdef CONFIG_TPM
if (tpm_init() < 0) {
exit(1);
}
-#endif
/* init the bluetooth world */
if (foreach_device_config(DEV_BT, bt_parse))