Lines Matching refs:qlm

44  * Helper utilities for qlm.
52 #include <asm/octeon/cvmx-qlm.h>
64 #include "cvmx-qlm.h"
69 #include "cvmx-qlm.h"
127 * Return the qlm number based on the interface
149 * Return number of lanes for a given qlm
153 int cvmx_qlm_get_lanes(int qlm)
155 if (OCTEON_IS_MODEL(OCTEON_CN61XX) && qlm == 1)
216 int qlm;
272 for (qlm=0; qlm<cvmx_qlm_get_num(); qlm++)
276 cvmx_helper_qlm_jtag_capture(qlm);
280 __cvmx_qlm_jtag_xor_ref[qlm][i] = cvmx_helper_qlm_jtag_shift(qlm, 32, 0);
321 * @param qlm QLM to get
327 uint64_t cvmx_qlm_jtag_get(int qlm, int lane, const char *name)
331 int num_lanes = cvmx_qlm_get_lanes(qlm);
337 cvmx_helper_qlm_jtag_capture(qlm);
339 cvmx_helper_qlm_jtag_shift_zeros(qlm, qlm_jtag_length * (num_lanes-1-lane)); /* Shift to the start of the field */
340 cvmx_helper_qlm_jtag_shift_zeros(qlm, field->start_bit);
342 return cvmx_helper_qlm_jtag_shift(qlm, field->stop_bit - field->start_bit + 1, 0);
348 * @param qlm QLM to set
353 void cvmx_qlm_jtag_set(int qlm, int lane, const char *name, uint64_t value)
357 int num_lanes = cvmx_qlm_get_lanes(qlm);
367 cvmx_helper_qlm_jtag_capture(qlm);
369 shift_values[i] = cvmx_helper_qlm_jtag_shift(qlm, 32, 0);
393 uint32_t shift = shift_values[bits/32] ^ __cvmx_qlm_jtag_xor_ref[qlm][bits/32];
397 cvmx_helper_qlm_jtag_shift(qlm, width, shift);
402 cvmx_helper_qlm_jtag_update(qlm);
418 int qlm;
428 for (qlm = 0; qlm < num_qlms; qlm++)
431 qlm_cfg.u64 = cvmx_read_csr(CVMX_MIO_QLMX_CFG(qlm));
438 cvmx_qlm_jtag_set(qlm, -1, "rx_cap_gen2", 0x1);
439 cvmx_qlm_jtag_set(qlm, -1, "rx_eq_gen2", 0x8);
452 int qlm;
465 for (qlm = 0; qlm < num_qlms; qlm++)
466 cvmx_qlm_jtag_set(qlm, -1, "idle_dac", 0x2);
473 * @param qlm QLM to examine
477 int cvmx_qlm_get_gbaud_mhz(int qlm)
481 if (qlm == 2)
508 status_reg.u64 = cvmx_read_csr(CVMX_SRIOX_STATUS_REG(qlm));
512 sriomaintx_port_0_ctl2.u32 = cvmx_read_csr(CVMX_SRIOMAINTX_PORT_0_CTL2(qlm));
526 pciercx_cfg032.u32 = cvmx_read_csr(CVMX_PCIERCX_CFG032(qlm));
539 if ((qlm == 0) && mio_rst_boot.s.qlm0_spd == 0xf)
541 if ((qlm == 1) && mio_rst_boot.s.qlm1_spd == 0xf)
553 qlm_cfg.u64 = cvmx_read_csr(CVMX_MIO_QLMX_CFG(qlm));
592 int cvmx_qlm_get_status(int qlm)
598 qlmx_cfg.u64 = cvmx_read_csr(CVMX_MIO_QLMX_CFG(qlm));
620 qlmx_cfg.u64 = cvmx_read_csr(CVMX_MIO_QLMX_CFG(qlm));
654 if (qlm == 2)
665 status_reg.u64 = cvmx_read_csr(CVMX_SRIOX_STATUS_REG(qlm));
673 qlmx_cfg.u64 = cvmx_read_csr(CVMX_MIO_QLMX_CFG(qlm));
678 switch(qlm)
716 qlmx_cfg.u64 = cvmx_read_csr(CVMX_MIO_QLMX_CFG(qlm));
721 switch(qlm)