Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /* Copyright (c) 2022 Linaro. All rights reserved.
0003  * Author: Caleb Connolly <caleb.connolly@linaro.org>
0004  */
0005 
0006 #ifndef __QCOM_SPMI_PMIC_H__
0007 #define __QCOM_SPMI_PMIC_H__
0008 
0009 #include <linux/device.h>
0010 
0011 #define COMMON_SUBTYPE      0x00
0012 #define PM8941_SUBTYPE      0x01
0013 #define PM8841_SUBTYPE      0x02
0014 #define PM8019_SUBTYPE      0x03
0015 #define PM8226_SUBTYPE      0x04
0016 #define PM8110_SUBTYPE      0x05
0017 #define PMA8084_SUBTYPE     0x06
0018 #define PMI8962_SUBTYPE     0x07
0019 #define PMD9635_SUBTYPE     0x08
0020 #define PM8994_SUBTYPE      0x09
0021 #define PMI8994_SUBTYPE     0x0a
0022 #define PM8916_SUBTYPE      0x0b
0023 #define PM8004_SUBTYPE      0x0c
0024 #define PM8909_SUBTYPE      0x0d
0025 #define PM8028_SUBTYPE      0x0e
0026 #define PM8901_SUBTYPE      0x0f
0027 #define PM8950_SUBTYPE      0x10
0028 #define PMI8950_SUBTYPE     0x11
0029 #define PM8998_SUBTYPE      0x14
0030 #define PMI8998_SUBTYPE     0x15
0031 #define PM8005_SUBTYPE      0x18
0032 #define PM660L_SUBTYPE      0x1A
0033 #define PM660_SUBTYPE       0x1B
0034 #define PM8150_SUBTYPE      0x1E
0035 #define PM8150L_SUBTYPE     0x1f
0036 #define PM8150B_SUBTYPE     0x20
0037 #define PMK8002_SUBTYPE     0x21
0038 #define PM8009_SUBTYPE      0x24
0039 #define PM8150C_SUBTYPE     0x26
0040 #define SMB2351_SUBTYPE     0x29
0041 
0042 #define PMI8998_FAB_ID_SMIC 0x11
0043 #define PMI8998_FAB_ID_GF   0x30
0044 
0045 #define PM660_FAB_ID_GF     0x0
0046 #define PM660_FAB_ID_TSMC   0x2
0047 #define PM660_FAB_ID_MX     0x3
0048 
0049 struct qcom_spmi_pmic {
0050     unsigned int type;
0051     unsigned int subtype;
0052     unsigned int major;
0053     unsigned int minor;
0054     unsigned int rev2;
0055     unsigned int fab_id;
0056     const char *name;
0057 };
0058 
0059 const struct qcom_spmi_pmic *qcom_pmic_get(struct device *dev);
0060 
0061 #endif /* __QCOM_SPMI_PMIC_H__ */