Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Functions
cvmx-helper-jtag.h File Reference

Go to the source code of this file.

Functions

void cvmx_helper_qlm_jtag_init (void)
 
uint32_t cvmx_helper_qlm_jtag_shift (int qlm, int bits, uint32_t data)
 
void cvmx_helper_qlm_jtag_shift_zeros (int qlm, int bits)
 
void cvmx_helper_qlm_jtag_update (int qlm)
 

Detailed Description

Helper utilities for qlm_jtag.

Definition in file cvmx-helper-jtag.h.

Function Documentation

void cvmx_helper_qlm_jtag_init ( void  )

Helper utilities for qlm_jtag. Initialize the internal QLM JTAG logic to allow programming of the JTAG chain by the cvmx_helper_qlm_jtag_*() functions. These functions should only be used at the direction of Cavium Networks. Programming incorrect values into the JTAG chain can cause chip damage.

Definition at line 46 of file cvmx-helper-jtag.c.

uint32_t cvmx_helper_qlm_jtag_shift ( int  qlm,
int  bits,
uint32_t  data 
)

Write up to 32bits into the QLM jtag chain. Bits are shifted into the MSB and out the LSB, so you should shift in the low order bits followed by the high order bits. The JTAG chain is 4 * 268 bits long, or 1072.

: QLM to shift value into : Number of bits to shift in (1-32). : Data to shift in. Bit 0 enters the chain first, followed by bit 1, etc.

Returns The low order bits of the JTAG chain that shifted out of the circle.

Definition at line 87 of file cvmx-helper-jtag.c.

void cvmx_helper_qlm_jtag_shift_zeros ( int  qlm,
int  bits 
)

Shift long sequences of zeros into the QLM JTAG chain. It is common to need to shift more than 32 bits of zeros into the chain. This function is a convience wrapper around cvmx_helper_qlm_jtag_shift() to shift more than 32 bits of zeros at a time.

: QLM to shift zeros into :

Definition at line 113 of file cvmx-helper-jtag.c.

void cvmx_helper_qlm_jtag_update ( int  qlm)

Program the QLM JTAG chain into all lanes of the QLM. You must have already shifted in 268*4, or 1072 bits into the JTAG chain. Updating invalid values can possibly cause chip damage.

: QLM to program

Definition at line 131 of file cvmx-helper-jtag.c.