File Index
Files and directories
Sign in
FILE

pdr_internal.h

File preview with syntax highlighting.

linux-6.19.14/drivers/soc/qcom/pdr_internal.h C
  1/* SPDX-License-Identifier: GPL-2.0 */
  2#ifndef __QCOM_PDR_HELPER_INTERNAL__
  3#define __QCOM_PDR_HELPER_INTERNAL__
  4
  5#include <linux/soc/qcom/pdr.h>
  6
  7#define SERVREG_LOCATOR_SERVICE				0x40
  8#define SERVREG_NOTIFIER_SERVICE			0x42
  9
 10#define SERVREG_REGISTER_LISTENER_REQ			0x20
 11#define SERVREG_GET_DOMAIN_LIST_REQ			0x21
 12#define SERVREG_STATE_UPDATED_IND_ID			0x22
 13#define SERVREG_SET_ACK_REQ				0x23
 14#define SERVREG_RESTART_PD_REQ				0x24
 15
 16#define SERVREG_LOC_PFR_REQ				0x24
 17
 18#define SERVREG_DOMAIN_LIST_LENGTH			32
 19#define SERVREG_RESTART_PD_REQ_MAX_LEN			67
 20#define SERVREG_REGISTER_LISTENER_REQ_LEN		71
 21#define SERVREG_SET_ACK_REQ_LEN				72
 22#define SERVREG_GET_DOMAIN_LIST_REQ_MAX_LEN		74
 23#define SERVREG_STATE_UPDATED_IND_MAX_LEN		79
 24#define SERVREG_GET_DOMAIN_LIST_RESP_MAX_LEN		2389
 25#define SERVREG_LOC_PFR_RESP_MAX_LEN			10
 26
 27struct servreg_location_entry {
 28	char name[SERVREG_NAME_LENGTH + 1];
 29	u8 service_data_valid;
 30	u32 service_data;
 31	u32 instance;
 32};
 33
 34struct servreg_get_domain_list_req {
 35	char service_name[SERVREG_NAME_LENGTH + 1];
 36	u8 domain_offset_valid;
 37	u32 domain_offset;
 38};
 39
 40struct servreg_get_domain_list_resp {
 41	struct qmi_response_type_v01 resp;
 42	u8 total_domains_valid;
 43	u16 total_domains;
 44	u8 db_rev_count_valid;
 45	u16 db_rev_count;
 46	u8 domain_list_valid;
 47	u32 domain_list_len;
 48	struct servreg_location_entry domain_list[SERVREG_DOMAIN_LIST_LENGTH];
 49};
 50
 51struct servreg_register_listener_req {
 52	u8 enable;
 53	char service_path[SERVREG_NAME_LENGTH + 1];
 54};
 55
 56struct servreg_register_listener_resp {
 57	struct qmi_response_type_v01 resp;
 58	u8 curr_state_valid;
 59	enum servreg_service_state curr_state;
 60};
 61
 62struct servreg_restart_pd_req {
 63	char service_path[SERVREG_NAME_LENGTH + 1];
 64};
 65
 66struct servreg_restart_pd_resp {
 67	struct qmi_response_type_v01 resp;
 68};
 69
 70struct servreg_state_updated_ind {
 71	enum servreg_service_state curr_state;
 72	char service_path[SERVREG_NAME_LENGTH + 1];
 73	u16 transaction_id;
 74};
 75
 76struct servreg_set_ack_req {
 77	char service_path[SERVREG_NAME_LENGTH + 1];
 78	u16 transaction_id;
 79};
 80
 81struct servreg_set_ack_resp {
 82	struct qmi_response_type_v01 resp;
 83};
 84
 85struct servreg_loc_pfr_req {
 86	char service[SERVREG_NAME_LENGTH + 1];
 87	char reason[SERVREG_PFR_LENGTH + 1];
 88};
 89
 90struct servreg_loc_pfr_resp {
 91	struct qmi_response_type_v01 rsp;
 92};
 93
 94extern const struct qmi_elem_info servreg_get_domain_list_req_ei[];
 95extern const struct qmi_elem_info servreg_get_domain_list_resp_ei[];
 96extern const struct qmi_elem_info servreg_register_listener_req_ei[];
 97extern const struct qmi_elem_info servreg_register_listener_resp_ei[];
 98extern const struct qmi_elem_info servreg_restart_pd_req_ei[];
 99extern const struct qmi_elem_info servreg_restart_pd_resp_ei[];
100extern const struct qmi_elem_info servreg_state_updated_ind_ei[];
101extern const struct qmi_elem_info servreg_set_ack_req_ei[];
102extern const struct qmi_elem_info servreg_set_ack_resp_ei[];
103extern const struct qmi_elem_info servreg_loc_pfr_req_ei[];
104extern const struct qmi_elem_info servreg_loc_pfr_resp_ei[];
105
106#endif
~/ Read-only file preview.