Lines Matching defs:interface

77 int __cvmx_helper_ilk_enumerate(int interface)
79 interface -= CVMX_ILK_GBL_BASE;
80 return cvmx_ilk_chans[interface];
85 * Probe a ILK interface and determine the number of ports
86 * connected to it. The ILK interface should still be down
89 * @param interface Interface to probe
91 * @return Number of ports on the interface. Zero to disable.
93 int __cvmx_helper_ilk_probe(int interface)
104 interface -= CVMX_ILK_GBL_BASE;
105 if (interface >= CVMX_NUM_ILK_INTF)
109 if (cvmx_ilk_get_intf_ena (interface))
110 return cvmx_ilk_chans[interface];
113 res = cvmx_ilk_start_interface (interface, cvmx_ilk_lane_mask[interface]);
119 pipe_base = __cvmx_pko_get_pipe (interface + CVMX_ILK_GBL_BASE, 0);
127 res = cvmx_ilk_set_pipe (interface, pipe_base, cvmx_ilk_chans[interface]);
148 for (j = 0; j < cvmx_ilk_chans[interface]; j++)
151 tmp->chan = cvmx_ilk_chan_map[interface][j];
154 res = cvmx_ilk_tx_set_channel (interface, pch, cvmx_ilk_chans[interface]);
160 pipe_base += cvmx_ilk_chans[interface];
164 pknd_base = cvmx_helper_get_pknd (interface + CVMX_ILK_GBL_BASE, 0);
178 pipe_base -= cvmx_ilk_chans[interface];
186 for (j = 0; j < cvmx_ilk_chans[interface]; j++)
188 tmp1->chan = cvmx_ilk_chan_map[interface][j];
192 res = cvmx_ilk_rx_set_pknd (interface, chpknd, cvmx_ilk_chans[interface]);
195 pipe_base -= cvmx_ilk_chans[interface];
199 pknd_base += cvmx_ilk_chans[interface];
213 pipe_base -= cvmx_ilk_chans[interface];
214 pknd_base -= cvmx_ilk_chans[interface];
223 for (j = 0; j < cvmx_ilk_chans[interface]; j++)
230 res = cvmx_ilk_cal_setup_tx (interface, cvmx_ilk_chans[interface],
234 pipe_base -= cvmx_ilk_chans[interface];
235 pknd_base -= cvmx_ilk_chans[interface];
245 for (j = 0; j < cvmx_ilk_chans[interface]; j++)
252 res = cvmx_ilk_cal_setup_rx (interface, cvmx_ilk_chans[interface],
256 pipe_base -= cvmx_ilk_chans[interface];
257 pknd_base -= cvmx_ilk_chans[interface];
261 res = __cvmx_helper_ilk_enumerate(interface + CVMX_ILK_GBL_BASE);
291 * Bringup and enable ILK interface. After this call packet
295 * @param interface Interface to bring up
299 int __cvmx_helper_ilk_enable(int interface)
301 interface -= CVMX_ILK_GBL_BASE;
302 return cvmx_ilk_enable(interface);
316 int interface = cvmx_helper_get_interface_num(ipd_port);
323 interface -= CVMX_ILK_GBL_BASE;
330 ilk_rxx_cfg1.u64 = cvmx_read_csr (CVMX_ILK_RXX_CFG1(interface));
331 ilk_rxx_int.u64 = cvmx_read_csr (CVMX_ILK_RXX_INT(interface));
335 cvmx_write_csr(CVMX_ILK_RXX_INT(interface), ilk_rxx_int.u64);
340 ilk_rxx_cfg1.s.rx_bdry_lock_ena = cvmx_ilk_get_intf_ln_msk(interface);
342 cvmx_write_csr(CVMX_ILK_RXX_CFG1(interface), ilk_rxx_cfg1.u64);
343 //cvmx_dprintf("ILK%d: Looking for word boundary lock\n", interface);
352 cvmx_write_csr(CVMX_ILK_RXX_CFG1(interface), ilk_rxx_cfg1.u64);
353 //printf("ILK%d: Looking for lane alignment\n", interface);
363 cvmx_write_csr(CVMX_ILK_RXX_CFG1(interface), ilk_rxx_cfg1.u64);
364 cvmx_dprintf("ILK%d: Lane alignment failed\n", interface);
370 //cvmx_dprintf("ILK%d: Lane alignment complete\n", interface);
377 result.s.speed = cvmx_qlm_get_gbaud_mhz(1+interface) * 64 / 67;
386 ilk_txx_cfg1.u64 = cvmx_read_csr(CVMX_ILK_TXX_CFG1(interface));
388 cvmx_write_csr(CVMX_ILK_RXX_CFG1(interface), ilk_rxx_cfg1.u64);
389 //cvmx_dprintf("ILK%d: link up, %d Mbps, Full duplex mode, %d lanes\n", interface, result.s.speed, lanes);
394 cvmx_write_csr(CVMX_ILK_RXX_CFG1(interface), ilk_rxx_cfg1.u64);
417 * Display ilk interface statistics.