blob: 8e8eb168da3946b35edd6e91f1c00a41f45fe54d [file] [log] [blame]
yuezonghe824eb0c2024-06-27 02:32:26 -07001/*******************************************************************************
2 * Copyright (C) 2007, ZTE Corporation.
3 *
4 * File Name: drvs_pmic_int.h
5 * File Mark:
6 * Description: pmic int interface
7 * Others:
8 * Version: V1.0
9 * Author: yuxiang
10 * Date: 2016-01-27
11 * History 1:
12 * Date:
13 * Version:
14 * Author:
15 * Modification:
16 * History 2:
17 ********************************************************************************/
18#ifndef _DRVS_PMIC_INT_H
19#define _DRVS_PMIC_INT_H
20
21/* pmic */
22typedef enum _T_ZDrvPmic_IntId {
23 /* 0x00 */
24 ZX234290_INT_INVALID0 = 0,
25 ZX234290_INT_INVALID1,
26 ZX234290_INT_EOADC, /* xxxx x100 */
27 ZX234290_INT_PWRON_SHORT,
28 ZX234290_INT_PWRON_LONG,
29 ZX234290_INT_PWRON,
30 ZX234290_INT_INVALID2,
31 ZX234290_INT_INVALID3,
32 /* 0x01 */
33 ZX234290_INT_RTC_ALRM = 8,
34 ZX234290_INT_INVALID4,
35 ZX234290_INT_INVALID8,
36 ZX234290_INT_RTC_MIN,
37 ZX234290_INT_RTC_HOUR,
38 ZX234290_INT_INVALID5,
39 ZX234290_INT_INVALID6,
40 ZX234290_INT_INVALID7,
41
42 PMIC_INT_MAX_ID
43} T_ZDrvPmic_IntId;
44
45typedef VOID(*T_PMIC_CALLBACK)(UINT8 reg_val);
46
47SINT32 zDrvPmic_IsrMask(UINT8 nInt);
48SINT32 zDrvPmic_IsrUnMask(UINT8 nInt);
49SINT32 zDrvPmic_IntInit(VOID);
50SINT32 zDrvPmic_RegisterCallback(T_ZDrvPmic_IntId nIntId, T_PMIC_CALLBACK callback);
51SINT32 zDrvPmic_UnRegisterCallback(T_ZDrvPmic_IntId nIntId);
52SINT32 zDrvPmic_CleanIrq(UINT8 slv_addr, UINT8 reg_addr);
53SINT32 zDrvPmic_UnMaskIrq(T_ZDrvPmic_IntId nIntId);
54SINT32 zDrvPmic_MaskIrq(T_ZDrvPmic_IntId nIntId);
55
56#endif