platform/x86/intel/sdsi: Set message size during writes
authorDavid E. Box <david.e.box@linux.intel.com>
Thu, 11 Apr 2024 02:58:48 +0000 (19:58 -0700)
committerHans de Goede <hdegoede@redhat.com>
Mon, 15 Apr 2024 14:05:50 +0000 (16:05 +0200)
New mailbox commands will support sending multi packet writes and updated
firmware now requires that the message size be written for all commands
along with the packet size. Since the driver doesn't perform writes larger
than the packet size, set the message size to the same value.

Signed-off-by: David E. Box <david.e.box@linux.intel.com>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Reviewed-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
Link: https://lore.kernel.org/r/20240411025856.2782476-2-david.e.box@linux.intel.com
Signed-off-by: Hans de Goede <hdegoede@redhat.com>
drivers/platform/x86/intel/sdsi.c

index 556e7c6dbb05a3089f9e84fa32422f859878ccdb..a70c071de6e284cd5ec56f75590c0683a76d28b2 100644 (file)
@@ -252,6 +252,7 @@ static int sdsi_mbox_cmd_write(struct sdsi_priv *priv, struct sdsi_mbox_info *in
                  FIELD_PREP(CTRL_SOM, 1) |
                  FIELD_PREP(CTRL_RUN_BUSY, 1) |
                  FIELD_PREP(CTRL_READ_WRITE, 1) |
+                 FIELD_PREP(CTRL_MSG_SIZE, info->size) |
                  FIELD_PREP(CTRL_PACKET_SIZE, info->size);
        writeq(control, priv->control_addr);