Граф коммитов

8 Коммитов

Автор SHA1 Сообщение Дата
Grace An
414d3b480d mm-drivers: hw_fence: add support for client queue alternate indexing
Some clients require that write_index starts from nonzero value and
index by payload instead of by dwords. Add support for device-tree
configurable properties to control nonzero index start_index and
indexing by payload for client tx queue read and write indices.

Change-Id: I8942dc2d25a7d1cb0421cabd36c73a404ecd0134
Signed-off-by: Grace An <quic_gracan@quicinc.com>
2023-03-15 14:22:49 -07:00
Grace An
2348b03273 mm-drivers: hw_fence: add device-tree configurable queue padding
Add device-tree configurable padding in bytes before and after queue
header(s). This enables support for 32-byte aligned queue write_idx,
which is a requirement to satisfy hardware constraints by some clients.

Change-Id: Icfd6bb385c825a8629974c72522efdc3cbfe3303
Signed-off-by: Grace An <quic_gracan@quicinc.com>
2023-03-15 14:22:49 -07:00
Grace An
88f51cfe04 mm-drivers: hw_fence: add support for multiple ipe and vpu clients
Add support for signal-based reservation of hw fence client ids for
ipe and vpu clients.

Change-Id: I4e4a835424756c6e5fa8d5c2d340dfadc4d11541
Signed-off-by: Grace An <quic_gracan@quicinc.com>
2023-03-06 09:09:56 -08:00
Grace An
f4afac60ba mm-drivers: hw_fence: update txq to use separate software wr ptr
Some hw fence driver clients require the ability to call the
'msm_hw_fence_update_txq' API to update the queue payload without
updating the 'write_index' member within the hfi header. These clients
also need to receive the index at which the payload is written within
the queue.

This change adds support for this requirement by adding a device-tree
property to configure this behavior for each client. The 'tx_wm' member
within the hfi header is used to track in software the place where the
payloads are within the queue for clients that skip the update to the
'write_index' member.

Change-Id: I2881fa49bef4e49691eb6049830f9dc8dc8fa425
Signed-off-by: Grace An <quic_gracan@quicinc.com>
2022-12-05 09:15:07 -08:00
Grace An
965d398c06 mm-drivers: hw_fence: update ipc for ipe, vpu, ife clients
Update ipc configurations to support IPE, VPU, and IFE clients
in hw fence driver. Add support for IPE and VPU clients on
kalama, and add support for all clients on pineaple.

Change-Id: Iee577118284a02bd5b368ca206e88ed75eaa95b3
Signed-off-by: Grace An <quic_gracan@quicinc.com>
2022-12-05 09:14:58 -08:00
Grace An
368ae72991 mm-drivers: hw_fence: add support for ipe, vpu, and ife clients
Update hw fence driver to support new clients with large number
of possible sub-clients, which can be configured in device-tree.
Add client queues support for ipe, vpu, and ife clients.

Change-Id: I6e274819c1c154af3ea977d1d09e419d86f6fe8e
Signed-off-by: Grace An <quic_gracan@quicinc.com>
2022-12-05 09:14:28 -08:00
Ingrid Gallardo
05689a41c3 mm-drivers: hw_fence: add inter-vm try lock
Add support for inter-vm try-lock between hlos and vm.

Change-Id: Iab9087acf82a4a746e9d43a736724ce2e7196237
Signed-off-by: Ingrid Gallardo <quic_ingridg@quicinc.com>
2022-11-30 13:06:10 -08:00
Ingrid Gallardo
77ae3f31f0 mm-drivers: hw_fence: Add support for hw-fence driver
This change adds support for the hw-fence driver that initialize, expose
and manage the interfaces for the hw-fences, which are the synchronization
primitives to allow the hardware to hardware signalization of the fences
for the frame buffers shared between gpu and display hw-cores.

Change-Id: If2313585d5a9f3ac90e16aad3464600641a6fa04
Signed-off-by: Ingrid Gallardo <quic_ingridg@quicinc.com>
2022-04-21 13:46:12 -07:00