|
AM243x MCU+ SDK
08.06.00
|
|
Go to the documentation of this file.
55 #include <drivers/hw_include/cslr_soc.h>
56 #include <drivers/hw_include/hw_types.h>
66 #define MAX_WAIT 20000
68 #define HDSL_ICSSG0_INST 0U
69 #define HDSL_ICSSG1_INST 1U
72 (*((volatile uint32_t *)(x)))
74 (*((volatile uint8_t *)(x)))
76 (*((volatile uint16_t *)(x)))
81 #define SYNCEVENT_INTRTR_IN_27 27
85 #define SYNCEVT_RTR_SYNC28_EVT 0x64
87 #define SYNCEVT_RTR_SYNC29_EVT 0x68
89 #define SYNCEVT_RTR_SYNC30_EVT 0x6C
91 #define SYNCEVT_RTR_SYNC31_EVT 0x70
93 #define SYNCEVT_RTR_SYNC10_EVT 0x2C
221 typedef struct HDSL_Config_s {
446 void HDSL_write_pc_buffer(
HDSL_Handle hdslHandle, uint8_t pc_buf0, uint8_t pc_buf1, uint8_t pc_buf2, uint8_t pc_buf3, uint8_t pc_buf4, uint8_t pc_buf5, uint8_t pc_buf6, uint8_t pc_buf7);
Definition: hdsl_drv.h:221
volatile uint8_t DUMMY2
Definition: hdsl_drv.h:208
volatile uint8_t resvd3
Definition: hdsl_drv.h:177
@ MENU_SAFE_POSITION
Definition: hdsl_drv.h:96
void HDSL_iep_init(HDSL_Handle hdslHandle)
Initialize IEP and Use OCP as IEP CLK src.
volatile uint8_t VPOSCRC2_L
Definition: hdsl_drv.h:207
volatile uint8_t PC_OFF_H
Definition: hdsl_drv.h:171
volatile uint8_t VERSION
Definition: hdsl_drv.h:140
@ MENU_HDSL_REG_INTO_DDR_GPIO
Definition: hdsl_drv.h:106
volatile uint8_t resvd2
Definition: hdsl_drv.h:153
volatile uint8_t VPOS20
Definition: hdsl_drv.h:205
volatile uint8_t VPOS23
Definition: hdsl_drv.h:202
uint32_t * baseMemAddr
Definition: hdsl_drv.h:228
@ MENU_DIRECT_READ_RID81_LENGTH8
Definition: hdsl_drv.h:108
void hdsl_enable_load_share_mode(void *gPru_cfg, uint32_t PRU_SLICE)
enable load share mode for multi-channel HDSL
int HDSL_enable_sync_signal(uint8_t ES, uint32_t period)
Enable IEP *Enable SYNC0 and program pulse width Enable cyclic mod Program CMP1 TSR configura...
volatile uint8_t EVENT_L
Definition: hdsl_drv.h:134
uint32_t icssCore
Definition: hdsl_drv.h:224
volatile uint8_t resvd1
Definition: hdsl_drv.h:141
volatile uint8_t EDGES
Definition: hdsl_drv.h:138
volatile uint8_t PC_BUFFER5
Definition: hdsl_drv.h:166
uint8_t HDSL_get_sync_ctrl(HDSL_Handle hdslHandle)
Returns Synchronization control value.
uint64_t mask
Definition: hdsl_drv.h:236
volatile uint8_t PC_ADD_H
Definition: hdsl_drv.h:169
volatile uint16_t ONLINE_STATUS_D
Definition: hdsl_drv.h:210
@ MENU_PC_SHORT_MSG_WRITE
Definition: hdsl_drv.h:102
volatile uint8_t VPOS0
Definition: hdsl_drv.h:158
volatile uint8_t resvd10
Definition: hdsl_drv.h:191
Definition: hdsl_drv.h:128
volatile uint8_t VPOSCRC_H
Definition: hdsl_drv.h:159
volatile uint8_t VPOS3
Definition: hdsl_drv.h:155
volatile uint8_t resvd0
Definition: hdsl_drv.h:131
void HDSL_set_pc_addr(HDSL_Handle hdslHandle, uint8_t pc_addrh, uint8_t pc_addrl, uint8_t pc_offh, uint8_t pc_offl)
Write PC_AAD_L ,PC_ADD_H ,PC_OFF_L,PC_OFF_H and PC_CTRL values in hdsl interface.
uint32_t res
Definition: hdsl_drv.h:234
uint8_t HDSL_get_acc_err_cnt(HDSL_Handle hdslHandle)
Acceleration error counter.
volatile uint8_t resvd6
Definition: hdsl_drv.h:180
void HDSL_set_sync_ctrl(HDSL_Handle hdslHandle, uint8_t val)
Writes Synchronization control value.
volatile uint8_t ENC_ID2
Definition: hdsl_drv.h:142
uint8_t HDSL_get_sum(HDSL_Handle hdslHandle)
Getting Summarized slave status.
volatile uint8_t POS0
Definition: hdsl_drv.h:149
volatile uint8_t PC_DATA
Definition: hdsl_drv.h:176
volatile uint8_t S_PC_DATA
Definition: hdsl_drv.h:184
uint32_t data
Definition: tisci_rm_psil.h:1
volatile uint8_t MASTER_QM
Definition: hdsl_drv.h:132
@ MENU_HDSL_REG_INTO_DDR
Definition: hdsl_drv.h:105
volatile uint8_t SAFE_SUM
Definition: hdsl_drv.h:183
volatile uint8_t EVENT_H
Definition: hdsl_drv.h:133
uint64_t addr
Definition: csl_udmap_tr.h:3
void * HDSL_get_src_loc(HDSL_Handle hdslHandle)
Get memory location for HDSL interface struct.
@ MENU_PC_LONG_MSG_WRITE
Definition: hdsl_drv.h:104
@ MENU_DIRECT_READ_RID0_LENGTH8
Definition: hdsl_drv.h:107
void HDSL_set_pc_ctrl(HDSL_Handle hdslHandle, uint8_t value)
To set the direction read/write for long message communication.
volatile uint8_t MAXDEV_L
Definition: hdsl_drv.h:188
volatile uint8_t resvd5
Definition: hdsl_drv.h:179
volatile uint8_t PIPE_S
Definition: hdsl_drv.h:174
@ MENU_EVENTS
Definition: hdsl_drv.h:98
volatile uint8_t resvd4
Definition: hdsl_drv.h:178
volatile uint8_t ACC_ERR_CNT
Definition: hdsl_drv.h:185
uint8_t HDSL_get_edges(HDSL_Handle hdslHandle)
Returns Cable bit sampling time control.
volatile uint8_t PC_OFF_L
Definition: hdsl_drv.h:172
uint32_t multi_turn
Definition: hdsl_drv.h:232
volatile uint8_t VPOS1
Definition: hdsl_drv.h:157
volatile uint8_t MAXDEV_L_THRES
Definition: hdsl_drv.h:196
volatile uint8_t SLAVE_REG_CTRL
Definition: hdsl_drv.h:193
@ MENU_INVALID
Definition: hdsl_drv.h:114
uint64_t HDSL_get_pos(HDSL_Handle hdslHandle, int position_id)
Calculate fast position,safe position1,safe position2.
volatile uint16_t ONLINE_STATUS_1
Definition: hdsl_drv.h:211
volatile uint8_t PC_BUFFER2
Definition: hdsl_drv.h:163
volatile uint8_t MAXDEV_H_THRES
Definition: hdsl_drv.h:195
volatile uint8_t VPOS24
Definition: hdsl_drv.h:201
volatile uint8_t VPOSCRC_L
Definition: hdsl_drv.h:160
volatile uint8_t MASK_H
Definition: hdsl_drv.h:135
uint32_t value
Definition: tisci_otp_revision.h:2
volatile uint8_t resvd7
Definition: hdsl_drv.h:181
uint8_t HDSL_get_enc_id(HDSL_Handle hdslHandle, int byte)
Read encoder id bytes(byte no. 0-2)
volatile uint8_t PC_BUFFER1
Definition: hdsl_drv.h:162
@ MENU_INDIRECT_WRITE_RID0_LENGTH8
Definition: hdsl_drv.h:111
volatile uint8_t PC_BUFFER6
Definition: hdsl_drv.h:167
volatile uint8_t PC_BUFFER0
Definition: hdsl_drv.h:161
uint8_t HDSL_get_rssi(HDSL_Handle hdslHandle)
Read RSSI value.
volatile uint8_t ENC_ID0
Definition: hdsl_drv.h:144
volatile uint8_t PIPE_D
Definition: hdsl_drv.h:175
struct HDSL_Config_s * HDSL_Handle
Definition: hdsl_drv.h:117
@ MENU_INDIRECT_WRITE_RID0_LENGTH8_OFFSET0
Definition: hdsl_drv.h:110
volatile uint8_t resvd9
Definition: hdsl_drv.h:189
uint8_t HDSL_get_qm(HDSL_Handle hdslHandle)
Getting quality monitoring value.
@ MENU_DIRECT_READ_RID0_LENGTH8_OFFSET6
Definition: hdsl_drv.h:112
uint32_t HDSL_get_length(HDSL_Handle hdslHandle)
Get size of memory used by HDSL interface struct.
volatile uint8_t MASK_SUM
Definition: hdsl_drv.h:137
volatile uint8_t MAXDEV_H
Definition: hdsl_drv.h:187
PRUICSS_Handle icssgHandle
Definition: hdsl_drv.h:222
uint16_t HDSL_get_online_status_d(HDSL_Handle hdslHandle)
Taking values of Online Status D (ONLINE_STATUS_D) register.
volatile uint8_t EVENT_S
Definition: hdsl_drv.h:190
volatile uint8_t DELAY
Definition: hdsl_drv.h:139
volatile uint8_t ENC_ID1
Definition: hdsl_drv.h:143
volatile uint8_t VPOS2
Definition: hdsl_drv.h:156
volatile uint8_t PC_ADD_L
Definition: hdsl_drv.h:170
uint16_t HDSL_get_online_status_1(HDSL_Handle hdslHandle)
Taking values of Online Status D (ONLINE_STATUS_D) register.
volatile uint8_t POS3
Definition: hdsl_drv.h:146
volatile uint8_t MAXACC
Definition: hdsl_drv.h:186
volatile uint16_t ONLINE_STATUS_2
Definition: hdsl_drv.h:212
volatile uint8_t PC_BUFFER4
Definition: hdsl_drv.h:165
volatile uint8_t resvd8
Definition: hdsl_drv.h:182
uint8_t HDSL_read_pc_buffer(HDSL_Handle hdslHandle, uint8_t buff_off)
Returns Parameters channel buffer for different bytes(bytes 0-7)
uint8_t HDSL_get_safe_events(HDSL_Handle hdslHandle)
Taking values of Safe Event (EVENT_S) register.
uint16_t HDSL_get_online_status_2(HDSL_Handle hdslHandle)
Taking values of Online Status D (ONLINE_STATUS_D) register.
volatile uint8_t VPOS4
Definition: hdsl_drv.h:154
volatile uint8_t VEL1
Definition: hdsl_drv.h:151
int32_t HDSL_read_pc_short_msg(HDSL_Handle hdslHandle, uint8_t addr, uint8_t *data, uint64_t timeout)
Read Response of Short message parameters channel Read for safe1 channel(S_PC_DATA) and write Short m...
@ MENU_SUMMARY
Definition: hdsl_drv.h:99
volatile uint8_t ACC_ERR_CNT_THRES
Definition: hdsl_drv.h:194
uint8_t HDSL_get_delay(HDSL_Handle hdslHandle)
Returns Run time delay of system cable and signal strength.
HDSL_Interface * hdslInterface
Definition: hdsl_drv.h:230
@ MENU_LIMIT
Definition: hdsl_drv.h:113
@ MENU_DIRECT_READ_RID81_LENGTH2
Definition: hdsl_drv.h:109
volatile uint8_t SYS_CTRL
Definition: hdsl_drv.h:129
volatile uint8_t POS2
Definition: hdsl_drv.h:147
@ MENU_RSSI
Definition: hdsl_drv.h:101
HDSL_Handle HDSL_open(PRUICSS_Handle icssgHandle, uint32_t icssCore, uint8_t PRU_mode)
Open HDSL handle for the specified core (interrupt mapping should already be completed)
volatile uint8_t PC_CTRL
Definition: hdsl_drv.h:173
volatile uint8_t version
Definition: hdsl_drv.h:198
volatile uint8_t POS4
Definition: hdsl_drv.h:145
volatile uint8_t PC_BUFFER7
Definition: hdsl_drv.h:168
volatile uint8_t POS1
Definition: hdsl_drv.h:148
void HDSL_write_pc_buffer(HDSL_Handle hdslHandle, uint8_t pc_buf0, uint8_t pc_buf1, uint8_t pc_buf2, uint8_t pc_buf3, uint8_t pc_buf4, uint8_t pc_buf5, uint8_t pc_buf6, uint8_t pc_buf7)
Write Parameters channel buffer for different bytes(bytes 0-7)
volatile uint8_t VPOS21
Definition: hdsl_drv.h:204
void HDSL_generate_memory_image(HDSL_Handle hdslHandle)
Generates memory image.
volatile uint8_t SYNC_CTRL
Definition: hdsl_drv.h:130
volatile uint8_t ENC2_ID
Definition: hdsl_drv.h:199
uint16_t HDSL_get_events(HDSL_Handle hdslHandle)
Taking values of High bytes event (EVENT_H) and Low bytes event(EVENT_L)
@ MENU_QUALITY_MONITORING
Definition: hdsl_drv.h:97
volatile uint8_t PC_BUFFER3
Definition: hdsl_drv.h:164
@ MENU_ACC_ERR_CNT
Definition: hdsl_drv.h:100
volatile uint8_t VEL0
Definition: hdsl_drv.h:152
struct PRUICSS_Config_s * PRUICSS_Handle
A handle that is returned from a PRUICSS_open() call. This handle is required for calling other APIs.
Definition: pruicss/g_v0/pruicss.h:235
volatile uint8_t MASK_L
Definition: hdsl_drv.h:136
@ MENU_PC_SHORT_MSG_READ
Definition: hdsl_drv.h:103
volatile uint8_t DUMMY
Definition: hdsl_drv.h:192
volatile uint8_t VPOSCRC2_H
Definition: hdsl_drv.h:206
int32_t HDSL_write_pc_short_msg(HDSL_Handle hdslHandle, uint8_t addr, uint8_t data, uint64_t timeout)
Write Response of Short message parameters channel Read for safe1 channel(S_PC_DATA) with gPc_data an...
volatile uint8_t STATUS2
Definition: hdsl_drv.h:200
volatile uint8_t VPOS22
Definition: hdsl_drv.h:203
uint8_t HDSL_get_master_qm(HDSL_Handle hdslHandle)
Returns Quality monitoring value.
volatile uint8_t VEL2
Definition: hdsl_drv.h:150