i3c_cable_impl i3c_link_impl
Simics Reference Manual  /  5 Classes  / 

i3c_link_endpoint

Description

I3C link endpoint

Interfaces Implemented

conf_object, log_object, link_endpoint, link_endpoint_v2, i3c_slave, i3c_master, i3c_daa_snoop

Notifiers

cell-change
Notifier that is triggered after the object's cell was changed.
object-delete
Notifier that is triggered just before Simics object is deleted.
queue-change
Notifier that is triggered after the object's clock was changed. New clock can be obtained with the SIM_object_clock function.

Commands for this class

Attributes

id
Required attribute; read/write access; type: i
Endpoint ID. The ID of each endpoint must be unique among the link's endpoints, and it may not be 0 or 0xffffffffffffffff
Required attribute; read/write access; type: o
The link object to which this endpoint belongs.
delivery_queue
Optional attribute; read/write access; type: [[i[o|n[ii]][iiii]]*]
The endpoint's queue.
sorting_key
Optional attribute; read/write access; type: [bi]
Internal.
device
Required attribute; read/write access; type: n|o|[os]
The device connected to this endpoint.
indirect_delivery
Optional attribute; read/write access; type: b
If set, deliver link messages to their targets immediately to let them worry about the exact time of delivery. Needed for endpoints attached to follower agents.
main_master
Optional attribute; read/write access; type: i
Endpoint ID connecting to the device that has overall control of the I3C link.
current_master
Optional attribute; read/write access; type: i
The endpoint id of current active master, initialized as LINK_NULL_ID which indicates invalid endpoint id
current_slave
Optional attribute; read/write access; type: i
The endpoint id of current active slave, initialized as LINK_NULL_ID which indicates invalid endpoint id
pending_acks
Optional attribute; read/write access; type: i
The number of devices we are awaiting a start response
address
Optional attribute; read/write access; type: i
Save address status for start request
slave_list
Optional attribute; read/write access; type: [i*]
IDs of endpoints used when more than one slave communicates with master
slave_list_ack
Optional attribute; read/write access; type: i
Save the combined response come from slaves in slave_list
slave_list_counter
Optional attribute; read/write access; type: i
The number of slaves we are awaiting response in slave_list
slave_data_list
Optional attribute; read/write access; type: [[ii]*]
Keeps a list of pair (ID and data) come from slave. The 'data' can be slave daa data when in DAA process, or slave address when slave issues IBI request (hot-join, IBI, secondary master)
in_daa
Optional attribute; read/write access; type: b
True when the endpoint is in DAA process
ccc
Optional attribute; read/write access; type: i
Save data sent following start request
secondary_master
Optional attribute; read/write access; type: i
Endpoind ID of secondary master
legacy_write
Optional attribute; read/write access; type: b
True when master is communicating with i2c slaves, or write daa address

Provided By

i3c-link
i3c_cable_impl i3c_link_impl