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

Lines Matching defs:interface

44 void __cvmx_interrupt_gmxx_enable(int interface);
51 * @interface: Interface to init
52 * @index: Index of prot on the interface
56 static int __cvmx_helper_sgmii_hardware_init_one_time(int interface, int index)
64 gmxx_prtx_cfg.u64 = cvmx_read_csr(CVMX_GMXX_PRTX_CFG(index, interface));
66 cvmx_write_csr(CVMX_GMXX_PRTX_CFG(index, interface), gmxx_prtx_cfg.u64);
74 cvmx_read_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface));
76 cvmx_read_csr(CVMX_PCSX_LINKX_TIMER_COUNT_REG(index, interface));
86 cvmx_write_csr(CVMX_PCSX_LINKX_TIMER_COUNT_REG(index, interface),
102 cvmx_read_csr(CVMX_PCSX_ANX_ADV_REG(index, interface));
107 cvmx_write_csr(CVMX_PCSX_ANX_ADV_REG(index, interface),
112 cvmx_read_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface));
118 (index, interface));
123 (index, interface),
136 * @interface: Interface to init
137 * @index: Index of prot on the interface
141 static int __cvmx_helper_sgmii_hardware_init_link(int interface, int index)
154 cvmx_read_csr(CVMX_PCSX_MRX_CONTROL_REG(index, interface));
157 cvmx_write_csr(CVMX_PCSX_MRX_CONTROL_REG(index, interface),
160 (CVMX_PCSX_MRX_CONTROL_REG(index, interface),
164 interface, index);
176 cvmx_write_csr(CVMX_PCSX_MRX_CONTROL_REG(index, interface),
186 CVMX_WAIT_FOR_FIELD64(CVMX_PCSX_MRX_STATUS_REG(index, interface),
189 /* cvmx_dprintf("SGMII%d: Port %d link timeout\n", interface, index); */
199 * @interface: Interface to init
200 * @index: Index of prot on the interface
205 static int __cvmx_helper_sgmii_hardware_init_link_speed(int interface,
215 gmxx_prtx_cfg.u64 = cvmx_read_csr(CVMX_GMXX_PRTX_CFG(index, interface));
218 cvmx_write_csr(CVMX_GMXX_PRTX_CFG(index, interface), gmxx_prtx_cfg.u64);
222 (CVMX_GMXX_PRTX_CFG(index, interface), union cvmx_gmxx_prtx_cfg,
224 || CVMX_WAIT_FOR_FIELD64(CVMX_GMXX_PRTX_CFG(index, interface),
229 interface, index);
234 gmxx_prtx_cfg.u64 = cvmx_read_csr(CVMX_GMXX_PRTX_CFG(index, interface));
241 cvmx_read_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface));
261 cvmx_write_csr(CVMX_GMXX_TXX_SLOT(index, interface), 64);
262 cvmx_write_csr(CVMX_GMXX_TXX_BURST(index, interface), 0);
269 cvmx_write_csr(CVMX_GMXX_TXX_SLOT(index, interface), 64);
270 cvmx_write_csr(CVMX_GMXX_TXX_BURST(index, interface), 0);
277 cvmx_write_csr(CVMX_GMXX_TXX_SLOT(index, interface), 512);
278 cvmx_write_csr(CVMX_GMXX_TXX_BURST(index, interface), 8192);
285 cvmx_write_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface),
289 cvmx_write_csr(CVMX_GMXX_PRTX_CFG(index, interface), gmxx_prtx_cfg.u64);
292 gmxx_prtx_cfg.u64 = cvmx_read_csr(CVMX_GMXX_PRTX_CFG(index, interface));
296 cvmx_write_csr(CVMX_GMXX_PRTX_CFG(index, interface), gmxx_prtx_cfg.u64);
302 * Bring up the SGMII interface to be ready for packet I/O but
306 * @interface: Interface to bringup
307 * @num_ports: Number of ports on the interface
311 static int __cvmx_helper_sgmii_hardware_init(int interface, int num_ports)
315 __cvmx_helper_setup_gmx(interface, num_ports);
318 int ipd_port = cvmx_helper_get_ipd_port(interface, index);
319 __cvmx_helper_sgmii_hardware_init_one_time(interface, index);
330 * Probe a SGMII interface and determine the number of ports
331 * connected to it. The SGMII interface should still be down after
334 * @interface: Interface to probe
336 * Returns Number of ports on the interface. Zero to disable.
338 int __cvmx_helper_sgmii_probe(int interface)
344 * interface needs to be enabled before IPD otherwise per port
347 mode.u64 = cvmx_read_csr(CVMX_GMXX_INF_MODE(interface));
349 cvmx_write_csr(CVMX_GMXX_INF_MODE(interface), mode.u64);
354 * Bringup and enable a SGMII interface. After this call packet
358 * @interface: Interface to bring up
362 int __cvmx_helper_sgmii_enable(int interface)
364 int num_ports = cvmx_helper_ports_on_interface(interface);
367 __cvmx_helper_sgmii_hardware_init(interface, num_ports);
372 cvmx_read_csr(CVMX_GMXX_PRTX_CFG(index, interface));
374 cvmx_write_csr(CVMX_GMXX_PRTX_CFG(index, interface),
376 __cvmx_interrupt_pcsx_intx_en_reg_enable(index, interface);
378 __cvmx_interrupt_pcsxx_int_en_reg_enable(interface);
379 __cvmx_interrupt_gmxx_enable(interface);
397 int interface = cvmx_helper_get_interface_num(ipd_port);
412 cvmx_read_csr(CVMX_PCSX_MRX_CONTROL_REG(index, interface));
422 cvmx_read_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface));
428 cvmx_read_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface));
440 (index, interface));
443 (interface, index) != 0)
450 (index, interface));
506 int interface = cvmx_helper_get_interface_num(ipd_port);
508 __cvmx_helper_sgmii_hardware_init_link(interface, index);
509 return __cvmx_helper_sgmii_hardware_init_link_speed(interface, index,
530 int interface = cvmx_helper_get_interface_num(ipd_port);
536 cvmx_read_csr(CVMX_PCSX_MRX_CONTROL_REG(index, interface));
538 cvmx_write_csr(CVMX_PCSX_MRX_CONTROL_REG(index, interface),
542 cvmx_read_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface));
544 cvmx_write_csr(CVMX_PCSX_MISCX_CTL_REG(index, interface),
547 __cvmx_helper_sgmii_hardware_init_link(interface, index);