soc: hw_fence: add ipe, vpu, and ife client ids

Add camera, video, and IFE client IDs. Make signal-based reservation
for IFE clients.

Change-Id: I7004ddf4d1a85311c3463acebc99d4859f0459e7
Signed-off-by: Grace An <quic_gracan@quicinc.com>
This commit is contained in:
Grace An 2022-10-06 12:46:04 -07:00
parent 835f1ee0f9
commit 7c677af214

View File

@ -40,6 +40,11 @@
#define MSM_HW_FENCE_RESET_WITHOUT_ERROR BIT(0) #define MSM_HW_FENCE_RESET_WITHOUT_ERROR BIT(0)
#define MSM_HW_FENCE_RESET_WITHOUT_DESTROY BIT(1) #define MSM_HW_FENCE_RESET_WITHOUT_DESTROY BIT(1)
/**
* MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT - Maximum number of signals per client
*/
#define MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT 64
/** /**
* struct msm_hw_fence_create_params - Creation parameters. * struct msm_hw_fence_create_params - Creation parameters.
* *
@ -144,6 +149,16 @@ struct msm_hw_fence_mem_addr {
* @HW_FENCE_CLIENT_ID_VAL4: debug Validation client 4. * @HW_FENCE_CLIENT_ID_VAL4: debug Validation client 4.
* @HW_FENCE_CLIENT_ID_VAL5: debug Validation client 5. * @HW_FENCE_CLIENT_ID_VAL5: debug Validation client 5.
* @HW_FENCE_CLIENT_ID_VAL6: debug Validation client 6. * @HW_FENCE_CLIENT_ID_VAL6: debug Validation client 6.
* @HW_FENCE_CLIENT_ID_IPE: IPE Client.
* @HW_FENCE_CLIENT_ID_VPU: VPU Client.
* @HW_FENCE_CLIENT_ID_IFE0: IFE0 Client 0.
* @HW_FENCE_CLIENT_ID_IFE1: IFE1 Client 0.
* @HW_FENCE_CLIENT_ID_IFE2: IFE2 Client 0.
* @HW_FENCE_CLIENT_ID_IFE3: IFE3 Client 0.
* @HW_FENCE_CLIENT_ID_IFE4: IFE4 Client 0.
* @HW_FENCE_CLIENT_ID_IFE5: IFE5 Client 0.
* @HW_FENCE_CLIENT_ID_IFE6: IFE6 Client 0.
* @HW_FENCE_CLIENT_ID_IFE7: IFE7 Client 0.
* @HW_FENCE_CLIENT_MAX: Max number of clients, any client must be added * @HW_FENCE_CLIENT_MAX: Max number of clients, any client must be added
* before this enum. * before this enum.
*/ */
@ -162,7 +177,17 @@ enum hw_fence_client_id {
HW_FENCE_CLIENT_ID_VAL4, HW_FENCE_CLIENT_ID_VAL4,
HW_FENCE_CLIENT_ID_VAL5, HW_FENCE_CLIENT_ID_VAL5,
HW_FENCE_CLIENT_ID_VAL6, HW_FENCE_CLIENT_ID_VAL6,
HW_FENCE_CLIENT_MAX HW_FENCE_CLIENT_ID_IPE,
HW_FENCE_CLIENT_ID_VPU,
HW_FENCE_CLIENT_ID_IFE0,
HW_FENCE_CLIENT_ID_IFE1 = HW_FENCE_CLIENT_ID_IFE0 + MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT,
HW_FENCE_CLIENT_ID_IFE2 = HW_FENCE_CLIENT_ID_IFE1 + MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT,
HW_FENCE_CLIENT_ID_IFE3 = HW_FENCE_CLIENT_ID_IFE2 + MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT,
HW_FENCE_CLIENT_ID_IFE4 = HW_FENCE_CLIENT_ID_IFE3 + MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT,
HW_FENCE_CLIENT_ID_IFE5 = HW_FENCE_CLIENT_ID_IFE4 + MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT,
HW_FENCE_CLIENT_ID_IFE6 = HW_FENCE_CLIENT_ID_IFE5 + MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT,
HW_FENCE_CLIENT_ID_IFE7 = HW_FENCE_CLIENT_ID_IFE6 + MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT,
HW_FENCE_CLIENT_MAX = HW_FENCE_CLIENT_ID_IFE7 + MSM_HW_FENCE_MAX_SIGNAL_PER_CLIENT
}; };
#if IS_ENABLED(CONFIG_QTI_HW_FENCE) #if IS_ENABLED(CONFIG_QTI_HW_FENCE)