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

Lines Matching refs:niu

0 /* niu.c: Neptune ethernet driver.
33 #include "niu.h"
35 #define DRV_MODULE_NAME "niu"
96 static int serdes_init_10g_serdes(struct niu *np);
98 static int __niu_wait_bits_clear_mac(struct niu *np, unsigned long reg,
113 static int __niu_set_and_wait_clear_mac(struct niu *np, unsigned long reg,
133 static int __niu_wait_bits_clear_ipp(struct niu *np, unsigned long reg,
148 static int __niu_set_and_wait_clear_ipp(struct niu *np, unsigned long reg,
172 static int __niu_wait_bits_clear(struct niu *np, unsigned long reg,
192 static int __niu_set_and_wait_clear(struct niu *np, unsigned long reg,
212 static void niu_ldg_rearm(struct niu *np, struct niu_ldg *lp, int on)
222 static int niu_ldn_irq_enable(struct niu *np, int ldn, int on)
248 static int niu_enable_ldn_in_ldg(struct niu *np, struct niu_ldg *lp, int on)
266 static int niu_enable_interrupts(struct niu *np, int on)
294 static int mdio_wait(struct niu *np)
310 static int mdio_read(struct niu *np, int port, int dev, int reg)
323 static int mdio_write(struct niu *np, int port, int dev, int reg, int data)
340 static int mii_read(struct niu *np, int port, int reg)
346 static int mii_write(struct niu *np, int port, int reg, int data)
358 static int esr2_set_tx_cfg(struct niu *np, unsigned long channel, u32 val)
372 static int esr2_set_rx_cfg(struct niu *np, unsigned long channel, u32 val)
387 static int serdes_init_niu_10g_fiber(struct niu *np)
424 static int serdes_init_niu_1g_serdes(struct niu *np)
521 static int serdes_init_niu_10g_serdes(struct niu *np)
636 static int esr_read_rxtx_ctrl(struct niu *np, unsigned long chan, u32 *val)
652 static int esr_read_glue0(struct niu *np, unsigned long chan, u32 *val)
670 static int esr_read_reset(struct niu *np, u32 *val)
688 static int esr_write_rxtx_ctrl(struct niu *np, unsigned long chan, u32 val)
700 static int esr_write_glue0(struct niu *np, unsigned long chan, u32 val)
712 static int esr_reset(struct niu *np)
751 static int serdes_init_10g(struct niu *np)
877 static int serdes_init_1g(struct niu *np)
904 static int serdes_init_1g_serdes(struct niu *np)
1025 static int link_status_1g_serdes(struct niu *np, int *link_up_p)
1056 static int link_status_10g_serdes(struct niu *np, int *link_up_p)
1090 static int link_status_mii(struct niu *np, int *link_up_p)
1214 static int link_status_1g_rgmii(struct niu *np, int *link_up_p)
1270 static int link_status_1g(struct niu *np, int *link_up_p)
1286 static int bcm8704_reset(struct niu *np)
1320 static int bcm8704_user_dev3_readback(struct niu *np, int reg)
1331 static int bcm8706_init_user_dev3(struct niu *np)
1353 static int bcm8704_init_user_dev3(struct niu *np)
1403 static int mrvl88x2011_act_led(struct niu *np, int val)
1419 static int mrvl88x2011_led_blink_rate(struct niu *np, int rate)
1436 static int xcvr_init_10g_mrvl88x2011(struct niu *np)
1483 static int xcvr_diag_bcm870x(struct niu *np)
1538 static int xcvr_10g_set_lb_bcm870x(struct niu *np)
1561 static int xcvr_init_10g_bcm8706(struct niu *np)
1598 static int xcvr_init_10g_bcm8704(struct niu *np)
1621 static int xcvr_init_10g(struct niu *np)
1652 static int mii_reset(struct niu *np)
1678 static int xcvr_init_1g_rgmii(struct niu *np)
1738 static int mii_init_common(struct niu *np)
1859 static int xcvr_init_1g(struct niu *np)
1870 static int niu_xcvr_init(struct niu *np)
1882 static int niu_serdes_init(struct niu *np)
1894 static void niu_init_xif(struct niu *);
1895 static void niu_handle_led(struct niu *, int status);
1897 static int niu_link_status_common(struct niu *np, int link_up)
1928 static int link_status_10g_mrvl(struct niu *np, int *link_up_p)
1984 static int link_status_10g_bcm8706(struct niu *np, int *link_up_p)
2035 static int link_status_10g_bcom(struct niu *np, int *link_up_p)
2084 static int link_status_10g(struct niu *np, int *link_up_p)
2114 static int niu_10g_phy_present(struct niu *np)
2151 static int link_status_10g_hotplug(struct niu *np, int *link_up_p)
2205 static int niu_link_status(struct niu *np, int *link_up_p)
2219 struct niu *np = (struct niu *) __opaque;
2360 static int serdes_init_10g_serdes(struct niu *np)
2492 static int niu_determine_phy_disposition(struct niu *np)
2599 static int niu_init_link(struct niu *np)
2620 static void niu_set_primary_mac(struct niu *np, unsigned char *addr)
2637 static int niu_num_alt_addr(struct niu *np)
2645 static int niu_set_alt_mac(struct niu *np, int index, unsigned char *addr)
2667 static int niu_enable_alt_mac(struct niu *np, int index, int on)
2693 static void __set_rdc_table_num_hw(struct niu *np, unsigned long reg,
2704 static int __set_rdc_table_num(struct niu *np,
2720 static int niu_set_primary_mac_rdc_table(struct niu *np, int table_num,
2726 static int niu_set_multicast_mac_rdc_table(struct niu *np, int table_num,
2732 static int niu_set_alt_mac_rdc_table(struct niu *np, int idx,
2761 static void vlan_tbl_write(struct niu *np, unsigned long index,
2779 static void vlan_tbl_clear(struct niu *np)
2787 static int tcam_wait_bit(struct niu *np, u64 bit)
2802 static int tcam_flush(struct niu *np, int index)
2812 static int tcam_write(struct niu *np, int index,
2829 static int tcam_assoc_write(struct niu *np, int index, u64 assoc_data)
2837 static void tcam_enable(struct niu *np, int on)
2848 static void tcam_set_lat_and_ratio(struct niu *np, u64 latency, u64 ratio)
2864 static int tcam_user_eth_class_enable(struct niu *np, unsigned long class,
2886 static int tcam_user_ip_class_enable(struct niu *np, unsigned long class,
2907 static int tcam_user_ip_class_set(struct niu *np, unsigned long class,
2935 static int tcam_early_init(struct niu *np)
2958 static int tcam_flush_all(struct niu *np)
2977 static int hash_write(struct niu *np, unsigned long partition,
2995 static void fflp_reset(struct niu *np)
3007 static void fflp_set_timings(struct niu *np)
3026 static int fflp_set_partition(struct niu *np, u64 partition,
3050 static int fflp_disable_all_partitions(struct niu *np)
3062 static void fflp_llcsnap_enable(struct niu *np, int on)
3073 static void fflp_errors_enable(struct niu *np, int on)
3084 static int fflp_hash_clear(struct niu *np)
3101 static int fflp_early_init(struct niu *np)
3160 static int niu_set_flow_key(struct niu *np, unsigned long class_code, u64 key)
3170 static int niu_set_tcam_key(struct niu *np, unsigned long class_code, u64 key)
3181 static u16 tcam_get_index(struct niu *np, u16 idx)
3189 static u16 tcam_get_size(struct niu *np)
3195 static u16 tcam_get_valid_entry_cnt(struct niu *np)
3255 static int niu_rbr_add_page(struct niu *np, struct rx_ring_info *rp,
3284 static void niu_rbr_refill(struct niu *np, struct rx_ring_info *rp, gfp_t mask)
3309 static int niu_rx_pkt_ignore(struct niu *np, struct rx_ring_info *rp)
3349 static int niu_process_rx_pkt(struct napi_struct *napi, struct niu *np,
3438 static int niu_rbr_fill(struct niu *np, struct rx_ring_info *rp, gfp_t mask)
3456 static void niu_rbr_free(struct niu *np, struct rx_ring_info *rp)
3484 static int release_tx_packet(struct niu *np, struct tx_ring_info *rp, int idx)
3528 static void niu_tx_work(struct niu *np, struct tx_ring_info *rp)
3570 static inline void niu_sync_rx_discard_stats(struct niu *np,
3622 static int niu_rx_work(struct napi_struct *napi, struct niu *np,
3666 static int niu_poll_core(struct niu *np, struct niu_ldg *lp, int budget)
3704 struct niu *np = lp->np;
3716 static void niu_log_rxchan_errors(struct niu *np, struct rx_ring_info *rp,
3753 static int niu_rx_error(struct niu *np, struct rx_ring_info *rp)
3777 static void niu_log_txchan_errors(struct niu *np, struct tx_ring_info *rp,
3802 static int niu_tx_error(struct niu *np, struct tx_ring_info *rp)
3821 static int niu_mif_interrupt(struct niu *np)
3839 static void niu_xmac_interrupt(struct niu *np)
3911 static void niu_bmac_interrupt(struct niu *np)
3947 static int niu_mac_interrupt(struct niu *np)
3957 static void niu_log_device_error(struct niu *np, u64 stat)
3987 static int niu_device_error(struct niu *np)
3999 static int niu_slowpath_interrupt(struct niu *np, struct niu_ldg *lp,
4064 static void niu_rxchan_intr(struct niu *np, struct rx_ring_info *rp,
4078 static void niu_txchan_intr(struct niu *np, struct tx_ring_info *rp,
4087 static void __niu_fastpath_interrupt(struct niu *np, int ldg, u64 v0)
4121 static void niu_schedule_napi(struct niu *np, struct niu_ldg *lp,
4136 struct niu *np = lp->np;
4177 static void niu_free_rx_ring_info(struct niu *np, struct rx_ring_info *rp)
4207 static void niu_free_tx_ring_info(struct niu *np, struct tx_ring_info *rp)
4234 static void niu_free_channels(struct niu *np)
4261 static int niu_alloc_rx_ring_info(struct niu *np,
4312 static void niu_set_max_burst(struct niu *np, struct tx_ring_info *rp)
4324 static int niu_alloc_tx_ring_info(struct niu *np,
4363 static void niu_size_rbr(struct niu *np, struct rx_ring_info *rp)
4390 static int niu_alloc_channels(struct niu *np)
4465 static int niu_tx_cs_sng_poll(struct niu *np, int channel)
4477 static int niu_tx_channel_stop(struct niu *np, int channel)
4487 static int niu_tx_cs_reset_poll(struct niu *np, int channel)
4499 static int niu_tx_channel_reset(struct niu *np, int channel)
4514 static int niu_tx_channel_lpage_init(struct niu *np, int channel)
4534 static void niu_txc_enable_port(struct niu *np, int on)
4553 static void niu_txc_set_imask(struct niu *np, u64 imask)
4565 static void niu_txc_port_dma_enable(struct niu *np, int on)
4578 static int niu_init_one_tx_channel(struct niu *np, struct tx_ring_info *rp)
4632 static void niu_init_rdc_groups(struct niu *np)
4650 static void niu_init_drr_weight(struct niu *np)
4668 static int niu_init_hostinfo(struct niu *np)
4692 static int niu_rx_channel_reset(struct niu *np, int channel)
4699 static int niu_rx_channel_lpage_init(struct niu *np, int channel)
4718 static void niu_rx_channel_wred_init(struct niu *np, struct rx_ring_info *rp)
4809 static int niu_enable_rx_channel(struct niu *np, int channel, int on)
4831 static int niu_init_one_rx_channel(struct niu *np, struct rx_ring_info *rp)
4884 static int niu_init_rx_channels(struct niu *np)
4914 static int niu_set_ip_frag_rule(struct niu *np)
4944 static int niu_init_classifier_hw(struct niu *np)
4993 static int niu_zcp_write(struct niu *np, int index, u64 *data)
5010 static int niu_zcp_read(struct niu *np, int index, u64 *data)
5044 static void niu_zcp_cfifo_reset(struct niu *np)
5056 static int niu_init_zcp(struct niu *np)
5093 static void niu_ipp_write(struct niu *np, int index, u64 *data)
5107 static void niu_ipp_read(struct niu *np, int index, u64 *data)
5117 static int niu_ipp_reset(struct niu *np)
5123 static int niu_init_ipp(struct niu *np)
5174 static void niu_handle_led(struct niu *np, int status)
5193 static void niu_init_xif_xmac(struct niu *np)
5250 static void niu_init_xif_bmac(struct niu *np)
5280 static void niu_init_xif(struct niu *np)
5288 static void niu_pcs_mii_reset(struct niu *np)
5300 static void niu_xpcs_reset(struct niu *np)
5312 static int niu_init_pcs(struct niu *np)
5376 static int niu_reset_tx_xmac(struct niu *np)
5384 static int niu_reset_tx_bmac(struct niu *np)
5405 static int niu_reset_tx_mac(struct niu *np)
5413 static void niu_init_tx_xmac(struct niu *np, u64 min, u64 max)
5449 static void niu_init_tx_bmac(struct niu *np, u64 min, u64 max)
5466 static void niu_init_tx_mac(struct niu *np)
5487 static int niu_reset_rx_xmac(struct niu *np)
5510 static int niu_reset_rx_bmac(struct niu *np)
5531 static int niu_reset_rx_mac(struct niu *np)
5539 static void niu_init_rx_xmac(struct niu *np)
5591 static void niu_init_rx_bmac(struct niu *np)
5626 static void niu_init_rx_mac(struct niu *np)
5636 static void niu_enable_tx_xmac(struct niu *np, int on)
5647 static void niu_enable_tx_bmac(struct niu *np, int on)
5658 static void niu_enable_tx_mac(struct niu *np, int on)
5666 static void niu_enable_rx_xmac(struct niu *np, int on)
5685 static void niu_enable_rx_bmac(struct niu *np, int on)
5704 static void niu_enable_rx_mac(struct niu *np, int on)
5712 static int niu_init_mac(struct niu *np)
5743 static void niu_stop_one_tx_channel(struct niu *np, struct tx_ring_info *rp)
5748 static void niu_stop_tx_channels(struct niu *np)
5759 static void niu_reset_one_tx_channel(struct niu *np, struct tx_ring_info *rp)
5764 static void niu_reset_tx_channels(struct niu *np)
5775 static void niu_stop_one_rx_channel(struct niu *np, struct rx_ring_info *rp)
5780 static void niu_stop_rx_channels(struct niu *np)
5791 static void niu_reset_one_rx_channel(struct niu *np, struct rx_ring_info *rp)
5801 static void niu_reset_rx_channels(struct niu *np)
5812 static void niu_disable_ipp(struct niu *np)
5841 static int niu_init_hw(struct niu *np)
5903 static void niu_stop_hw(struct niu *np)
5927 static void niu_set_irq_name(struct niu *np)
5950 static int niu_request_irq(struct niu *np)
5979 static void niu_free_irq(struct niu *np)
5990 static void niu_enable_napi(struct niu *np)
5998 static void niu_disable_napi(struct niu *np)
6008 struct niu *np = netdev_priv(dev);
6067 static void niu_full_shutdown(struct niu *np, struct net_device *dev)
6085 struct niu *np = netdev_priv(dev);
6098 static void niu_sync_xmac_stats(struct niu *np)
6123 static void niu_sync_bmac_stats(struct niu *np)
6136 static void niu_sync_mac_stats(struct niu *np)
6144 static void niu_get_rx_stats(struct niu *np)
6166 static void niu_get_tx_stats(struct niu *np)
6186 struct niu *np = netdev_priv(dev);
6194 static void niu_load_hash_xmac(struct niu *np, u16 *hash)
6202 static void niu_load_hash_bmac(struct niu *np, u16 *hash)
6210 static void niu_load_hash(struct niu *np, u16 *hash)
6220 struct niu *np = netdev_priv(dev);
6290 struct niu *np = netdev_priv(dev);
6316 static void niu_netif_stop(struct niu *np)
6325 static void niu_netif_start(struct niu *np)
6338 static void niu_reset_buffers(struct niu *np)
6390 struct niu *np = container_of(work, struct niu, reset_task);
6428 struct niu *np = netdev_priv(dev);
6516 struct niu *np = netdev_priv(dev);
6645 struct niu *np = netdev_priv(dev);
6700 struct niu *np = netdev_priv(dev);
6713 struct niu *np = netdev_priv(dev);
6734 struct niu *np = netdev_priv(dev);
6746 struct niu *np = netdev_priv(dev);
6752 struct niu *np = netdev_priv(dev);
6758 struct niu *np = netdev_priv(dev);
6768 struct niu *np = netdev_priv(dev);
6776 struct niu *np = netdev_priv(dev);
6970 static int niu_get_hash_opts(struct niu *np, struct ethtool_rxnfc *nfc)
7082 static int niu_get_ethtool_tcam_entry(struct niu *np,
7096 netdev_info(np->dev, "niu%d: entry [%d] invalid for idx[%d]\n",
7107 netdev_info(np->dev, "niu%d: niu_class_to_ethflow failed\n",
7163 static int niu_get_ethtool_tcam_all(struct niu *np,
7197 struct niu *np = netdev_priv(dev);
7224 static int niu_set_hash_opts(struct niu *np, struct ethtool_rxnfc *nfc)
7341 static int niu_add_ethtool_tcam_entry(struct niu *np,
7415 netdev_info(np->dev, "niu%d: %s(): Could not find/insert class for pid %d\n",
7449 netdev_info(np->dev, "niu%d: In %s(): flow %d for IPv6 not implemented\n",
7459 netdev_info(np->dev, "niu%d: In %s(): usr flow for IPv6 not implemented\n",
7466 netdev_info(np->dev, "niu%d: In %s(): Unknown flow type %d\n",
7477 netdev_info(np->dev, "niu%d: In %s(): Invalid RX ring %lld\n",
7508 static int niu_del_ethtool_tcam_entry(struct niu *np, u32 loc)
7548 netdev_info(np->dev, "niu%d: In %s(): Usr class 0x%llx not found\n",
7571 struct niu *np = netdev_priv(dev);
7672 struct niu *np = netdev_priv(dev);
7701 struct niu *np = netdev_priv(dev);
7716 struct niu *np = netdev_priv(dev);
7752 static u64 niu_led_state_save(struct niu *np)
7760 static void niu_led_state_restore(struct niu *np, u64 val)
7768 static void niu_force_led(struct niu *np, int on)
7790 struct niu *np = netdev_priv(dev);
7839 static int niu_ldg_assign_ldn(struct niu *np, struct niu_parent *parent,
7867 static int niu_set_ldg_timer_res(struct niu *np, int res)
7878 static int niu_set_ldg_sid(struct niu *np, int ldg, int func, int vector)
7890 static int __devinit niu_pci_eeprom_read(struct niu *np, u32 addr)
7933 static int __devinit niu_pci_eeprom_read16(struct niu *np, u32 off)
7949 static int __devinit niu_pci_eeprom_read16_swp(struct niu *np, u32 off)
7967 static int __devinit niu_pci_vpd_get_propname(struct niu *np,
7988 static void __devinit niu_vpd_parse_version(struct niu *np)
8015 static int __devinit niu_pci_vpd_scan_props(struct niu *np,
8104 static void __devinit niu_pci_vpd_fetch(struct niu *np, u32 start)
8139 static u32 __devinit niu_pci_vpd_offset(struct niu *np)
8194 static int __devinit niu_phy_type_prop_decode(struct niu *np,
8229 static int niu_pci_vpd_get_nports(struct niu *np)
8249 static void __devinit niu_pci_vpd_validate(struct niu *np)
8295 static int __devinit niu_pci_probe_sprom(struct niu *np)
8453 static int __devinit niu_get_and_validate_port(struct niu *np)
8507 pr_info("niu%d: Found PHY %08x type %s at phy_port %u\n",
8575 pr_info("niu%d: Port %u [%u RX chans] [%u TX chans]\n",
8618 pr_info("niu%d: Port %u [%u RX chans] [%u TX chans]\n",
8627 pr_err("niu%d: Too many RX channels (%d), resetting to one per port\n",
8633 pr_err("niu%d: Too many TX channels (%d), resetting to one per port\n",
8639 pr_warning("niu%d: Driver bug, wasted channels, RX[%d] TX[%d]\n",
8668 pr_info("niu%d: Port %d RDC tbl(%d) [ ",
8689 static int __devinit fill_phy_probe_info(struct niu *np,
8732 static int __devinit walk_phys(struct niu *np, struct niu_parent *parent)
8861 static int __devinit niu_probe_ports(struct niu *np)
8882 static int __devinit niu_classifier_swstate_init(struct niu *np)
8894 static void __devinit niu_link_config_init(struct niu *np)
8913 static int __devinit niu_init_mac_ipp_pcs_base(struct niu *np)
8952 static void __devinit niu_try_msix(struct niu *np, u8 *ldg_num_map)
8991 static int __devinit niu_n2_irq_init(struct niu *np, u8 *ldg_num_map)
9015 static int __devinit niu_ldg_init(struct niu *np)
9132 static void __devexit niu_ldg_free(struct niu *np)
9138 static int __devinit niu_get_of_props(struct niu *np)
9207 static int __devinit niu_get_invariants(struct niu *np)
9318 type_str = "niu";
9386 static struct niu_parent * __devinit niu_new_parent(struct niu *np,
9394 plat_dev = platform_device_register_simple("niu", niu_parent_index,
9451 static struct niu_parent * __devinit niu_get_parent(struct niu *np,
9487 static void niu_put_parent(struct niu *np)
9583 struct niu *np;
9585 dev = alloc_etherdev_mq(sizeof(struct niu), NIU_NUM_TXCHAN);
9630 static void __devinit niu_device_announce(struct niu *np)
9670 struct niu *np;
9811 struct niu *np = netdev_priv(dev);
9833 struct niu *np = netdev_priv(dev);
9862 struct niu *np = netdev_priv(dev);
9960 struct niu *np;
9995 "niu regs");
10004 "niu vregs-1");
10013 "niu vregs-2");
10075 struct niu *np = netdev_priv(dev);
10118 .name = "niu",