From d57d5e3b3737607e4351ba460d0248a195279f2d Mon Sep 17 00:00:00 2001 From: Arthur Heymans Date: Wed, 27 Dec 2023 20:54:19 +0100 Subject: smmstorev2: Load the communication buffer at SMM setup This removes the runtime SMI call to set up the communication buffer for SMMSTORE in favor of setting this buffer up during the installation of the smihandler. The reason is that it's less code in the handler and a time costly SMI is also avoided in ramstage. Signed-off-by: Arthur Heymans Change-Id: I94dce77711f37f87033530f5ae48cb850a39341b Reviewed-on: https://review.coreboot.org/c/coreboot/+/79738 Tested-by: build bot (Jenkins) Reviewed-by: Patrick Rudolph --- Documentation/drivers/smmstorev2.md | 20 ++------------------ 1 file changed, 2 insertions(+), 18 deletions(-) (limited to 'Documentation') diff --git a/Documentation/drivers/smmstorev2.md b/Documentation/drivers/smmstorev2.md index 03d3c7c659..8e74c932f1 100644 --- a/Documentation/drivers/smmstorev2.md +++ b/Documentation/drivers/smmstorev2.md @@ -124,25 +124,9 @@ additional calling arguments are passed via `%ebx`. **NOTE**: The size of the struct entries are in the native word size of smihandler. This means 32 bits in almost all cases. -#### - SMMSTORE_CMD_INIT = 4 +#### - SMMSTORE_CMD_INIT_DEPRECATED = 4 -This installs the communication buffer to use and thus enables the -SMMSTORE handler. This command can only be executed once and is done -by the firmware. Calling this function at runtime has no effect. - -The additional parameter buffer `%ebx` contains a pointer to the -following struct: - -```C -struct smmstore_params_init { - uint32_t com_buffer; - uint32_t com_buffer_size; -} __packed; -``` - -INPUT: -- `com_buffer`: Physical address of the communication buffer (CBMEM) -- `com_buffer_size`: Size in bytes of the communication buffer +Unused, returns SMMSTORE_REG_UNSUPPORTED. #### - SMMSTORE_CMD_RAW_READ = 5 -- cgit v1.2.3