File Index
Files and directories
Sign in
FILE

core.h

File preview with syntax highlighting.

linux-6.19.14/include/linux/mfd/mt6397/core.h C
 1/* SPDX-License-Identifier: GPL-2.0-only */
 2/*
 3 * Copyright (c) 2014 MediaTek Inc.
 4 * Author: Flora Fu, MediaTek
 5 */
 6
 7#ifndef __MFD_MT6397_CORE_H__
 8#define __MFD_MT6397_CORE_H__
 9
10#include <linux/mutex.h>
11#include <linux/notifier.h>
12
13enum chip_id {
14	MT6323_CHIP_ID = 0x23,
15	MT6328_CHIP_ID = 0x30,
16	MT6331_CHIP_ID = 0x20,
17	MT6332_CHIP_ID = 0x20,
18	MT6357_CHIP_ID = 0x57,
19	MT6358_CHIP_ID = 0x58,
20	MT6359_CHIP_ID = 0x59,
21	MT6366_CHIP_ID = 0x66,
22	MT6391_CHIP_ID = 0x91,
23	MT6397_CHIP_ID = 0x97,
24};
25
26enum mt6397_irq_numbers {
27	MT6397_IRQ_SPKL_AB = 0,
28	MT6397_IRQ_SPKR_AB,
29	MT6397_IRQ_SPKL,
30	MT6397_IRQ_SPKR,
31	MT6397_IRQ_BAT_L,
32	MT6397_IRQ_BAT_H,
33	MT6397_IRQ_FG_BAT_L,
34	MT6397_IRQ_FG_BAT_H,
35	MT6397_IRQ_WATCHDOG,
36	MT6397_IRQ_PWRKEY,
37	MT6397_IRQ_THR_L,
38	MT6397_IRQ_THR_H,
39	MT6397_IRQ_VBATON_UNDET,
40	MT6397_IRQ_BVALID_DET,
41	MT6397_IRQ_CHRDET,
42	MT6397_IRQ_OV,
43	MT6397_IRQ_LDO,
44	MT6397_IRQ_HOMEKEY,
45	MT6397_IRQ_ACCDET,
46	MT6397_IRQ_AUDIO,
47	MT6397_IRQ_RTC,
48	MT6397_IRQ_PWRKEY_RSTB,
49	MT6397_IRQ_HDMI_SIFM,
50	MT6397_IRQ_HDMI_CEC,
51	MT6397_IRQ_VCA15,
52	MT6397_IRQ_VSRMCA15,
53	MT6397_IRQ_VCORE,
54	MT6397_IRQ_VGPU,
55	MT6397_IRQ_VIO18,
56	MT6397_IRQ_VPCA7,
57	MT6397_IRQ_VSRMCA7,
58	MT6397_IRQ_VDRM,
59	MT6397_IRQ_NR,
60};
61
62struct mt6397_chip {
63	struct device *dev;
64	struct regmap *regmap;
65	struct notifier_block pm_nb;
66	int irq;
67	struct irq_domain *irq_domain;
68	struct mutex irqlock;
69	u16 wake_mask[3];
70	u16 irq_masks_cur[3];
71	u16 irq_masks_cache[3];
72	u16 int_con[3];
73	u16 int_status[3];
74	u16 chip_id;
75	void *irq_data;
76};
77
78int mt6358_irq_init(struct mt6397_chip *chip);
79int mt6397_irq_init(struct mt6397_chip *chip);
80
81#endif /* __MFD_MT6397_CORE_H__ */
~/ Read-only file preview.