33 lines
751 B
C
33 lines
751 B
C
|
/* SPDX-License-Identifier: GPL-2.0-only */
|
||
|
/*
|
||
|
* Copyright (c) 2022, Linaro Ltd
|
||
|
*/
|
||
|
#ifndef __SOC_QCOM_PMIC_GLINK_H__
|
||
|
#define __SOC_QCOM_PMIC_GLINK_H__
|
||
|
|
||
|
struct pmic_glink;
|
||
|
struct pmic_glink_client;
|
||
|
|
||
|
#define PMIC_GLINK_OWNER_BATTMGR 32778
|
||
|
#define PMIC_GLINK_OWNER_USBC 32779
|
||
|
#define PMIC_GLINK_OWNER_USBC_PAN 32780
|
||
|
|
||
|
#define PMIC_GLINK_REQ_RESP 1
|
||
|
#define PMIC_GLINK_NOTIFY 2
|
||
|
|
||
|
struct pmic_glink_hdr {
|
||
|
__le32 owner;
|
||
|
__le32 type;
|
||
|
__le32 opcode;
|
||
|
};
|
||
|
|
||
|
int pmic_glink_send(struct pmic_glink_client *client, void *data, size_t len);
|
||
|
|
||
|
struct pmic_glink_client *devm_pmic_glink_register_client(struct device *dev,
|
||
|
unsigned int id,
|
||
|
void (*cb)(const void *, size_t, void *),
|
||
|
void (*pdr)(void *, int),
|
||
|
void *priv);
|
||
|
|
||
|
#endif
|