Go to the source code of this file.
Functions | |
int32_t | bissc_command_process (struct bissc_priv *priv) |
Send the BiSSC command and wait till firmware acknowledges. More... | |
void | bissc_command_send (struct bissc_priv *priv) |
Trigger sending the BiSSC command in PRU. More... | |
int32_t | bissc_command_wait (struct bissc_priv *priv) |
Wait till PRU finishes BiSSC transaction. More... | |
int32_t | bissc_get_pos (struct bissc_priv *priv) |
Get single cycle BiSS-C position data. More... | |
void | bissc_config_clock (struct bissc_priv *priv, struct bissc_clk_cfg *clk_cfg) |
Configure EnDat clock. More... | |
void | bissc_config_channel (struct bissc_priv *priv, int32_t mask, int32_t totalch) |
Select channel to be used by BiSSC receiver. More... | |
void | bissc_config_load_share (struct bissc_priv *priv, int32_t mask) |
Configure the channels to be used by BiSSC receiver. More... | |
void | bissc_enable_load_share_mode (struct bissc_priv *priv) |
Enable load share mode for BiSSC receiver. More... | |
void | bissc_config_primary_core_mask (struct bissc_priv *priv, uint8_t mask) |
Configure the primary core for load share mode. More... | |
int32_t | bissc_wait_for_fw_initialization (struct bissc_priv *priv, uint32_t timeout, uint8_t mask) |
Wait for BiSSC receiver firmware to initialize. More... | |
void | bissc_hw_init (struct bissc_priv *priv) |
Initialize BiSSC hardware interface. More... | |
struct bissc_priv * | bissc_init (PRUICSS_Handle gPruIcssXHandle, int32_t slice, uint32_t frequency, uint32_t core_clk_freq, uint32_t uart_clk_freq) |
Initialize BiSSC firmware interface address and get the pointer to struct bissc_priv instance. More... | |
void | bissc_update_max_proc_delay (struct bissc_priv *priv) |
Update max processing time and bit index to poll in fifo data. More... | |
int32_t | bissc_wait_measure_proc_delay (struct bissc_priv *priv, uint32_t timeout) |
Wait for BiSSC receiver firmware to measure processing time. More... | |
void | bissc_set_default_initialization (struct bissc_priv *priv, uint64_t icssgclk) |
Set default configuration parameters for BiSSC receiver firmware. More... | |
void | bissc_update_data_len (struct bissc_priv *priv, uint32_t single_turn_len[], uint32_t multi_turn_len[], int32_t ch_num) |
Update data length with encoder bit width for BiSSC receiver firmware. More... | |
int32_t | bissc_set_ctrl_cmd_and_process (struct bissc_priv *priv, uint32_t ctrl_cmd[]) |
Set control command and process the ctrl communication read/write. More... | |
void | bissc_config_endat_mode (struct bissc_priv *priv) |
Configure the receiver for EnDat mode. More... | |
void | bissc_config_clr_cfg0 (struct bissc_priv *priv) |
Clear the channel specific frame size cfg registers. More... | |
void | bissc_get_enc_proc_delay (struct bissc_priv *priv) |
Get measured processing delay of individual channel. More... | |
int32_t | bissc_calc_clock (struct bissc_priv *priv, struct bissc_clk_cfg *clk_cfg) |
Calculate Rx and Tx divisors for given frequency. More... | |
void | bissc_config_periodic_trigger (struct bissc_priv *priv) |
Configure periodic trigger operation mode. More... | |
void | bissc_config_host_trigger (struct bissc_priv *priv) |
Configure host trigger operation mode. More... | |
uint32_t | bissc_generate_ctrl_cmd (struct bissc_priv *priv, int8_t ls_ch, uint32_t ctrl_write_status, uint32_t ctrl_reg_address, uint32_t ctrl_reg_data, uint32_t ctrl_enc_id) |
Generate control communication Hex equivalent command. More... | |
uint32_t | bissc_get_current_channel (struct bissc_priv *priv, uint32_t ch_idx) |
Retrives the current channel in use. More... | |
uint32_t | bissc_get_totalchannels (struct bissc_priv *priv) |
Retrives total number of channels configured. More... | |
void | bissc_clear_data_len (struct bissc_priv *priv) |
Clears all the encoder resolution parameters. More... | |
void | bissc_update_clock_freq (struct bissc_priv *priv, uint32_t frequency) |
Update the operating bud rate as specified by the user. More... | |
void | bissc_enable_safety (struct bissc_priv *priv, uint32_t enc_num, uint32_t ch_num) |
Enable Safety for connected BiSS-C encoder. More... | |
void | bissc_disable_safety (struct bissc_priv *priv) |
Disable Safety for connected BiSS-C encoder. More... | |