Lines Matching refs:ug_info

231 			       ugeth->ug_info->uf_info.max_rx_buf_length +  in get_new_skb()
247 ugeth->ug_info->uf_info.max_rx_buf_length + in get_new_skb()
443 ucc_fast_get_qe_cr_subblock(ugeth->ug_info->uf_info.ucc_num); in hw_add_addr_in_hash()
581 for (i = 0; i < ucc_geth_tx_queues(ugeth->ug_info); i++) { in dump_bds()
584 (ugeth->ug_info->bdRingLenTx[i] * in dump_bds()
590 for (i = 0; i < ucc_geth_rx_queues(ugeth->ug_info); i++) { in dump_bds()
593 (ugeth->ug_info->bdRingLenRx[i] * in dump_bds()
605 pr_info("UCC%d Geth registers:\n", ugeth->ug_info->uf_info.ucc_num + 1); in dump_regs()
694 int count = ucc_geth_thread_count(ugeth->ug_info->numThreadsTx); in dump_regs()
708 int count = ucc_geth_thread_count(ugeth->ug_info->numThreadsRx); in dump_regs()
888 for (i = 0; i < ucc_geth_tx_queues(ugeth->ug_info); i++) { in dump_regs()
920 for (i = 0; i < ucc_geth_rx_queues(ugeth->ug_info); i++) { in dump_regs()
942 for (i = 0; i < ucc_geth_rx_queues(ugeth->ug_info); i++) { in dump_regs()
980 if (ugeth->ug_info->rxExtendedFiltering) { in dump_regs()
983 if (ugeth->ug_info->largestexternallookupkeysize == in dump_regs()
987 if (ugeth->ug_info->largestexternallookupkeysize == in dump_regs()
998 ugeth->ug_info->riscTx, 0); in dump_regs()
1003 ugeth->ug_info->riscRx, 1); in dump_regs()
1292 struct ucc_geth_info *ug_info; in adjust_enet_interface() local
1301 ug_info = ugeth->ug_info; in adjust_enet_interface()
1313 maccfg2 |= ug_info->padAndCrc; in adjust_enet_interface()
1351 struct ucc_geth_info *ug_info = ugeth->ug_info; in adjust_enet_interface() local
1354 if (!ug_info->tbi_node) in adjust_enet_interface()
1357 tbiphy = of_phy_find_device(ug_info->tbi_node); in adjust_enet_interface()
1368 init_check_frame_length_mode(ug_info->lengthCheckRx, &ug_regs->maccfg2); in adjust_enet_interface()
1370 ret_val = init_preamble_length(ug_info->prel, &ug_regs->maccfg2); in adjust_enet_interface()
1395 ucc_fast_get_qe_cr_subblock(ugeth->ug_info->uf_info.ucc_num); in ugeth_graceful_stop_tx()
1429 ucc_fast_get_qe_cr_subblock(ugeth->ug_info->uf_info. in ugeth_graceful_stop_rx()
1450 ucc_fast_get_qe_cr_subblock(ugeth->ug_info->uf_info.ucc_num); in ugeth_restart_tx()
1465 ucc_fast_get_qe_cr_subblock(ugeth->ug_info->uf_info.ucc_num); in ugeth_restart_rx()
1481 if (ugeth->ug_info->uf_info.ucc_num >= UCC_MAX_NUM) { in ugeth_enable()
1510 if (ugeth->ug_info->uf_info.ucc_num >= UCC_MAX_NUM) { in ugeth_disable()
1535 disable_irq(ugeth->ug_info->uf_info.irq); in ugeth_quiesce()
1544 enable_irq(ugeth->ug_info->uf_info.irq); in ugeth_activate()
1663 struct ucc_geth_info *ug_info = ugeth->ug_info; in uec_configure_serdes() local
1666 if (!ug_info->tbi_node) { in uec_configure_serdes()
1672 tbiphy = of_phy_find_device(ug_info->tbi_node); in uec_configure_serdes()
1705 struct ucc_geth_info *ug_info = priv->ug_info; in init_phy() local
1712 phydev = of_phy_connect(dev, ug_info->phy_node, &adjust_link, 0, in init_phy()
1809 struct ucc_geth_info *ug_info; in ucc_geth_free_rx() local
1815 ug_info = ugeth->ug_info; in ucc_geth_free_rx()
1816 uf_info = &ug_info->uf_info; in ucc_geth_free_rx()
1818 for (i = 0; i < ucc_geth_rx_queues(ugeth->ug_info); i++) { in ucc_geth_free_rx()
1822 for (j = 0; j < ugeth->ug_info->bdRingLenRx[i]; j++) { in ucc_geth_free_rx()
1826 ugeth->ug_info-> in ucc_geth_free_rx()
1848 struct ucc_geth_info *ug_info; in ucc_geth_free_tx() local
1855 ug_info = ugeth->ug_info; in ucc_geth_free_tx()
1856 uf_info = &ug_info->uf_info; in ucc_geth_free_tx()
1858 for (i = 0; i < ucc_geth_tx_queues(ugeth->ug_info); i++) { in ucc_geth_free_tx()
1862 for (j = 0; j < ugeth->ug_info->bdRingLenTx[i]; j++) { in ucc_geth_free_tx()
1930 ugeth->ug_info->riscRx, 1); in ucc_geth_memclean()
1935 ugeth->ug_info->riscTx, 0); in ucc_geth_memclean()
2026 struct ucc_geth_info *ug_info; in ucc_struct_init() local
2030 ug_info = ugeth->ug_info; in ucc_struct_init()
2031 uf_info = &ug_info->uf_info; in ucc_struct_init()
2034 for (i = 0; i < ucc_geth_rx_queues(ug_info); i++) { in ucc_struct_init()
2035 if ((ug_info->bdRingLenRx[i] < UCC_GETH_RX_BD_RING_SIZE_MIN) || in ucc_struct_init()
2036 (ug_info->bdRingLenRx[i] % in ucc_struct_init()
2045 for (i = 0; i < ucc_geth_tx_queues(ug_info); i++) { in ucc_struct_init()
2046 if (ug_info->bdRingLenTx[i] < UCC_GETH_TX_BD_RING_SIZE_MIN) { in ucc_struct_init()
2062 if (ucc_geth_tx_queues(ug_info) > NUM_TX_QUEUES) { in ucc_struct_init()
2069 if (ucc_geth_rx_queues(ug_info) > NUM_RX_QUEUES) { in ucc_struct_init()
2077 if (ug_info->l2qt[i] >= ucc_geth_rx_queues(ug_info)) { in ucc_struct_init()
2086 if (ug_info->l3qt[i] >= ucc_geth_rx_queues(ug_info)) { in ucc_struct_init()
2093 if (ug_info->cam && !ug_info->ecamptr) { in ucc_struct_init()
2099 if ((ug_info->numStationAddresses != in ucc_struct_init()
2101 ug_info->rxExtendedFiltering) { in ucc_struct_init()
2108 uf_info->uccm_mask = ug_info->eventRegMask & UCCE_OTHER;/* Errors */ in ucc_struct_init()
2109 for (i = 0; i < ucc_geth_rx_queues(ug_info); i++) in ucc_struct_init()
2112 for (i = 0; i < ucc_geth_tx_queues(ug_info); i++) in ucc_struct_init()
2125 ug_info->riscTx = QE_RISC_ALLOCATION_FOUR_RISCS; in ucc_struct_init()
2126 ug_info->riscRx = QE_RISC_ALLOCATION_FOUR_RISCS; in ucc_struct_init()
2141 struct ucc_geth_info *ug_info; in ucc_geth_alloc_tx() local
2147 ug_info = ugeth->ug_info; in ucc_geth_alloc_tx()
2148 uf_info = &ug_info->uf_info; in ucc_geth_alloc_tx()
2151 for (j = 0; j < ucc_geth_tx_queues(ug_info); j++) { in ucc_geth_alloc_tx()
2156 length = ug_info->bdRingLenTx[j] * sizeof(struct qe_bd); in ucc_geth_alloc_tx()
2172 for (j = 0; j < ucc_geth_tx_queues(ug_info); j++) { in ucc_geth_alloc_tx()
2175 kcalloc(ugeth->ug_info->bdRingLenTx[j], in ucc_geth_alloc_tx()
2186 for (i = 0; i < ug_info->bdRingLenTx[j]; i++) { in ucc_geth_alloc_tx()
2203 struct ucc_geth_info *ug_info; in ucc_geth_alloc_rx() local
2209 ug_info = ugeth->ug_info; in ucc_geth_alloc_rx()
2210 uf_info = &ug_info->uf_info; in ucc_geth_alloc_rx()
2213 for (j = 0; j < ucc_geth_rx_queues(ug_info); j++) { in ucc_geth_alloc_rx()
2217 length = ug_info->bdRingLenRx[j] * sizeof(struct qe_bd); in ucc_geth_alloc_rx()
2230 for (j = 0; j < ucc_geth_rx_queues(ug_info); j++) { in ucc_geth_alloc_rx()
2233 kcalloc(ugeth->ug_info->bdRingLenRx[j], in ucc_geth_alloc_rx()
2244 for (i = 0; i < ug_info->bdRingLenRx[j]; i++) { in ucc_geth_alloc_rx()
2264 struct ucc_geth_info *ug_info; in ucc_geth_startup() local
2280 ug_info = ugeth->ug_info; in ucc_geth_startup()
2281 uf_info = &ug_info->uf_info; in ucc_geth_startup()
2285 numThreadsRxNumerical = ucc_geth_thread_count(ug_info->numThreadsRx); in ucc_geth_startup()
2292 numThreadsTxNumerical = ucc_geth_thread_count(ug_info->numThreadsTx); in ucc_geth_startup()
2300 ugeth->rx_non_dynamic_extended_features = ug_info->ipCheckSumCheck || in ucc_geth_startup()
2301 ug_info->ipAddressAlignment || in ucc_geth_startup()
2302 (ug_info->numStationAddresses != in ucc_geth_startup()
2306 (ug_info->vlanOperationTagged != UCC_GETH_VLAN_OPERATION_TAGGED_NOP) || in ucc_geth_startup()
2307 (ug_info->vlanOperationNonTagged != in ucc_geth_startup()
2315 init_rx_parameters(ug_info->bro, in ucc_geth_startup()
2316 ug_info->rsh, ug_info->pro, &uf_regs->upsmr); in ucc_geth_startup()
2323 init_flow_control_params(ug_info->aufc, in ucc_geth_startup()
2324 ug_info->receiveFlowControl, in ucc_geth_startup()
2325 ug_info->transmitFlowControl, in ucc_geth_startup()
2326 ug_info->pausePeriod, in ucc_geth_startup()
2327 ug_info->extensionField, in ucc_geth_startup()
2335 ret_val = init_inter_frame_gap_params(ug_info->nonBackToBackIfgPart1, in ucc_geth_startup()
2336 ug_info->nonBackToBackIfgPart2, in ucc_geth_startup()
2337 ug_info-> in ucc_geth_startup()
2339 ug_info->backToBackInterFrameGap, in ucc_geth_startup()
2349 ret_val = init_half_duplex_params(ug_info->altBeb, in ucc_geth_startup()
2350 ug_info->backPressureNoBackoff, in ucc_geth_startup()
2351 ug_info->noBackoff, in ucc_geth_startup()
2352 ug_info->excessDefer, in ucc_geth_startup()
2353 ug_info->altBebTruncation, in ucc_geth_startup()
2354 ug_info->maxRetransmission, in ucc_geth_startup()
2355 ug_info->collisionWindow, in ucc_geth_startup()
2374 init_hw_statistics_gathering_mode((ug_info->statisticsMode & in ucc_geth_startup()
2423 ug_info->vtagtable[i]); in ucc_geth_startup()
2428 ug_info->iphoffset[i]); in ucc_geth_startup()
2433 qe_muram_alloc(ucc_geth_tx_queues(ug_info) * in ucc_geth_startup()
2449 for (i = 0; i < ucc_geth_tx_queues(ug_info); i++) { in ucc_geth_startup()
2451 ugeth->p_tx_bd_ring[i] + (ug_info->bdRingLenTx[i] - in ucc_geth_startup()
2462 if (ucc_geth_tx_queues(ug_info) > 1) { in ucc_geth_startup()
2481 ug_info->mblinterval); in ucc_geth_startup()
2483 ug_info->nortsrbytetime); in ucc_geth_startup()
2484 out_8(&ugeth->p_scheduler->fracsiz, ug_info->fracsiz); in ucc_geth_startup()
2486 ug_info->strictpriorityq); in ucc_geth_startup()
2487 out_8(&ugeth->p_scheduler->txasap, ug_info->txasap); in ucc_geth_startup()
2488 out_8(&ugeth->p_scheduler->extrabw, ug_info->extrabw); in ucc_geth_startup()
2491 ug_info->weightfactor[i]); in ucc_geth_startup()
2506 if (ug_info-> in ucc_geth_startup()
2525 if (ucc_geth_tx_queues(ug_info) > 1) in ucc_geth_startup()
2527 if (ug_info->ipCheckSumGenerate) in ucc_geth_startup()
2529 temoder |= ((ucc_geth_tx_queues(ug_info) - 1) << TEMODER_NUM_OF_QUEUES_SHIFT); in ucc_geth_startup()
2570 out_be16(&ugeth->p_rx_glbl_pram->typeorlen, ug_info->typeorlen); in ucc_geth_startup()
2573 if (ug_info-> in ucc_geth_startup()
2593 qe_muram_alloc(ucc_geth_rx_queues(ug_info) * in ucc_geth_startup()
2609 for (i = 0; i < ucc_geth_rx_queues(ug_info); i++) { in ucc_geth_startup()
2612 ug_info->interruptcoalescingmaxvalue[i]); in ucc_geth_startup()
2615 ug_info->interruptcoalescingmaxvalue[i]); in ucc_geth_startup()
2622 out_be16(&ugeth->p_rx_glbl_pram->mflr, ug_info->maxFrameLength); in ucc_geth_startup()
2624 init_min_frame_len(ug_info->minFrameLength, in ucc_geth_startup()
2628 out_be16(&ugeth->p_rx_glbl_pram->maxd1, ug_info->maxD1Length); in ucc_geth_startup()
2630 out_be16(&ugeth->p_rx_glbl_pram->maxd2, ug_info->maxD2Length); in ucc_geth_startup()
2635 l2qt |= (ug_info->l2qt[i] << (28 - 4 * i)); in ucc_geth_startup()
2642 l3qt |= (ug_info->l3qt[j + i] << (28 - 4 * i)); in ucc_geth_startup()
2647 out_be16(&ugeth->p_rx_glbl_pram->vlantype, ug_info->vlantype); in ucc_geth_startup()
2650 out_be16(&ugeth->p_rx_glbl_pram->vlantci, ug_info->vlantci); in ucc_geth_startup()
2653 out_be32(&ugeth->p_rx_glbl_pram->ecamptr, ug_info->ecamptr); in ucc_geth_startup()
2658 qe_muram_alloc(ucc_geth_rx_queues(ug_info) * in ucc_geth_startup()
2675 for (i = 0; i < ucc_geth_rx_queues(ug_info); i++) { in ucc_geth_startup()
2686 if (ug_info->rxExtendedFiltering) in ucc_geth_startup()
2688 if (ug_info->dynamicMaxFrameLength) in ucc_geth_startup()
2690 if (ug_info->dynamicMinFrameLength) in ucc_geth_startup()
2693 ug_info->vlanOperationTagged << REMODER_VLAN_OPERATION_TAGGED_SHIFT; in ucc_geth_startup()
2695 ug_info-> in ucc_geth_startup()
2697 remoder |= ug_info->rxQoSMode << REMODER_RX_QOS_MODE_SHIFT; in ucc_geth_startup()
2698 remoder |= ((ucc_geth_rx_queues(ug_info) - 1) << REMODER_NUM_OF_QUEUES_SHIFT); in ucc_geth_startup()
2699 if (ug_info->ipCheckSumCheck) in ucc_geth_startup()
2701 if (ug_info->ipAddressAlignment) in ucc_geth_startup()
2708 init_firmware_statistics_gathering_mode((ug_info-> in ucc_geth_startup()
2711 (ug_info->statisticsMode & in ucc_geth_startup()
2724 if (ug_info->rxExtendedFiltering) { in ucc_geth_startup()
2725 if (!ug_info->extendedFilteringChainPointer) { in ucc_geth_startup()
2748 (u32) ug_info->extendedFilteringChainPointer); in ucc_geth_startup()
2800 ((u32) ug_info->numThreadsRx) << ENET_INIT_PARAM_RGF_SHIFT; in ucc_geth_startup()
2802 ((u32) ug_info->numThreadsTx) << ENET_INIT_PARAM_TGF_SHIFT; in ucc_geth_startup()
2805 rx_glbl_pram_offset | ug_info->riscRx; in ucc_geth_startup()
2806 if ((ug_info->largestexternallookupkeysize != in ucc_geth_startup()
2808 (ug_info->largestexternallookupkeysize != in ucc_geth_startup()
2810 (ug_info->largestexternallookupkeysize != in ucc_geth_startup()
2817 ug_info->largestexternallookupkeysize; in ucc_geth_startup()
2819 if (ug_info->rxExtendedFiltering) { in ucc_geth_startup()
2821 if (ug_info->largestexternallookupkeysize == in ucc_geth_startup()
2825 if (ug_info->largestexternallookupkeysize == in ucc_geth_startup()
2836 ug_info->riscRx, 1)) != 0) { in ucc_geth_startup()
2843 tx_glbl_pram_offset | ug_info->riscTx; in ucc_geth_startup()
2850 ug_info->riscTx, 0)) != 0) { in ucc_geth_startup()
2857 for (i = 0; i < ucc_geth_rx_queues(ug_info); i++) { in ucc_geth_startup()
2901 ucc_fast_get_qe_cr_subblock(ugeth->ug_info->uf_info.ucc_num); in ucc_geth_startup()
2941 1) & TX_RING_MOD_MASK(ugeth->ug_info->bdRingLenTx[txQ]); in ucc_geth_start_xmit()
3054 1) & RX_RING_MOD_MASK(ugeth->ug_info->bdRingLenRx[rxQ]); in ucc_geth_rx()
3100 1) & TX_RING_MOD_MASK(ugeth->ug_info->bdRingLenTx[txQ]); in ucc_geth_tx()
3121 struct ucc_geth_info *ug_info; in ucc_geth_poll() local
3124 ug_info = ugeth->ug_info; in ucc_geth_poll()
3128 for (i = 0; i < ucc_geth_tx_queues(ug_info); i++) in ucc_geth_poll()
3133 for (i = 0; i < ucc_geth_rx_queues(ug_info); i++) in ucc_geth_poll()
3149 struct ucc_geth_info *ug_info; in ucc_geth_irq_handler() local
3156 ug_info = ugeth->ug_info; in ucc_geth_irq_handler()
3193 int irq = ugeth->ug_info->uf_info.irq; in ucc_netpoll()
3306 err = request_irq(ugeth->ug_info->uf_info.irq, ucc_geth_irq_handler, in ucc_geth_open()
3343 free_irq(ugeth->ug_info->uf_info.irq, ugeth->ndev); in ucc_geth_close()
3562 struct ucc_geth_info *ug_info; in ucc_geth_probe() local
3594 ug_info = kmemdup(&ugeth_primary_info, sizeof(*ug_info), GFP_KERNEL); in ucc_geth_probe()
3595 if (ug_info == NULL) in ucc_geth_probe()
3598 ug_info->uf_info.ucc_num = ucc_num; in ucc_geth_probe()
3600 err = ucc_geth_parse_clock(np, "rx", &ug_info->uf_info.rx_clock); in ucc_geth_probe()
3603 err = ucc_geth_parse_clock(np, "tx", &ug_info->uf_info.tx_clock); in ucc_geth_probe()
3611 ug_info->uf_info.regs = res.start; in ucc_geth_probe()
3612 ug_info->uf_info.irq = irq_of_parse_and_map(np, 0); in ucc_geth_probe()
3614 ug_info->phy_node = of_parse_phandle(np, "phy-handle", 0); in ucc_geth_probe()
3615 if (!ug_info->phy_node && of_phy_is_fixed_link(np)) { in ucc_geth_probe()
3623 ug_info->phy_node = of_node_get(np); in ucc_geth_probe()
3627 ug_info->tbi_node = of_parse_phandle(np, "tbi-handle", 0); in ucc_geth_probe()
3633 prop = of_get_property(ug_info->phy_node, "interface", NULL); in ucc_geth_probe()
3665 ug_info->uf_info.urfs = UCC_GETH_URFS_GIGA_INIT; in ucc_geth_probe()
3666 ug_info->uf_info.urfet = UCC_GETH_URFET_GIGA_INIT; in ucc_geth_probe()
3667 ug_info->uf_info.urfset = UCC_GETH_URFSET_GIGA_INIT; in ucc_geth_probe()
3668 ug_info->uf_info.utfs = UCC_GETH_UTFS_GIGA_INIT; in ucc_geth_probe()
3669 ug_info->uf_info.utfet = UCC_GETH_UTFET_GIGA_INIT; in ucc_geth_probe()
3670 ug_info->uf_info.utftt = UCC_GETH_UTFTT_GIGA_INIT; in ucc_geth_probe()
3671 ug_info->numThreadsTx = UCC_GETH_NUM_OF_THREADS_4; in ucc_geth_probe()
3678 ug_info->numThreadsRx = UCC_GETH_NUM_OF_THREADS_6; in ucc_geth_probe()
3680 ug_info->numThreadsRx = UCC_GETH_NUM_OF_THREADS_4; in ucc_geth_probe()
3685 ug_info->uf_info.ucc_num + 1, in ucc_geth_probe()
3686 (u64)ug_info->uf_info.regs, in ucc_geth_probe()
3687 ug_info->uf_info.irq); in ucc_geth_probe()
3707 dev->base_addr = (unsigned long)(ug_info->uf_info.regs); in ucc_geth_probe()
3737 ugeth->ug_info = ug_info; in ucc_geth_probe()
3749 of_node_put(ug_info->tbi_node); in ucc_geth_probe()
3750 of_node_put(ug_info->phy_node); in ucc_geth_probe()
3752 kfree(ug_info); in ucc_geth_probe()
3767 of_node_put(ugeth->ug_info->tbi_node); in ucc_geth_remove()
3768 of_node_put(ugeth->ug_info->phy_node); in ucc_geth_remove()
3769 kfree(ugeth->ug_info); in ucc_geth_remove()