aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/mfd
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/mfd')
-rw-r--r--drivers/mfd/Kconfig2
-rw-r--r--drivers/mfd/pm8921-core.c14
-rw-r--r--drivers/mfd/wm5102-tables.c8
3 files changed, 16 insertions, 8 deletions
diff --git a/drivers/mfd/Kconfig b/drivers/mfd/Kconfig
index c346941a2515..ca86581d02ce 100644
--- a/drivers/mfd/Kconfig
+++ b/drivers/mfd/Kconfig
@@ -991,7 +991,7 @@ config MFD_PM8XXX
991 991
992config MFD_PM8921_CORE 992config MFD_PM8921_CORE
993 tristate "Qualcomm PM8921 PMIC chip" 993 tristate "Qualcomm PM8921 PMIC chip"
994 depends on MSM_SSBI 994 depends on SSBI && BROKEN
995 select MFD_CORE 995 select MFD_CORE
996 select MFD_PM8XXX 996 select MFD_PM8XXX
997 help 997 help
diff --git a/drivers/mfd/pm8921-core.c b/drivers/mfd/pm8921-core.c
index d4b297cbd801..ecc137ffa8c3 100644
--- a/drivers/mfd/pm8921-core.c
+++ b/drivers/mfd/pm8921-core.c
@@ -17,7 +17,7 @@
17#include <linux/platform_device.h> 17#include <linux/platform_device.h>
18#include <linux/slab.h> 18#include <linux/slab.h>
19#include <linux/err.h> 19#include <linux/err.h>
20#include <linux/msm_ssbi.h> 20#include <linux/ssbi.h>
21#include <linux/mfd/core.h> 21#include <linux/mfd/core.h>
22#include <linux/mfd/pm8xxx/pm8921.h> 22#include <linux/mfd/pm8xxx/pm8921.h>
23#include <linux/mfd/pm8xxx/core.h> 23#include <linux/mfd/pm8xxx/core.h>
@@ -35,7 +35,7 @@ static int pm8921_readb(const struct device *dev, u16 addr, u8 *val)
35 const struct pm8xxx_drvdata *pm8921_drvdata = dev_get_drvdata(dev); 35 const struct pm8xxx_drvdata *pm8921_drvdata = dev_get_drvdata(dev);
36 const struct pm8921 *pmic = pm8921_drvdata->pm_chip_data; 36 const struct pm8921 *pmic = pm8921_drvdata->pm_chip_data;
37 37
38 return msm_ssbi_read(pmic->dev->parent, addr, val, 1); 38 return ssbi_read(pmic->dev->parent, addr, val, 1);
39} 39}
40 40
41static int pm8921_writeb(const struct device *dev, u16 addr, u8 val) 41static int pm8921_writeb(const struct device *dev, u16 addr, u8 val)
@@ -43,7 +43,7 @@ static int pm8921_writeb(const struct device *dev, u16 addr, u8 val)
43 const struct pm8xxx_drvdata *pm8921_drvdata = dev_get_drvdata(dev); 43 const struct pm8xxx_drvdata *pm8921_drvdata = dev_get_drvdata(dev);
44 const struct pm8921 *pmic = pm8921_drvdata->pm_chip_data; 44 const struct pm8921 *pmic = pm8921_drvdata->pm_chip_data;
45 45
46 return msm_ssbi_write(pmic->dev->parent, addr, &val, 1); 46 return ssbi_write(pmic->dev->parent, addr, &val, 1);
47} 47}
48 48
49static int pm8921_read_buf(const struct device *dev, u16 addr, u8 *buf, 49static int pm8921_read_buf(const struct device *dev, u16 addr, u8 *buf,
@@ -52,7 +52,7 @@ static int pm8921_read_buf(const struct device *dev, u16 addr, u8 *buf,
52 const struct pm8xxx_drvdata *pm8921_drvdata = dev_get_drvdata(dev); 52 const struct pm8xxx_drvdata *pm8921_drvdata = dev_get_drvdata(dev);
53 const struct pm8921 *pmic = pm8921_drvdata->pm_chip_data; 53 const struct pm8921 *pmic = pm8921_drvdata->pm_chip_data;
54 54
55 return msm_ssbi_read(pmic->dev->parent, addr, buf, cnt); 55 return ssbi_read(pmic->dev->parent, addr, buf, cnt);
56} 56}
57 57
58static int pm8921_write_buf(const struct device *dev, u16 addr, u8 *buf, 58static int pm8921_write_buf(const struct device *dev, u16 addr, u8 *buf,
@@ -61,7 +61,7 @@ static int pm8921_write_buf(const struct device *dev, u16 addr, u8 *buf,
61 const struct pm8xxx_drvdata *pm8921_drvdata = dev_get_drvdata(dev); 61 const struct pm8xxx_drvdata *pm8921_drvdata = dev_get_drvdata(dev);
62 const struct pm8921 *pmic = pm8921_drvdata->pm_chip_data; 62 const struct pm8921 *pmic = pm8921_drvdata->pm_chip_data;
63 63
64 return msm_ssbi_write(pmic->dev->parent, addr, buf, cnt); 64 return ssbi_write(pmic->dev->parent, addr, buf, cnt);
65} 65}
66 66
67static int pm8921_read_irq_stat(const struct device *dev, int irq) 67static int pm8921_read_irq_stat(const struct device *dev, int irq)
@@ -124,7 +124,7 @@ static int pm8921_probe(struct platform_device *pdev)
124 } 124 }
125 125
126 /* Read PMIC chip revision */ 126 /* Read PMIC chip revision */
127 rc = msm_ssbi_read(pdev->dev.parent, REG_HWREV, &val, sizeof(val)); 127 rc = ssbi_read(pdev->dev.parent, REG_HWREV, &val, sizeof(val));
128 if (rc) { 128 if (rc) {
129 pr_err("Failed to read hw rev reg %d:rc=%d\n", REG_HWREV, rc); 129 pr_err("Failed to read hw rev reg %d:rc=%d\n", REG_HWREV, rc);
130 goto err_read_rev; 130 goto err_read_rev;
@@ -133,7 +133,7 @@ static int pm8921_probe(struct platform_device *pdev)
133 rev = val; 133 rev = val;
134 134
135 /* Read PMIC chip revision 2 */ 135 /* Read PMIC chip revision 2 */
136 rc = msm_ssbi_read(pdev->dev.parent, REG_HWREV_2, &val, sizeof(val)); 136 rc = ssbi_read(pdev->dev.parent, REG_HWREV_2, &val, sizeof(val));
137 if (rc) { 137 if (rc) {
138 pr_err("Failed to read hw rev 2 reg %d:rc=%d\n", 138 pr_err("Failed to read hw rev 2 reg %d:rc=%d\n",
139 REG_HWREV_2, rc); 139 REG_HWREV_2, rc);
diff --git a/drivers/mfd/wm5102-tables.c b/drivers/mfd/wm5102-tables.c
index a433f580aa4c..ca2aed6bc830 100644
--- a/drivers/mfd/wm5102-tables.c
+++ b/drivers/mfd/wm5102-tables.c
@@ -331,6 +331,10 @@ static const struct reg_default wm5102_reg_default[] = {
331 { 0x000002A3, 0x1102 }, /* R675 - Mic Detect 1 */ 331 { 0x000002A3, 0x1102 }, /* R675 - Mic Detect 1 */
332 { 0x000002A4, 0x009F }, /* R676 - Mic Detect 2 */ 332 { 0x000002A4, 0x009F }, /* R676 - Mic Detect 2 */
333 { 0x000002A5, 0x0000 }, /* R677 - Mic Detect 3 */ 333 { 0x000002A5, 0x0000 }, /* R677 - Mic Detect 3 */
334 { 0x000002A6, 0x3737 }, /* R678 - Mic Detect Level 1 */
335 { 0x000002A7, 0x372C }, /* R679 - Mic Detect Level 2 */
336 { 0x000002A8, 0x1422 }, /* R680 - Mic Detect Level 3 */
337 { 0x000002A9, 0x030A }, /* R681 - Mic Detect Level 4 */
334 { 0x000002C3, 0x0000 }, /* R707 - Mic noise mix control 1 */ 338 { 0x000002C3, 0x0000 }, /* R707 - Mic noise mix control 1 */
335 { 0x000002CB, 0x0000 }, /* R715 - Isolation control */ 339 { 0x000002CB, 0x0000 }, /* R715 - Isolation control */
336 { 0x000002D3, 0x0000 }, /* R723 - Jack detect analogue */ 340 { 0x000002D3, 0x0000 }, /* R723 - Jack detect analogue */
@@ -1090,6 +1094,10 @@ static bool wm5102_readable_register(struct device *dev, unsigned int reg)
1090 case ARIZONA_MIC_DETECT_1: 1094 case ARIZONA_MIC_DETECT_1:
1091 case ARIZONA_MIC_DETECT_2: 1095 case ARIZONA_MIC_DETECT_2:
1092 case ARIZONA_MIC_DETECT_3: 1096 case ARIZONA_MIC_DETECT_3:
1097 case ARIZONA_MIC_DETECT_LEVEL_1:
1098 case ARIZONA_MIC_DETECT_LEVEL_2:
1099 case ARIZONA_MIC_DETECT_LEVEL_3:
1100 case ARIZONA_MIC_DETECT_LEVEL_4:
1093 case ARIZONA_MIC_NOISE_MIX_CONTROL_1: 1101 case ARIZONA_MIC_NOISE_MIX_CONTROL_1:
1094 case ARIZONA_ISOLATION_CONTROL: 1102 case ARIZONA_ISOLATION_CONTROL:
1095 case ARIZONA_JACK_DETECT_ANALOGUE: 1103 case ARIZONA_JACK_DETECT_ANALOGUE: