Lines Matching refs:ppd

86 			     struct hfi1_pportdata *ppd)  in hfi1_create_kctxt()  argument
94 ret = hfi1_create_ctxtdata(ppd, dd->node, &rcd); in hfi1_create_kctxt()
304 int hfi1_create_ctxtdata(struct hfi1_pportdata *ppd, int numa, in hfi1_create_ctxtdata() argument
307 struct hfi1_devdata *dd = ppd->dd; in hfi1_create_ctxtdata()
331 rcd->ppd = ppd; in hfi1_create_ctxtdata()
483 void set_link_ipg(struct hfi1_pportdata *ppd) in set_link_ipg() argument
485 struct hfi1_devdata *dd = ppd->dd; in set_link_ipg()
498 cc_state = get_cc_state(ppd); in set_link_ipg()
509 u16 ccti = ppd->cca_timer[i].ccti; in set_link_ipg()
523 current_egress_rate = active_egress_rate(ppd); in set_link_ipg()
525 max_pkt_time = egress_cycles(ppd->ibmaxlen, current_egress_rate); in set_link_ipg()
538 struct hfi1_pportdata *ppd; in cca_timer_fn() local
546 ppd = cca_timer->ppd; in cca_timer_fn()
551 cc_state = get_cc_state(ppd); in cca_timer_fn()
567 spin_lock_irqsave(&ppd->cca_timer_lock, flags); in cca_timer_fn()
571 set_link_ipg(ppd); in cca_timer_fn()
581 spin_unlock_irqrestore(&ppd->cca_timer_lock, flags); in cca_timer_fn()
589 void hfi1_init_pportdata(struct pci_dev *pdev, struct hfi1_pportdata *ppd, in hfi1_init_pportdata() argument
596 ppd->dd = dd; in hfi1_init_pportdata()
597 ppd->hw_pidx = hw_pidx; in hfi1_init_pportdata()
598 ppd->port = port; /* IB port number, not index */ in hfi1_init_pportdata()
599 ppd->prev_link_width = LINK_WIDTH_DEFAULT; in hfi1_init_pportdata()
605 ppd->port_vl_xmit_wait_last[i] = 0; in hfi1_init_pportdata()
606 ppd->vl_xmit_flit_cnt[i] = 0; in hfi1_init_pportdata()
611 ppd->pkeys[default_pkey_idx] = DEFAULT_P_KEY; in hfi1_init_pportdata()
612 ppd->part_enforce |= HFI1_PART_ENFORCE_IN; in hfi1_init_pportdata()
613 ppd->pkeys[0] = 0x8001; in hfi1_init_pportdata()
615 INIT_WORK(&ppd->link_vc_work, handle_verify_cap); in hfi1_init_pportdata()
616 INIT_WORK(&ppd->link_up_work, handle_link_up); in hfi1_init_pportdata()
617 INIT_WORK(&ppd->link_down_work, handle_link_down); in hfi1_init_pportdata()
618 INIT_WORK(&ppd->freeze_work, handle_freeze); in hfi1_init_pportdata()
619 INIT_WORK(&ppd->link_downgrade_work, handle_link_downgrade); in hfi1_init_pportdata()
620 INIT_WORK(&ppd->sma_message_work, handle_sma_message); in hfi1_init_pportdata()
621 INIT_WORK(&ppd->link_bounce_work, handle_link_bounce); in hfi1_init_pportdata()
622 INIT_DELAYED_WORK(&ppd->start_link_work, handle_start_link); in hfi1_init_pportdata()
623 INIT_WORK(&ppd->linkstate_active_work, receive_interrupt_work); in hfi1_init_pportdata()
624 INIT_WORK(&ppd->qsfp_info.qsfp_work, qsfp_event); in hfi1_init_pportdata()
626 mutex_init(&ppd->hls_lock); in hfi1_init_pportdata()
627 spin_lock_init(&ppd->qsfp_info.qsfp_lock); in hfi1_init_pportdata()
629 ppd->qsfp_info.ppd = ppd; in hfi1_init_pportdata()
630 ppd->sm_trap_qp = 0x0; in hfi1_init_pportdata()
631 ppd->sa_qp = 0x1; in hfi1_init_pportdata()
633 ppd->hfi1_wq = NULL; in hfi1_init_pportdata()
635 spin_lock_init(&ppd->cca_timer_lock); in hfi1_init_pportdata()
638 hrtimer_init(&ppd->cca_timer[i].hrtimer, CLOCK_MONOTONIC, in hfi1_init_pportdata()
640 ppd->cca_timer[i].ppd = ppd; in hfi1_init_pportdata()
641 ppd->cca_timer[i].sl = i; in hfi1_init_pportdata()
642 ppd->cca_timer[i].ccti = 0; in hfi1_init_pportdata()
643 ppd->cca_timer[i].hrtimer.function = cca_timer_fn; in hfi1_init_pportdata()
646 ppd->cc_max_table_entries = IB_CC_TABLE_CAP_DEFAULT; in hfi1_init_pportdata()
648 spin_lock_init(&ppd->cc_state_lock); in hfi1_init_pportdata()
649 spin_lock_init(&ppd->cc_log_lock); in hfi1_init_pportdata()
651 RCU_INIT_POINTER(ppd->cc_state, cc_state); in hfi1_init_pportdata()
741 struct hfi1_pportdata *ppd; in create_workqueues() local
744 ppd = dd->pport + pidx; in create_workqueues()
745 if (!ppd->hfi1_wq) { in create_workqueues()
746 ppd->hfi1_wq = in create_workqueues()
753 if (!ppd->hfi1_wq) in create_workqueues()
756 if (!ppd->link_wq) { in create_workqueues()
761 ppd->link_wq = in create_workqueues()
767 if (!ppd->link_wq) in create_workqueues()
775 ppd = dd->pport + pidx; in create_workqueues()
776 if (ppd->hfi1_wq) { in create_workqueues()
777 destroy_workqueue(ppd->hfi1_wq); in create_workqueues()
778 ppd->hfi1_wq = NULL; in create_workqueues()
780 if (ppd->link_wq) { in create_workqueues()
781 destroy_workqueue(ppd->link_wq); in create_workqueues()
782 ppd->link_wq = NULL; in create_workqueues()
795 struct hfi1_pportdata *ppd; in destroy_workqueues() local
798 ppd = dd->pport + pidx; in destroy_workqueues()
800 if (ppd->hfi1_wq) { in destroy_workqueues()
801 destroy_workqueue(ppd->hfi1_wq); in destroy_workqueues()
802 ppd->hfi1_wq = NULL; in destroy_workqueues()
804 if (ppd->link_wq) { in destroy_workqueues()
805 destroy_workqueue(ppd->link_wq); in destroy_workqueues()
806 ppd->link_wq = NULL; in destroy_workqueues()
849 struct hfi1_pportdata *ppd; in hfi1_init() local
867 ppd = dd->pport + pidx; in hfi1_init()
868 ppd->linkup = 0; in hfi1_init()
918 ppd = dd->pport + pidx; in hfi1_init()
921 ppd->statusp = &dd->status->port; in hfi1_init()
923 set_mtu(ppd); in hfi1_init()
944 ppd = dd->pport + pidx; in hfi1_init()
950 lastfail = bringup_serdes(ppd); in hfi1_init()
954 ppd->port); in hfi1_init()
960 if (ppd->statusp) in hfi1_init()
961 *ppd->statusp |= HFI1_STATUS_CHIP_PRESENT | in hfi1_init()
963 if (!ppd->link_speed_enabled) in hfi1_init()
983 struct hfi1_pportdata *ppd; in stop_timers() local
987 ppd = dd->pport + pidx; in stop_timers()
988 if (ppd->led_override_timer.function) { in stop_timers()
989 del_timer_sync(&ppd->led_override_timer); in stop_timers()
990 atomic_set(&ppd->led_override_timer_active, 0); in stop_timers()
1006 struct hfi1_pportdata *ppd; in shutdown_device() local
1016 ppd = dd->pport + pidx; in shutdown_device()
1018 ppd->linkup = 0; in shutdown_device()
1019 if (ppd->statusp) in shutdown_device()
1020 *ppd->statusp &= ~(HFI1_STATUS_IB_CONF | in shutdown_device()
1030 ppd = dd->pport + pidx; in shutdown_device()
1055 ppd = dd->pport + pidx; in shutdown_device()
1063 shutdown_led_override(ppd); in shutdown_device()
1069 hfi1_quiet_serdes(ppd); in shutdown_device()
1070 if (ppd->hfi1_wq) in shutdown_device()
1071 flush_workqueue(ppd->hfi1_wq); in shutdown_device()
1072 if (ppd->link_wq) in shutdown_device()
1073 flush_workqueue(ppd->link_wq); in shutdown_device()
1323 struct hfi1_pportdata *ppd; in hfi1_disable_after_error() local
1325 ppd = dd->pport + pidx; in hfi1_disable_after_error()
1327 set_link_state(ppd, HLS_DN_DISABLE); in hfi1_disable_after_error()
1329 if (ppd->statusp) in hfi1_disable_after_error()
1330 *ppd->statusp &= ~HFI1_STATUS_IB_READY; in hfi1_disable_after_error()
1488 struct hfi1_pportdata *ppd = &dd->pport[pidx]; in cleanup_device_data() local
1492 if (ppd->statusp) in cleanup_device_data()
1493 *ppd->statusp &= ~HFI1_STATUS_CHIP_PRESENT; in cleanup_device_data()
1496 hrtimer_cancel(&ppd->cca_timer[i].hrtimer); in cleanup_device_data()
1498 spin_lock(&ppd->cc_state_lock); in cleanup_device_data()
1499 cc_state = get_cc_state_protected(ppd); in cleanup_device_data()
1500 RCU_INIT_POINTER(ppd->cc_state, NULL); in cleanup_device_data()
1501 spin_unlock(&ppd->cc_state_lock); in cleanup_device_data()
1561 struct hfi1_pportdata *ppd; in init_one() local
1667 ppd = dd->pport + pidx; in init_one()
1668 if (ppd->hfi1_wq) { in init_one()
1669 destroy_workqueue(ppd->hfi1_wq); in init_one()
1670 ppd->hfi1_wq = NULL; in init_one()
1672 if (ppd->link_wq) { in init_one()
1673 destroy_workqueue(ppd->link_wq); in init_one()
1674 ppd->link_wq = NULL; in init_one()