aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCharles Keepax <ckeepax@opensource.cirrus.com>2017-09-04 11:41:51 -0400
committerMark Brown <broonie@kernel.org>2017-09-20 12:34:04 -0400
commit6000c99ee6e9876cb33275c752937d99f77cdb95 (patch)
tree2d7fe4752fbf3a9c5128e112a3f65a8d2eb08b00
parent9fda3b428a74339e358d4b0850427fa1ce1b4714 (diff)
mfd: arizona: Remove audio related device tree code
This code has now been moved to the audio subsystem so is no longer required in the MFD code. Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com> Acked-by: Lee Jones <lee.jones@linaro.org> Signed-off-by: Mark Brown <broonie@kernel.org>
-rw-r--r--drivers/mfd/arizona-core.c132
1 files changed, 1 insertions, 131 deletions
diff --git a/drivers/mfd/arizona-core.c b/drivers/mfd/arizona-core.c
index 8d46e3ad9529..77875250abe5 100644
--- a/drivers/mfd/arizona-core.c
+++ b/drivers/mfd/arizona-core.c
@@ -797,12 +797,7 @@ EXPORT_SYMBOL_GPL(arizona_of_get_type);
797static int arizona_of_get_core_pdata(struct arizona *arizona) 797static int arizona_of_get_core_pdata(struct arizona *arizona)
798{ 798{
799 struct arizona_pdata *pdata = &arizona->pdata; 799 struct arizona_pdata *pdata = &arizona->pdata;
800 struct property *prop;
801 const __be32 *cur;
802 u32 val;
803 u32 pdm_val[ARIZONA_MAX_PDM_SPK];
804 int ret, i; 800 int ret, i;
805 int count = 0;
806 801
807 pdata->reset = of_get_named_gpio(arizona->dev->of_node, "wlf,reset", 0); 802 pdata->reset = of_get_named_gpio(arizona->dev->of_node, "wlf,reset", 0);
808 if (pdata->reset == -EPROBE_DEFER) { 803 if (pdata->reset == -EPROBE_DEFER) {
@@ -836,64 +831,6 @@ static int arizona_of_get_core_pdata(struct arizona *arizona)
836 ret); 831 ret);
837 } 832 }
838 833
839 of_property_for_each_u32(arizona->dev->of_node, "wlf,inmode", prop,
840 cur, val) {
841 if (count == ARRAY_SIZE(pdata->inmode))
842 break;
843
844 pdata->inmode[count] = val;
845 count++;
846 }
847
848 count = 0;
849 of_property_for_each_u32(arizona->dev->of_node, "wlf,dmic-ref", prop,
850 cur, val) {
851 if (count == ARRAY_SIZE(pdata->dmic_ref))
852 break;
853
854 pdata->dmic_ref[count] = val;
855 count++;
856 }
857
858 count = 0;
859 of_property_for_each_u32(arizona->dev->of_node, "wlf,out-mono", prop,
860 cur, val) {
861 if (count == ARRAY_SIZE(pdata->out_mono))
862 break;
863
864 pdata->out_mono[count] = !!val;
865 count++;
866 }
867
868 count = 0;
869 of_property_for_each_u32(arizona->dev->of_node,
870 "wlf,max-channels-clocked",
871 prop, cur, val) {
872 if (count == ARRAY_SIZE(pdata->max_channels_clocked))
873 break;
874
875 pdata->max_channels_clocked[count] = val;
876 count++;
877 }
878
879 ret = of_property_read_u32_array(arizona->dev->of_node,
880 "wlf,spk-fmt",
881 pdm_val,
882 ARRAY_SIZE(pdm_val));
883
884 if (ret >= 0)
885 for (count = 0; count < ARRAY_SIZE(pdata->spk_fmt); ++count)
886 pdata->spk_fmt[count] = pdm_val[count];
887
888 ret = of_property_read_u32_array(arizona->dev->of_node,
889 "wlf,spk-mute",
890 pdm_val,
891 ARRAY_SIZE(pdm_val));
892
893 if (ret >= 0)
894 for (count = 0; count < ARRAY_SIZE(pdata->spk_mute); ++count)
895 pdata->spk_mute[count] = pdm_val[count];
896
897 return 0; 834 return 0;
898} 835}
899 836
@@ -1026,7 +963,7 @@ int arizona_dev_init(struct arizona *arizona)
1026 const char * const mclk_name[] = { "mclk1", "mclk2" }; 963 const char * const mclk_name[] = { "mclk1", "mclk2" };
1027 struct device *dev = arizona->dev; 964 struct device *dev = arizona->dev;
1028 const char *type_name = NULL; 965 const char *type_name = NULL;
1029 unsigned int reg, val, mask; 966 unsigned int reg, val;
1030 int (*apply_patch)(struct arizona *) = NULL; 967 int (*apply_patch)(struct arizona *) = NULL;
1031 const struct mfd_cell *subdevs = NULL; 968 const struct mfd_cell *subdevs = NULL;
1032 int n_subdevs, ret, i; 969 int n_subdevs, ret, i;
@@ -1429,73 +1366,6 @@ int arizona_dev_init(struct arizona *arizona)
1429 ARIZONA_MICB1_RATE, val); 1366 ARIZONA_MICB1_RATE, val);
1430 } 1367 }
1431 1368
1432 for (i = 0; i < ARIZONA_MAX_INPUT; i++) {
1433 /* Default for both is 0 so noop with defaults */
1434 val = arizona->pdata.dmic_ref[i]
1435 << ARIZONA_IN1_DMIC_SUP_SHIFT;
1436 if (arizona->pdata.inmode[i] & ARIZONA_INMODE_DMIC)
1437 val |= 1 << ARIZONA_IN1_MODE_SHIFT;
1438
1439 switch (arizona->type) {
1440 case WM8998:
1441 case WM1814:
1442 regmap_update_bits(arizona->regmap,
1443 ARIZONA_ADC_DIGITAL_VOLUME_1L + (i * 8),
1444 ARIZONA_IN1L_SRC_SE_MASK,
1445 (arizona->pdata.inmode[i] & ARIZONA_INMODE_SE)
1446 << ARIZONA_IN1L_SRC_SE_SHIFT);
1447
1448 regmap_update_bits(arizona->regmap,
1449 ARIZONA_ADC_DIGITAL_VOLUME_1R + (i * 8),
1450 ARIZONA_IN1R_SRC_SE_MASK,
1451 (arizona->pdata.inmode[i] & ARIZONA_INMODE_SE)
1452 << ARIZONA_IN1R_SRC_SE_SHIFT);
1453
1454 mask = ARIZONA_IN1_DMIC_SUP_MASK |
1455 ARIZONA_IN1_MODE_MASK;
1456 break;
1457 default:
1458 if (arizona->pdata.inmode[i] & ARIZONA_INMODE_SE)
1459 val |= 1 << ARIZONA_IN1_SINGLE_ENDED_SHIFT;
1460
1461 mask = ARIZONA_IN1_DMIC_SUP_MASK |
1462 ARIZONA_IN1_MODE_MASK |
1463 ARIZONA_IN1_SINGLE_ENDED_MASK;
1464 break;
1465 }
1466
1467 regmap_update_bits(arizona->regmap,
1468 ARIZONA_IN1L_CONTROL + (i * 8),
1469 mask, val);
1470 }
1471
1472 for (i = 0; i < ARIZONA_MAX_OUTPUT; i++) {
1473 /* Default is 0 so noop with defaults */
1474 if (arizona->pdata.out_mono[i])
1475 val = ARIZONA_OUT1_MONO;
1476 else
1477 val = 0;
1478
1479 regmap_update_bits(arizona->regmap,
1480 ARIZONA_OUTPUT_PATH_CONFIG_1L + (i * 8),
1481 ARIZONA_OUT1_MONO, val);
1482 }
1483
1484 for (i = 0; i < ARIZONA_MAX_PDM_SPK; i++) {
1485 if (arizona->pdata.spk_mute[i])
1486 regmap_update_bits(arizona->regmap,
1487 ARIZONA_PDM_SPK1_CTRL_1 + (i * 2),
1488 ARIZONA_SPK1_MUTE_ENDIAN_MASK |
1489 ARIZONA_SPK1_MUTE_SEQ1_MASK,
1490 arizona->pdata.spk_mute[i]);
1491
1492 if (arizona->pdata.spk_fmt[i])
1493 regmap_update_bits(arizona->regmap,
1494 ARIZONA_PDM_SPK1_CTRL_2 + (i * 2),
1495 ARIZONA_SPK1_FMT_MASK,
1496 arizona->pdata.spk_fmt[i]);
1497 }
1498
1499 pm_runtime_set_active(arizona->dev); 1369 pm_runtime_set_active(arizona->dev);
1500 pm_runtime_enable(arizona->dev); 1370 pm_runtime_enable(arizona->dev);
1501 1371