• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-R7000-V1.0.7.12_1.2.5/components/opensource/linux/linux-2.6.36/drivers/infiniband/hw/nes/

Lines Matching defs:nesadapter

69 				struct nes_adapter *nesadapter, u8  OneG_Mode);
120 struct nes_adapter *nesadapter = nesdev->nesadapter;
121 struct nes_hw_tune_timer *shared_timer = &nesadapter->tune_timer;
123 spin_lock_irqsave(&nesadapter->periodic_timer_lock, flags);
138 spin_unlock_irqrestore(&nesadapter->periodic_timer_lock, flags);
148 struct nes_adapter *nesadapter = nesdev->nesadapter;
149 struct nes_hw_tune_timer *shared_timer = &nesadapter->tune_timer;
151 spin_lock_irqsave(&nesadapter->periodic_timer_lock, flags);
167 spin_unlock_irqrestore(&nesadapter->periodic_timer_lock, flags);
177 struct nes_adapter *nesadapter = nesdev->nesadapter;
178 struct nes_hw_tune_timer *shared_timer = &nesadapter->tune_timer;
181 spin_lock_irqsave(&nesadapter->periodic_timer_lock, flags);
194 spin_unlock_irqrestore(&nesadapter->periodic_timer_lock, flags);
240 spin_unlock_irqrestore(&nesadapter->periodic_timer_lock, flags);
248 struct nes_adapter *nesadapter = NULL;
269 list_for_each_entry(nesadapter, &nes_adapter_list, list) {
273 PCI_SLOT(nesadapter->devfn),
274 nesadapter->bus_number,
277 if ((PCI_SLOT(nesadapter->devfn) == PCI_SLOT(nesdev->pcidev->devfn)) &&
278 (nesadapter->bus_number == nesdev->pcidev->bus->number)) {
279 nesadapter->ref_count++;
280 return nesadapter;
353 nesadapter = kzalloc(adapter_size, GFP_KERNEL);
354 if (nesadapter == NULL) {
358 nes_debug(NES_DBG_INIT, "Allocating new nesadapter @ %p, size = %u (actual size = %u).\n",
359 nesadapter, (u32)sizeof(struct nes_adapter), adapter_size);
361 if (nes_read_eeprom_values(nesdev, nesadapter)) {
363 kfree(nesadapter);
367 nesadapter->vendor_id = (((u32) nesadapter->mac_addr_high) << 8) |
368 (nesadapter->mac_addr_low >> 24);
372 nesadapter->vendor_part_id = device_id;
374 if (nes_init_serdes(nesdev, hw_rev, port_count, nesadapter,
376 kfree(nesadapter);
381 memset(nesadapter->pft_mcast_map, 255,
382 sizeof nesadapter->pft_mcast_map);
384 /* populate the new nesadapter */
385 nesadapter->devfn = nesdev->pcidev->devfn;
386 nesadapter->bus_number = nesdev->pcidev->bus->number;
387 nesadapter->ref_count = 1;
388 nesadapter->timer_int_req = 0xffff0000;
389 nesadapter->OneG_Mode = OneG_Mode;
390 nesadapter->doorbell_start = nesdev->doorbell_region;
392 /* nesadapter->tick_delta = clk_divisor; */
393 nesadapter->hw_rev = hw_rev;
394 nesadapter->port_count = port_count;
396 nesadapter->max_qp = max_qp;
397 nesadapter->hte_index_mask = hte_index_mask;
398 nesadapter->max_irrq = max_irrq;
399 nesadapter->max_mr = max_mr;
400 nesadapter->max_256pbl = max_256pbl - 1;
401 nesadapter->max_4kpbl = max_4kpbl - 1;
402 nesadapter->max_cq = max_cq;
403 nesadapter->free_256pbl = max_256pbl - 1;
404 nesadapter->free_4kpbl = max_4kpbl - 1;
405 nesadapter->max_pd = num_pds;
406 nesadapter->arp_table_size = arp_table_size;
408 nesadapter->et_pkt_rate_low = NES_TIMER_ENABLE_LIMIT;
410 nesadapter->et_use_adaptive_rx_coalesce = 0;
411 nesadapter->timer_int_limit = NES_TIMER_INT_LIMIT;
412 nesadapter->et_rx_coalesce_usecs_irq = interrupt_mod_interval;
414 nesadapter->et_use_adaptive_rx_coalesce = 1;
415 nesadapter->timer_int_limit = NES_TIMER_INT_LIMIT_DYNAMIC;
416 nesadapter->et_rx_coalesce_usecs_irq = 0;
420 if (nesadapter->et_rx_coalesce_usecs_irq)
422 ((u32)(nesadapter->et_rx_coalesce_usecs_irq * 8)));
426 nesadapter->base_pd = 1;
428 nesadapter->device_cap_flags = IB_DEVICE_LOCAL_DMA_LKEY |
432 nesadapter->allocated_qps = (unsigned long *)&(((unsigned char *)nesadapter)
434 nesadapter->allocated_cqs = &nesadapter->allocated_qps[BITS_TO_LONGS(max_qp)];
435 nesadapter->allocated_mrs = &nesadapter->allocated_cqs[BITS_TO_LONGS(max_cq)];
436 nesadapter->allocated_pds = &nesadapter->allocated_mrs[BITS_TO_LONGS(max_mr)];
437 nesadapter->allocated_arps = &nesadapter->allocated_pds[BITS_TO_LONGS(num_pds)];
438 nesadapter->qp_table = (struct nes_qp **)(&nesadapter->allocated_arps[BITS_TO_LONGS(arp_table_size)]);
443 set_bit(u32temp, nesadapter->allocated_qps);
444 set_bit(u32temp, nesadapter->allocated_cqs);
446 set_bit(0, nesadapter->allocated_mrs);
449 set_bit(u32temp, nesadapter->allocated_pds);
483 nesadapter->max_qp_wr = min(max_rq_wrs, max_sq_wrs);
484 nesadapter->max_irrq_wr = (u32temp >> 16) & 3;
486 nesadapter->max_sge = 4;
487 nesadapter->max_cqe = 32766;
489 if (nes_read_eeprom_values(nesdev, nesadapter)) {
491 kfree(nesadapter);
497 (u32temp & 0xff000000) | (nesadapter->tcp_timer_core_clk_divisor & 0x00ffffff));
500 if (nesadapter->port_count == 1) {
501 nesadapter->log_port = 0x00000000;
507 if (nesadapter->phy_type[0] == NES_PHY_TYPE_PUMA_1G) {
508 nesadapter->log_port = 0x000000D8;
510 if (nesadapter->port_count == 2)
511 nesadapter->log_port = 0x00000044;
513 nesadapter->log_port = 0x000000e4;
519 nesadapter->log_port);
523 spin_lock_init(&nesadapter->resource_lock);
524 spin_lock_init(&nesadapter->phy_lock);
525 spin_lock_init(&nesadapter->pbl_lock);
526 spin_lock_init(&nesadapter->periodic_timer_lock);
528 INIT_LIST_HEAD(&nesadapter->nesvnic_list[0]);
529 INIT_LIST_HEAD(&nesadapter->nesvnic_list[1]);
530 INIT_LIST_HEAD(&nesadapter->nesvnic_list[2]);
531 INIT_LIST_HEAD(&nesadapter->nesvnic_list[3]);
533 if ((!nesadapter->OneG_Mode) && (nesadapter->port_count == 2)) {
558 spin_lock_irqsave(&nesadapter->phy_lock, flags);
567 spin_unlock_irqrestore(&nesadapter->phy_lock, flags);
582 spin_lock_irqsave(&nesadapter->phy_lock, flags);
592 spin_unlock_irqrestore(&nesadapter->phy_lock, flags);
601 if (nesadapter->hw_rev == NE020_REV) {
602 init_timer(&nesadapter->mh_timer);
603 nesadapter->mh_timer.function = nes_mh_fix;
604 nesadapter->mh_timer.expires = jiffies + (HZ/5); /* 1 second */
605 nesadapter->mh_timer.data = (unsigned long)nesdev;
606 add_timer(&nesadapter->mh_timer);
611 init_timer(&nesadapter->lc_timer);
612 nesadapter->lc_timer.function = nes_clc;
613 nesadapter->lc_timer.expires = jiffies + 3600 * HZ; /* 1 hour */
614 nesadapter->lc_timer.data = (unsigned long)nesdev;
615 add_timer(&nesadapter->lc_timer);
617 list_add_tail(&nesadapter->list, &nes_adapter_list);
628 nesadapter->adapter_fcn_count = func_index;
630 return nesadapter;
744 struct nes_adapter *nesadapter, u8 OneG_Mode)
752 switch (nesadapter->phy_type[0]) {
781 if (!(OneG_Mode && (nesadapter->phy_type[1] != NES_PHY_TYPE_PUMA_1G)))
784 switch (nesadapter->phy_type[1]) {
948 void nes_destroy_adapter(struct nes_adapter *nesadapter)
957 nesadapter->ref_count--;
958 if (!nesadapter->ref_count) {
959 if (nesadapter->hw_rev == NE020_REV) {
960 del_timer(&nesadapter->mh_timer);
962 del_timer(&nesadapter->lc_timer);
964 list_del(&nesadapter->list);
965 kfree(nesadapter);
975 struct nes_adapter *nesadapter = nesdev->nesadapter;
996 (sizeof(struct nes_hw_aeqe) * nesadapter->max_qp) +
1050 ceq = &nesadapter->ceq[nesdev->ceq_index];
1060 nic_ceq = &nesadapter->ceq[nesdev->nic_ceq_index];
1069 aeq = &nesadapter->aeq[PCI_FUNC(nesdev->pcidev->devfn)];
1072 aeq->aeq_size = nesadapter->max_qp;
1508 struct nes_adapter *nesadapter = nesdev->nesadapter;
1512 u8 phy_type = nesadapter->phy_type[mac_index];
1513 u8 phy_index = nesadapter->phy_index[mac_index];
1528 spin_lock_irqsave(&nesdev->nesadapter->phy_lock, flags);
1541 spin_unlock_irqrestore(&nesdev->nesadapter->phy_lock, flags);
1747 if (nesdev->nesadapter->netdev_count > 2)
1869 if (nesdev->nesadapter->et_use_adaptive_rx_coalesce)
2039 struct nes_adapter *nesadapter = nesdev->nesadapter;
2060 nes_process_ceq(nesdev, &nesdev->nesadapter->ceq[nesdev->nic_ceq_index]);
2062 if (unlikely((((nesadapter->et_rx_coalesce_usecs_irq) &&
2063 (!nesadapter->et_use_adaptive_rx_coalesce)) ||
2064 ((nesadapter->et_use_adaptive_rx_coalesce) &&
2065 (nesdev->deepcq_count > nesadapter->et_pkt_rate_low))))) {
2070 /* TODO: need to also ack other unused periodic timer values, get from nesadapter */
2072 nesdev->timer_int_req | ~(nesdev->nesadapter->timer_int_req));
2077 if (unlikely(nesadapter->et_use_adaptive_rx_coalesce))
2110 if (++nesdev->nesadapter->crit_error_count[error_module-1] >=
2126 struct nes_adapter *nesadapter = nesdev->nesadapter;
2176 nes_process_ceq(nesdev, &nesadapter->ceq[counter]);
2188 nes_process_aeq(nesdev, &nesadapter->aeq[PCI_FUNC(nesdev->pcidev->devfn)]);
2201 ~(nesdev->nesadapter->timer_int_req));
2233 if ((nesadapter->et_rx_coalesce_usecs_irq) || (nesadapter->et_use_adaptive_rx_coalesce)) {
2236 if (nesdev->timer_only_int_count>=nesadapter->timer_int_limit) {
2245 if (unlikely(nesadapter->et_use_adaptive_rx_coalesce))
2257 nesdev->timer_int_req | ~(nesdev->nesadapter->timer_int_req));
2262 (((nesadapter->et_rx_coalesce_usecs_irq) &&
2263 (!nesadapter->et_use_adaptive_rx_coalesce)) ||
2264 ((nesdev->deepcq_count > nesadapter->et_pkt_rate_low) &&
2265 (nesadapter->et_use_adaptive_rx_coalesce) )) ) {
2270 nesdev->timer_int_req | ~(nesdev->nesadapter->timer_int_req));
2371 struct nes_adapter *nesadapter = nesdev->nesadapter;
2376 if (nesadapter->hw_rev == NE020_REV) {
2383 if ((mac_index == 0) || ((mac_index == 1) && (nesadapter->OneG_Mode)))
2388 if (4 <= (nesadapter->link_interrupt_count[mac_index] / ((u16)NES_MAX_LINK_INTERRUPTS))) {
2389 if ((!nesadapter->OneG_Mode) && (nesadapter->port_count == 2)) {
2390 nesadapter->link_interrupt_count[0] = 0;
2391 nesadapter->link_interrupt_count[1] = 0;
2400 nesadapter->link_interrupt_count[mac_index] = 0;
2444 struct nes_adapter *nesadapter = nesdev->nesadapter;
2455 spin_lock_irqsave(&nesadapter->phy_lock, flags);
2456 if (nesadapter->mac_sw_state[mac_number] != NES_MAC_SW_IDLE) {
2457 spin_unlock_irqrestore(&nesadapter->phy_lock, flags);
2460 nesadapter->mac_sw_state[mac_number] = NES_MAC_SW_INTERRUPT;
2471 if (0 == (++nesadapter->link_interrupt_count[mac_index] % ((u16)NES_MAX_LINK_INTERRUPTS)))
2475 if ((nesadapter->OneG_Mode) &&
2476 (nesadapter->phy_type[mac_index] != NES_PHY_TYPE_PUMA_1G)) {
2479 nesadapter->phy_index[mac_index], &phy_data);
2481 nesadapter->phy_index[mac_index], phy_data);
2487 nesadapter->phy_index[mac_index], &phy_data);
2489 nesadapter->phy_index[mac_index], phy_data);
2496 nesadapter->phy_index[mac_index], &phy_data);
2498 nesadapter->phy_index[mac_index], phy_data);
2501 nesadapter->phy_index[mac_index], &phy_data);
2503 nesadapter->phy_index[mac_index], phy_data);
2516 if (nesadapter->phy_type[mac_index] == NES_PHY_TYPE_PUMA_1G) {
2537 if ((nesadapter->OneG_Mode) &&
2538 (nesadapter->phy_type[mac_index] != NES_PHY_TYPE_PUMA_1G)) {
2540 if (nesadapter->port_count > 2) {
2548 switch (nesadapter->phy_type[mac_index]) {
2553 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 4, 0x0008);
2554 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 4, 0xc001);
2555 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 4, 0xc002);
2556 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 4, 0xc005);
2557 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 4, 0xc006);
2558 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 1, 0x9003);
2559 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 1, 0x9004);
2560 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 1, 0x9005);
2562 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 1, 0x9003);
2565 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 3, 0x0021);
2567 nes_read_10G_phy_reg(nesdev, nesadapter->phy_index[mac_index], 3, 0x0021);
2573 __func__, phy_data, nesadapter->mac_link_down[mac_index] ? "DOWN" : "UP");
2590 (nesadapter->phy_type[mac_index] == NES_PHY_TYPE_CX4) &&
2591 (nesadapter->hw_rev != NE020_REV)) {
2600 nesadapter->mac_link_down[mac_index] = 0;
2601 list_for_each_entry(nesvnic, &nesadapter->nesvnic_list[mac_index], list) {
2615 (nesadapter->phy_type[mac_index] == NES_PHY_TYPE_CX4) &&
2616 (nesadapter->hw_rev != NE020_REV)) {
2625 nesadapter->mac_link_down[mac_index] = 1;
2626 list_for_each_entry(nesvnic, &nesadapter->nesvnic_list[mac_index], list) {
2641 spin_unlock_irqrestore(&nesadapter->phy_lock, flags);
2643 nesadapter->mac_sw_state[mac_number] = NES_MAC_SW_IDLE;
2670 struct nes_adapter *nesadapter = nesdev->nesadapter;
2771 /* nesadapter->tune_timer.cq_count += cqe_count; */
2852 /* nesdev->nesadapter->tune_timer.cq_count += cqe_count; */
2878 if (unlikely(nesadapter->et_use_adaptive_rx_coalesce))
2880 /* nesdev->nesadapter->tune_timer.cq_count += cqe_count; */
3253 struct nes_adapter *nesadapter = nesdev->nesadapter;
3263 context = (unsigned long)nesadapter->qp_table[le32_to_cpu(
3278 if (nesadapter->send_term_ok)
3426 struct nes_adapter *nesadapter = nesdev->nesadapter;
3441 context = (unsigned long)nesadapter->qp_table[le32_to_cpu(
3459 if ((!nes_is_resource_allocated(nesadapter, nesadapter->allocated_qps,
3473 ((nesadapter->eeprom_version >> 16) != NES_A0)) {
3607 resource_allocated = nes_is_resource_allocated(nesadapter, nesadapter->allocated_cqs,