accel/habanalabs: fix standalone preboot descriptor request
authorfarah kassabri <fkassabri@habana.ai>
Sun, 4 Jun 2023 08:19:19 +0000 (11:19 +0300)
committerOded Gabbay <ogabbay@kernel.org>
Mon, 9 Oct 2023 09:37:18 +0000 (12:37 +0300)
The preboot used to statically allocate memory for the comms descriptor
on the device memory when driver requested the descriptor information.
Now preboot moved to dynamic memory allocation where it wants to check
the size the driver expects vs. what the f/w expects.
Note there are no backward compatibility issues as older f/w versions
simply ignore this value.

Signed-off-by: farah kassabri <fkassabri@habana.ai>
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
drivers/accel/habanalabs/common/firmware_if.c

index acbc1a6b5cb1837ad3c25e5714ea87940e0cb936..370508e98854aac671392a4c6712a5e7cbc64bdd 100644 (file)
@@ -2743,7 +2743,8 @@ static int hl_fw_dynamic_init_cpu(struct hl_device *hdev,
        if (!(hdev->fw_components & FW_TYPE_BOOT_CPU)) {
                struct lkd_fw_binning_info *binning_info;
 
-               rc = hl_fw_dynamic_request_descriptor(hdev, fw_loader, 0);
+               rc = hl_fw_dynamic_request_descriptor(hdev, fw_loader,
+                                                       sizeof(struct lkd_msg_comms));
                if (rc)
                        goto protocol_err;