On Tue, Nov 01, 2022 at 12:10:17PM -0700, David E. Box wrote: > Newer versions of Intel On Demand hardware may have an expanded list of > registers to support new features. The register layout is identified by a > unique GUID that's read during driver probe. Add support for handling > different GUIDs and add support for current GUIDs [1]. > [1] https://github.com/intel/intel-sdsi/blob/master/os-interface.rst Link: tag? ... > #define SDSI_MIN_SIZE_DWORDS 276 > -#define SDSI_SIZE_CONTROL 8 > #define SDSI_SIZE_MAILBOX 1024 > -#define SDSI_SIZE_REGS 72 > +#define SDSI_SIZE_REGS 80 > #define SDSI_SIZE_CMD sizeof(u64) > +#define SDSI_SIZE_MAILBOX 1024 Why do you need this second time? ... > +static int sdsi_get_layout(struct sdsi_priv *priv, struct disc_table *table) > +{ > + switch (table->guid) { > + case SDSI_GUID_V1: > + priv->control_size = 8; > + priv->registers_size = 72; > + break; > + case SDSI_GUID_V2: > + priv->control_size = 16; > + priv->registers_size = 80; Maybe it makes sense to use previously defined constants here instead of magics? > + break; > + default: > + dev_err(priv->dev, "Unrecognized GUID 0x%x\n", table->guid); > + return -EINVAL; > + } > + return 0; > +} -- With Best Regards, Andy Shevchenko