mfd: sprd: Add support for SC2730 PMIC
authorChunyan Zhang <chunyan.zhang@unisoc.com>
Wed, 15 Sep 2021 09:17:26 +0000 (17:17 +0800)
committerLee Jones <lee.jones@linaro.org>
Fri, 5 Nov 2021 14:40:05 +0000 (14:40 +0000)
SC2730 is a PMIC SoC integrated in UMS512.

Signed-off-by: Chunyan Zhang <chunyan.zhang@unisoc.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
drivers/mfd/sprd-sc27xx-spi.c

index 6b79566..57fb244 100644 (file)
@@ -18,6 +18,9 @@
 #define SPRD_PMIC_INT_RAW_STATUS       0x4
 #define SPRD_PMIC_INT_EN               0x8
 
+#define SPRD_SC2730_IRQ_BASE           0x80
+#define SPRD_SC2730_IRQ_NUMS           10
+#define SPRD_SC2730_CHG_DET            0x1b9c
 #define SPRD_SC2731_IRQ_BASE           0x140
 #define SPRD_SC2731_IRQ_NUMS           16
 #define SPRD_SC2731_CHG_DET            0xedc
@@ -52,6 +55,12 @@ struct sprd_pmic_data {
  * base address and irq number, we should save irq number and irq base
  * in the device data structure.
  */
+static const struct sprd_pmic_data sc2730_data = {
+       .irq_base = SPRD_SC2730_IRQ_BASE,
+       .num_irqs = SPRD_SC2730_IRQ_NUMS,
+       .charger_det = SPRD_SC2730_CHG_DET,
+};
+
 static const struct sprd_pmic_data sc2731_data = {
        .irq_base = SPRD_SC2731_IRQ_BASE,
        .num_irqs = SPRD_SC2731_IRQ_NUMS,
@@ -232,6 +241,7 @@ static SIMPLE_DEV_PM_OPS(sprd_pmic_pm_ops, sprd_pmic_suspend, sprd_pmic_resume);
 
 static const struct of_device_id sprd_pmic_match[] = {
        { .compatible = "sprd,sc2731", .data = &sc2731_data },
+       { .compatible = "sprd,sc2730", .data = &sc2730_data },
        {},
 };
 MODULE_DEVICE_TABLE(of, sprd_pmic_match);