Lines Matching refs:hldev

131 	if (vpath->hldev->first_vp_id != vpath->vp_id)  in vxge_hw_vpath_intr_enable()
342 u32 vxge_hw_device_set_intr_type(struct __vxge_hw_device *hldev, u32 intr_mode) in vxge_hw_device_set_intr_type() argument
351 hldev->config.intr_mode = intr_mode; in vxge_hw_device_set_intr_type()
366 void vxge_hw_device_intr_enable(struct __vxge_hw_device *hldev) in vxge_hw_device_intr_enable() argument
372 vxge_hw_device_mask_all(hldev); in vxge_hw_device_intr_enable()
376 if (!(hldev->vpaths_deployed & vxge_mBIT(i))) in vxge_hw_device_intr_enable()
380 VXGE_HW_VIRTUAL_PATH_HANDLE(&hldev->virtual_paths[i])); in vxge_hw_device_intr_enable()
383 if (hldev->config.intr_mode == VXGE_HW_INTR_MODE_IRQLINE) { in vxge_hw_device_intr_enable()
384 val64 = hldev->tim_int_mask0[VXGE_HW_VPATH_INTR_TX] | in vxge_hw_device_intr_enable()
385 hldev->tim_int_mask0[VXGE_HW_VPATH_INTR_RX]; in vxge_hw_device_intr_enable()
388 writeq(val64, &hldev->common_reg->tim_int_status0); in vxge_hw_device_intr_enable()
390 writeq(~val64, &hldev->common_reg->tim_int_mask0); in vxge_hw_device_intr_enable()
393 val32 = hldev->tim_int_mask1[VXGE_HW_VPATH_INTR_TX] | in vxge_hw_device_intr_enable()
394 hldev->tim_int_mask1[VXGE_HW_VPATH_INTR_RX]; in vxge_hw_device_intr_enable()
398 &hldev->common_reg->tim_int_status1); in vxge_hw_device_intr_enable()
401 &hldev->common_reg->tim_int_mask1); in vxge_hw_device_intr_enable()
405 val64 = readq(&hldev->common_reg->titan_general_int_status); in vxge_hw_device_intr_enable()
407 vxge_hw_device_unmask_all(hldev); in vxge_hw_device_intr_enable()
420 void vxge_hw_device_intr_disable(struct __vxge_hw_device *hldev) in vxge_hw_device_intr_disable() argument
424 vxge_hw_device_mask_all(hldev); in vxge_hw_device_intr_disable()
427 writeq(VXGE_HW_INTR_MASK_ALL, &hldev->common_reg->tim_int_mask0); in vxge_hw_device_intr_disable()
429 &hldev->common_reg->tim_int_mask1); in vxge_hw_device_intr_disable()
433 if (!(hldev->vpaths_deployed & vxge_mBIT(i))) in vxge_hw_device_intr_disable()
437 VXGE_HW_VIRTUAL_PATH_HANDLE(&hldev->virtual_paths[i])); in vxge_hw_device_intr_disable()
449 void vxge_hw_device_mask_all(struct __vxge_hw_device *hldev) in vxge_hw_device_mask_all() argument
457 &hldev->common_reg->titan_mask_all_int); in vxge_hw_device_mask_all()
468 void vxge_hw_device_unmask_all(struct __vxge_hw_device *hldev) in vxge_hw_device_unmask_all() argument
472 if (hldev->config.intr_mode == VXGE_HW_INTR_MODE_IRQLINE) in vxge_hw_device_unmask_all()
476 &hldev->common_reg->titan_mask_all_int); in vxge_hw_device_unmask_all()
487 void vxge_hw_device_flush_io(struct __vxge_hw_device *hldev) in vxge_hw_device_flush_io() argument
491 val32 = readl(&hldev->common_reg->titan_general_int_status); in vxge_hw_device_flush_io()
503 __vxge_hw_device_handle_error(struct __vxge_hw_device *hldev, u32 vp_id, in __vxge_hw_device_handle_error() argument
535 if (hldev->uld_callbacks->crit_err) in __vxge_hw_device_handle_error()
536 hldev->uld_callbacks->crit_err(hldev, in __vxge_hw_device_handle_error()
551 __vxge_hw_device_handle_link_down_ind(struct __vxge_hw_device *hldev) in __vxge_hw_device_handle_link_down_ind() argument
556 if (hldev->link_state == VXGE_HW_LINK_DOWN) in __vxge_hw_device_handle_link_down_ind()
559 hldev->link_state = VXGE_HW_LINK_DOWN; in __vxge_hw_device_handle_link_down_ind()
562 if (hldev->uld_callbacks->link_down) in __vxge_hw_device_handle_link_down_ind()
563 hldev->uld_callbacks->link_down(hldev); in __vxge_hw_device_handle_link_down_ind()
576 __vxge_hw_device_handle_link_up_ind(struct __vxge_hw_device *hldev) in __vxge_hw_device_handle_link_up_ind() argument
581 if (hldev->link_state == VXGE_HW_LINK_UP) in __vxge_hw_device_handle_link_up_ind()
584 hldev->link_state = VXGE_HW_LINK_UP; in __vxge_hw_device_handle_link_up_ind()
587 if (hldev->uld_callbacks->link_up) in __vxge_hw_device_handle_link_up_ind()
588 hldev->uld_callbacks->link_up(hldev); in __vxge_hw_device_handle_link_up_ind()
608 struct __vxge_hw_device *hldev = NULL; in __vxge_hw_vpath_alarm_process() local
620 hldev = vpath->hldev; in __vxge_hw_vpath_alarm_process()
668 __vxge_hw_device_handle_link_down_ind(hldev); in __vxge_hw_vpath_alarm_process()
689 __vxge_hw_device_handle_link_up_ind(hldev); in __vxge_hw_vpath_alarm_process()
854 hldev->stats.sw_dev_err_stats.vpath_alarms++; in __vxge_hw_vpath_alarm_process()
860 __vxge_hw_device_handle_error(hldev, vpath->vp_id, alarm_event); in __vxge_hw_vpath_alarm_process()
890 enum vxge_hw_status vxge_hw_device_begin_irq(struct __vxge_hw_device *hldev, in vxge_hw_device_begin_irq() argument
899 val64 = readq(&hldev->common_reg->titan_general_int_status); in vxge_hw_device_begin_irq()
910 adapter_status = readq(&hldev->common_reg->adapter_status); in vxge_hw_device_begin_irq()
914 __vxge_hw_device_handle_error(hldev, in vxge_hw_device_begin_irq()
922 hldev->stats.sw_dev_info_stats.total_intr_cnt++; in vxge_hw_device_begin_irq()
926 vpath_mask = hldev->vpaths_deployed >> in vxge_hw_device_begin_irq()
931 hldev->stats.sw_dev_info_stats.traffic_intr_cnt++; in vxge_hw_device_begin_irq()
936 hldev->stats.sw_dev_info_stats.not_traffic_intr_cnt++; in vxge_hw_device_begin_irq()
943 hldev->stats.sw_dev_err_stats.vpath_alarms++; in vxge_hw_device_begin_irq()
947 if (!(hldev->vpaths_deployed & vxge_mBIT(i))) in vxge_hw_device_begin_irq()
951 &hldev->virtual_paths[i], skip_alarms); in vxge_hw_device_begin_irq()
976 void vxge_hw_device_clear_tx_rx(struct __vxge_hw_device *hldev) in vxge_hw_device_clear_tx_rx() argument
979 if ((hldev->tim_int_mask0[VXGE_HW_VPATH_INTR_TX] != 0) || in vxge_hw_device_clear_tx_rx()
980 (hldev->tim_int_mask0[VXGE_HW_VPATH_INTR_RX] != 0)) { in vxge_hw_device_clear_tx_rx()
981 writeq((hldev->tim_int_mask0[VXGE_HW_VPATH_INTR_TX] | in vxge_hw_device_clear_tx_rx()
982 hldev->tim_int_mask0[VXGE_HW_VPATH_INTR_RX]), in vxge_hw_device_clear_tx_rx()
983 &hldev->common_reg->tim_int_status0); in vxge_hw_device_clear_tx_rx()
986 if ((hldev->tim_int_mask1[VXGE_HW_VPATH_INTR_TX] != 0) || in vxge_hw_device_clear_tx_rx()
987 (hldev->tim_int_mask1[VXGE_HW_VPATH_INTR_RX] != 0)) { in vxge_hw_device_clear_tx_rx()
989 (hldev->tim_int_mask1[VXGE_HW_VPATH_INTR_TX] | in vxge_hw_device_clear_tx_rx()
990 hldev->tim_int_mask1[VXGE_HW_VPATH_INTR_RX]), in vxge_hw_device_clear_tx_rx()
991 &hldev->common_reg->tim_int_status1); in vxge_hw_device_clear_tx_rx()
2031 if (!(vpath->hldev->access_rights & in vxge_hw_vpath_promisc_enable()
2234 (vpath->hldev->first_vp_id * 4) + alarm_msix_id), in vxge_hw_vpath_msix_set()
2237 if (vpath->hldev->config.intr_mode == in vxge_hw_vpath_msix_set()
2266 struct __vxge_hw_device *hldev = vp->vpath->hldev; in vxge_hw_vpath_msix_mask() local
2269 &hldev->common_reg->set_msix_mask_vect[msix_id % 4]); in vxge_hw_vpath_msix_mask()
2286 struct __vxge_hw_device *hldev = vp->vpath->hldev; in vxge_hw_vpath_msix_clear() local
2288 if ((hldev->config.intr_mode == VXGE_HW_INTR_MODE_MSIX_ONE_SHOT)) in vxge_hw_vpath_msix_clear()
2291 &hldev->common_reg->clr_msix_one_shot_vec[msix_id % 4]); in vxge_hw_vpath_msix_clear()
2295 &hldev->common_reg->clear_msix_mask_vect[msix_id % 4]); in vxge_hw_vpath_msix_clear()
2313 struct __vxge_hw_device *hldev = vp->vpath->hldev; in vxge_hw_vpath_msix_unmask() local
2316 &hldev->common_reg->clear_msix_mask_vect[msix_id%4]); in vxge_hw_vpath_msix_unmask()
2332 struct __vxge_hw_device *hldev = vp->vpath->hldev; in vxge_hw_vpath_inta_mask_tx_rx() local
2337 val64 = readq(&hldev->common_reg->tim_int_mask0); in vxge_hw_vpath_inta_mask_tx_rx()
2343 &hldev->common_reg->tim_int_mask0); in vxge_hw_vpath_inta_mask_tx_rx()
2346 val64 = readl(&hldev->common_reg->tim_int_mask1); in vxge_hw_vpath_inta_mask_tx_rx()
2353 &hldev->common_reg->tim_int_mask1); in vxge_hw_vpath_inta_mask_tx_rx()
2370 struct __vxge_hw_device *hldev = vp->vpath->hldev; in vxge_hw_vpath_inta_unmask_tx_rx() local
2375 val64 = readq(&hldev->common_reg->tim_int_mask0); in vxge_hw_vpath_inta_unmask_tx_rx()
2381 &hldev->common_reg->tim_int_mask0); in vxge_hw_vpath_inta_unmask_tx_rx()
2389 &hldev->common_reg->tim_int_mask1); in vxge_hw_vpath_inta_unmask_tx_rx()