ena: fix build with icc
[dpdk.git] / drivers / net / ena / base / ena_com.h
index a257a68..19e53ff 100644 (file)
@@ -979,7 +979,7 @@ ena_com_calculate_interrupt_delay(struct ena_com_dev *ena_dev,
                 */
                return;
 
-       curr_moder_idx = *moder_tbl_idx;
+       curr_moder_idx = (enum ena_intr_moder_level)*moder_tbl_idx;
        if (unlikely(curr_moder_idx >=  ENA_INTR_MAX_NUM_OF_LEVELS)) {
                ena_trc_err("Wrong moderation index %u\n", curr_moder_idx);
                return;
@@ -991,17 +991,17 @@ ena_com_calculate_interrupt_delay(struct ena_com_dev *ena_dev,
        if (curr_moder_idx == ENA_INTR_MODER_LOWEST) {
                if ((pkts > curr_moder_entry->pkts_per_interval) ||
                    (bytes > curr_moder_entry->bytes_per_interval))
-                       new_moder_idx = curr_moder_idx + 1;
+                       new_moder_idx = (enum ena_intr_moder_level)(curr_moder_idx + 1);
        } else {
                pred_moder_entry = &intr_moder_tbl[curr_moder_idx - 1];
 
                if ((pkts <= pred_moder_entry->pkts_per_interval) ||
                    (bytes <= pred_moder_entry->bytes_per_interval))
-                       new_moder_idx = curr_moder_idx - 1;
+                       new_moder_idx = (enum ena_intr_moder_level)(curr_moder_idx - 1);
                else if ((pkts > curr_moder_entry->pkts_per_interval) ||
                         (bytes > curr_moder_entry->bytes_per_interval)) {
                        if (curr_moder_idx != ENA_INTR_MODER_HIGHEST)
-                               new_moder_idx = curr_moder_idx + 1;
+                               new_moder_idx = (enum ena_intr_moder_level)(curr_moder_idx + 1);
                }
        }
        new_moder_entry = &intr_moder_tbl[new_moder_idx];