On 12/8/22 22:52, Kai Huang wrote: > > The TDX module will be initialized in multi-steps defined by the TDX > module and most of those steps involve a specific SEAMCALL: > > 1) Get the TDX module information and TDX-capable memory regions > (TDH.SYS.INFO). > 2) Build the list of TDX-usable memory regions. > 3) Construct a list of "TD Memory Regions" (TDMRs) to cover all > TDX-usable memory regions. > 4) Pick up one TDX private KeyID as the global KeyID. > 5) Configure the TDMRs and the global KeyID to the TDX module > (TDH.SYS.CONFIG). > 6) Configure the global KeyID on all packages (TDH.SYS.KEY.CONFIG). > 7) Initialize all TDMRs (TDH.SYS.TDMR.INIT). I don't think you really need this *AND* the "TODO" comments in init_tdx_module(). Just say: Add a placeholder tdx_enable() to initialize the TDX module on demand. The TODO list will be pared down as functionality is added.