[PATCH 09/12] habanalabs: do not set max power on a secured device

From: Oded Gabbay
Date: Mon Jul 04 2022 - 05:30:38 EST


From: Ofir Bitton <obitton@xxxxxxxxx>

Max power API is not supported in secured devices. Hence, we should
skip setting it during boot.

Signed-off-by: Ofir Bitton <obitton@xxxxxxxxx>
Reviewed-by: Oded Gabbay <ogabbay@xxxxxxxxxx>
Signed-off-by: Oded Gabbay <ogabbay@xxxxxxxxxx>
---
drivers/misc/habanalabs/common/device.c | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/misc/habanalabs/common/device.c b/drivers/misc/habanalabs/common/device.c
index 9f3778c82e54..99d84b46aeb6 100644
--- a/drivers/misc/habanalabs/common/device.c
+++ b/drivers/misc/habanalabs/common/device.c
@@ -1545,7 +1545,8 @@ int hl_device_reset(struct hl_device *hdev, u32 flags)
goto out_err;
}

- hl_fw_set_max_power(hdev);
+ if (!hdev->asic_prop.fw_security_enabled)
+ hl_fw_set_max_power(hdev);
} else {
rc = hdev->asic_funcs->non_hard_reset_late_init(hdev);
if (rc) {
@@ -1914,7 +1915,8 @@ int hl_device_init(struct hl_device *hdev, struct class *hclass)
/* Need to call this again because the max power might change,
* depending on card type for certain ASICs
*/
- if (hdev->asic_prop.set_max_power_on_device_init)
+ if (hdev->asic_prop.set_max_power_on_device_init &&
+ !hdev->asic_prop.fw_security_enabled)
hl_fw_set_max_power(hdev);

/*
--
2.25.1