mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 10:39:08 +00:00
soc: ti: k3-navss-ringacc: Add AM64 ringacc support
AM64 dual mode rings are modeled as pair of Rings objects which has common configuration and memory buffer, but separate real-time control register sets for each direction mem2dev (forward) and dev2mem (reverse). AM64 rings must be requested only using k3_ringacc_request_rings_pair(), and forward ring must always be initialized/configured. After this any other Ringacc APIs can be used without any callers changes. Signed-off-by: Vignesh Raghavendra <vigneshr@ti.com>
This commit is contained in:
parent
91f1e792fe
commit
c409b4932d
2 changed files with 283 additions and 5 deletions
|
@ -238,4 +238,19 @@ int k3_nav_ringacc_ring_push_head(struct k3_nav_ring *ring, void *elem);
|
|||
*/
|
||||
int k3_nav_ringacc_ring_pop_tail(struct k3_nav_ring *ring, void *elem);
|
||||
|
||||
/* DMA ring support */
|
||||
struct ti_sci_handle;
|
||||
|
||||
/**
|
||||
* struct struct k3_ringacc_init_data - Initialization data for DMA rings
|
||||
*/
|
||||
struct k3_ringacc_init_data {
|
||||
const struct ti_sci_handle *tisci;
|
||||
u32 tisci_dev_id;
|
||||
u32 num_rings;
|
||||
};
|
||||
|
||||
struct k3_nav_ringacc *k3_ringacc_dmarings_init(struct udevice *dev,
|
||||
struct k3_ringacc_init_data *data);
|
||||
|
||||
#endif /* __SOC_TI_K3_NAVSS_RINGACC_API_H_ */
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue