diff options
author | Simon Glass | 2018-10-01 12:22:27 -0600 |
---|---|---|
committer | Simon Glass | 2018-10-09 04:40:27 -0600 |
commit | c89d32a7b1acc6a16b1e749e93844f7364ceacbf (patch) | |
tree | abffe71f73c667fd8cd5234aaaa262f9ddd6e24e | |
parent | c6ebd011bb27750263e8dd62e33ed5cdd49dc88e (diff) |
tpm: Use livetree and allow children
Adjust the TPM drivers to use livetree (only one does not). Also,
sometimes TPMs can have child devices if they provide a service to the
system (such as storing secure data), so permit that.
Signed-off-by: Simon Glass <sjg@chromium.org>
-rw-r--r-- | drivers/tpm/tpm-uclass.c | 3 | ||||
-rw-r--r-- | drivers/tpm/tpm_tis_lpc.c | 2 |
2 files changed, 4 insertions, 1 deletions
diff --git a/drivers/tpm/tpm-uclass.c b/drivers/tpm/tpm-uclass.c index 80fa0783d58..1b11c93194d 100644 --- a/drivers/tpm/tpm-uclass.c +++ b/drivers/tpm/tpm-uclass.c @@ -129,5 +129,8 @@ UCLASS_DRIVER(tpm) = { .id = UCLASS_TPM, .name = "tpm", .flags = DM_UC_FLAG_SEQ_ALIAS, +#if CONFIG_IS_ENABLED(OF_CONTROL) && !CONFIG_IS_ENABLED(OF_PLATDATA) + .post_bind = dm_scan_fdt_dev, +#endif .per_device_auto_alloc_size = sizeof(struct tpm_chip_priv), }; diff --git a/drivers/tpm/tpm_tis_lpc.c b/drivers/tpm/tpm_tis_lpc.c index 7664bb1a605..e993fd9f833 100644 --- a/drivers/tpm/tpm_tis_lpc.c +++ b/drivers/tpm/tpm_tis_lpc.c @@ -164,7 +164,7 @@ static int tpm_tis_lpc_probe(struct udevice *dev) u32 didvid; ulong chip_type = dev_get_driver_data(dev); - addr = devfdt_get_addr(dev); + addr = dev_read_addr(dev); if (addr == FDT_ADDR_T_NONE) return -EINVAL; priv->regs = map_sysmem(addr, 0); |