On Wed, 9 Apr 2025 at 18:08, Tom Lendacky <thomas.lenda...@amd.com> wrote: > > On 4/9/25 06:31, Borislav Petkov wrote: > > On Wed, Apr 09, 2025 at 12:43:01PM +0200, Stefano Garzarella wrote: > >> Sorry, maybe I missed something. > >> > >> tpm_svsm.c registers the driver with module_platform_driver_probe(). > >> > >> Someone (the platform I guess) has to register the device by calling > >> platform_device_register(), as we already do for example for > >> sev_guest. > > > > Maybe that platform device thing is the wrong approach. Why does the core > > code > > need to register some dummy platform device in the first place? Why can't > > drivers/char/tpm/tpm_svsm.c probe and init without it? > > I think the platform device is the right approach (just like we do for the > sev-guest driver), but I think we should only register the device if an > SVSM is present. Then let the vTPM driver probe routine check if the SVSM > vTPM support is present.
I see, agree. > > So the vTPM driver wouldn't change, just snp_init_platform_device(): > > if (snp_vmpl && platform_device_register(&tpm_svsm_device)) I can do if we agree on that. > > Looking at the message that is issued after, maybe it should read > "devices" now. Good catch, I'll update the pr_info() message! Thanks, Stefano