habanalabs/gaudi2: implement fp32 not supported event
authorOfir Bitton <obitton@habana.ai>
Sun, 30 Oct 2022 13:10:13 +0000 (15:10 +0200)
committerOded Gabbay <ogabbay@kernel.org>
Wed, 23 Nov 2022 14:13:46 +0000 (16:13 +0200)
Due to binning, Gaudi2 does not always support fp32.
We add support for such an event in case fp32 is used by the user
in such a device.

Signed-off-by: Ofir Bitton <obitton@habana.ai>
Reviewed-by: Oded Gabbay <ogabbay@kernel.org>
Signed-off-by: Oded Gabbay <ogabbay@kernel.org>
drivers/misc/habanalabs/gaudi2/gaudi2.c
drivers/misc/habanalabs/include/gaudi2/gaudi2_async_events.h
drivers/misc/habanalabs/include/gaudi2/gaudi2_async_ids_map_extended.h

index f21b68b..77bdbab 100644 (file)
@@ -9148,6 +9148,11 @@ static void gaudi2_handle_eqe(struct hl_device *hdev, struct hl_eq_entry *eq_ent
                event_mask |= HL_NOTIFIER_EVENT_USER_ENGINE_ERR;
                break;
 
+       case GAUDI2_EVENT_CPU_FP32_NOT_SUPPORTED:
+               event_mask |= HL_NOTIFIER_EVENT_GENERAL_HW_ERR;
+               is_critical = true;
+               break;
+
        default:
                if (gaudi2_irq_map_table[event_type].valid)
                        dev_err_ratelimited(hdev->dev, "Cannot find handler for event %d\n",
index 3440677..305b576 100644 (file)
@@ -957,6 +957,7 @@ enum gaudi2_async_event_id {
        GAUDI2_EVENT_CPU11_STATUS_NIC11_ENG0 = 1317,
        GAUDI2_EVENT_CPU11_STATUS_NIC11_ENG1 = 1318,
        GAUDI2_EVENT_ARC_DCCM_FULL = 1319,
+       GAUDI2_EVENT_CPU_FP32_NOT_SUPPORTED = 1320,
        GAUDI2_EVENT_SIZE,
 };
 
index 5bd4383..d510cb1 100644 (file)
@@ -1,6 +1,6 @@
 /* SPDX-License-Identifier: GPL-2.0
  *
- * Copyright 2018-2021 HabanaLabs, Ltd.
+ * Copyright 2018-2022 HabanaLabs, Ltd.
  * All Rights Reserved.
  *
  */
@@ -2663,6 +2663,8 @@ static struct gaudi2_async_events_ids_map gaudi2_irq_map_table[] = {
                .msg = 1, .reset = 0, .name = "STATUS_NIC11_ENG1" },
        { .fc_id = 1319, .cpu_id = 625, .valid = 1,
                .msg = 1, .reset = 0, .name = "ARC_DCCM_FULL" },
+       { .fc_id = 1320, .cpu_id = 626, .valid = 1,
+               .msg = 1, .reset = 1, .name = "FP32_NOT_SUPPORTED" },
 };
 
 #endif /* __GAUDI2_ASYNC_IDS_MAP_EVENTS_EXT_H_ */