Lines Matching defs:aic32x4

622 		printk(KERN_ERR "aic32x4: invalid DAI master/slave interface\n");
649 printk(KERN_ERR "aic32x4: invalid DAI interface format\n");
800 struct aic32x4_priv *aic32x4 = snd_soc_component_get_drvdata(component);
832 if (aic32x4->swapdacs)
924 struct aic32x4_priv *aic32x4 = snd_soc_component_get_drvdata(component);
928 if (aic32x4->setup->gpio_func[0] != AIC32X4_MFPX_DEFAULT_VALUE) {
930 aic32x4->setup->gpio_func[0]);
936 if (aic32x4->setup->gpio_func[1] != AIC32X4_MFPX_DEFAULT_VALUE) {
938 aic32x4->setup->gpio_func[1]);
944 if (aic32x4->setup->gpio_func[2] != AIC32X4_MFPX_DEFAULT_VALUE) {
946 aic32x4->setup->gpio_func[2]);
952 if (aic32x4->setup->gpio_func[3] != AIC32X4_MFPX_DEFAULT_VALUE) {
954 aic32x4->setup->gpio_func[3]);
960 if (aic32x4->setup->gpio_func[4] != AIC32X4_MFPX_DEFAULT_VALUE) {
962 aic32x4->setup->gpio_func[4]);
970 struct aic32x4_priv *aic32x4 = snd_soc_component_get_drvdata(component);
985 if (aic32x4->setup)
992 if (aic32x4->power_cfg & AIC32X4_PWR_MICBIAS_2075_LDOIN) {
996 if (aic32x4->power_cfg & AIC32X4_PWR_AVDD_DVDD_WEAK_DISABLE)
999 tmp_reg = (aic32x4->power_cfg & AIC32X4_PWR_AIC32X4_LDO_ENABLE) ?
1004 if (aic32x4->power_cfg & AIC32X4_PWR_CMMODE_LDOIN_RANGE_18_36)
1006 if (aic32x4->power_cfg & AIC32X4_PWR_CMMODE_HP_LDOIN_POWERED)
1011 if (aic32x4->micpga_routing & AIC32X4_MICPGA_ROUTE_LMIC_IN2R_10K)
1017 if (aic32x4->micpga_routing & AIC32X4_MICPGA_ROUTE_RMIC_IN1L_10K)
1061 static int aic32x4_parse_dt(struct aic32x4_priv *aic32x4,
1067 aic32x4_setup = devm_kzalloc(aic32x4->dev, sizeof(*aic32x4_setup),
1075 aic32x4->mclk_name = of_clk_get_parent_name(np, ret);
1077 aic32x4->swapdacs = false;
1078 aic32x4->micpga_routing = 0;
1079 aic32x4->rstn_gpio = of_get_named_gpio(np, "reset-gpios", 0);
1081 if (of_property_read_u32_array(np, "aic32x4-gpio-func",
1083 aic32x4->setup = aic32x4_setup;
1087 static void aic32x4_disable_regulators(struct aic32x4_priv *aic32x4)
1089 regulator_disable(aic32x4->supply_iov);
1091 if (!IS_ERR(aic32x4->supply_ldo))
1092 regulator_disable(aic32x4->supply_ldo);
1094 if (!IS_ERR(aic32x4->supply_dv))
1095 regulator_disable(aic32x4->supply_dv);
1097 if (!IS_ERR(aic32x4->supply_av))
1098 regulator_disable(aic32x4->supply_av);
1102 struct aic32x4_priv *aic32x4)
1106 aic32x4->supply_ldo = devm_regulator_get_optional(dev, "ldoin");
1107 aic32x4->supply_iov = devm_regulator_get(dev, "iov");
1108 aic32x4->supply_dv = devm_regulator_get_optional(dev, "dv");
1109 aic32x4->supply_av = devm_regulator_get_optional(dev, "av");
1113 if (IS_ERR(aic32x4->supply_iov)) {
1115 return PTR_ERR(aic32x4->supply_iov);
1118 if (IS_ERR(aic32x4->supply_ldo)) {
1119 if (PTR_ERR(aic32x4->supply_ldo) == -EPROBE_DEFER)
1122 if (IS_ERR(aic32x4->supply_dv)) {
1124 return PTR_ERR(aic32x4->supply_dv);
1126 if (IS_ERR(aic32x4->supply_av)) {
1128 return PTR_ERR(aic32x4->supply_av);
1131 if (PTR_ERR(aic32x4->supply_dv) == -EPROBE_DEFER)
1133 if (PTR_ERR(aic32x4->supply_av) == -EPROBE_DEFER)
1137 ret = regulator_enable(aic32x4->supply_iov);
1143 if (!IS_ERR(aic32x4->supply_ldo)) {
1144 ret = regulator_enable(aic32x4->supply_ldo);
1151 if (!IS_ERR(aic32x4->supply_dv)) {
1152 ret = regulator_enable(aic32x4->supply_dv);
1159 if (!IS_ERR(aic32x4->supply_av)) {
1160 ret = regulator_enable(aic32x4->supply_av);
1167 if (!IS_ERR(aic32x4->supply_ldo) && IS_ERR(aic32x4->supply_av))
1168 aic32x4->power_cfg |= AIC32X4_PWR_AIC32X4_LDO_ENABLE;
1173 if (!IS_ERR(aic32x4->supply_dv))
1174 regulator_disable(aic32x4->supply_dv);
1177 if (!IS_ERR(aic32x4->supply_ldo))
1178 regulator_disable(aic32x4->supply_ldo);
1181 regulator_disable(aic32x4->supply_iov);
1187 struct aic32x4_priv *aic32x4;
1195 aic32x4 = devm_kzalloc(dev, sizeof(struct aic32x4_priv),
1197 if (aic32x4 == NULL)
1200 aic32x4->dev = dev;
1201 dev_set_drvdata(dev, aic32x4);
1204 aic32x4->power_cfg = pdata->power_cfg;
1205 aic32x4->swapdacs = pdata->swapdacs;
1206 aic32x4->micpga_routing = pdata->micpga_routing;
1207 aic32x4->rstn_gpio = pdata->rstn_gpio;
1208 aic32x4->mclk_name = "mclk";
1210 ret = aic32x4_parse_dt(aic32x4, np);
1216 aic32x4->power_cfg = 0;
1217 aic32x4->swapdacs = false;
1218 aic32x4->micpga_routing = 0;
1219 aic32x4->rstn_gpio = -1;
1220 aic32x4->mclk_name = "mclk";
1223 if (gpio_is_valid(aic32x4->rstn_gpio)) {
1224 ret = devm_gpio_request_one(dev, aic32x4->rstn_gpio,
1230 ret = aic32x4_setup_regulators(dev, aic32x4);
1236 if (gpio_is_valid(aic32x4->rstn_gpio)) {
1238 gpio_set_value_cansleep(aic32x4->rstn_gpio, 1);
1246 ret = aic32x4_register_clocks(dev, aic32x4->mclk_name);
1260 aic32x4_disable_regulators(aic32x4);
1268 struct aic32x4_priv *aic32x4 = dev_get_drvdata(dev);
1270 aic32x4_disable_regulators(aic32x4);