cs53l30 922 sound/soc/codecs/cs53l30.c struct cs53l30_private *cs53l30; cs53l30 928 sound/soc/codecs/cs53l30.c cs53l30 = devm_kzalloc(dev, sizeof(*cs53l30), GFP_KERNEL); cs53l30 929 sound/soc/codecs/cs53l30.c if (!cs53l30) cs53l30 932 sound/soc/codecs/cs53l30.c for (i = 0; i < ARRAY_SIZE(cs53l30->supplies); i++) cs53l30 933 sound/soc/codecs/cs53l30.c cs53l30->supplies[i].supply = cs53l30_supply_names[i]; cs53l30 935 sound/soc/codecs/cs53l30.c ret = devm_regulator_bulk_get(dev, ARRAY_SIZE(cs53l30->supplies), cs53l30 936 sound/soc/codecs/cs53l30.c cs53l30->supplies); cs53l30 942 sound/soc/codecs/cs53l30.c ret = regulator_bulk_enable(ARRAY_SIZE(cs53l30->supplies), cs53l30 943 sound/soc/codecs/cs53l30.c cs53l30->supplies); cs53l30 950 sound/soc/codecs/cs53l30.c cs53l30->reset_gpio = devm_gpiod_get_optional(dev, "reset", cs53l30 952 sound/soc/codecs/cs53l30.c if (IS_ERR(cs53l30->reset_gpio)) { cs53l30 953 sound/soc/codecs/cs53l30.c ret = PTR_ERR(cs53l30->reset_gpio); cs53l30 957 sound/soc/codecs/cs53l30.c gpiod_set_value_cansleep(cs53l30->reset_gpio, 1); cs53l30 959 sound/soc/codecs/cs53l30.c i2c_set_clientdata(client, cs53l30); cs53l30 961 sound/soc/codecs/cs53l30.c cs53l30->mclk_rate = 0; cs53l30 963 sound/soc/codecs/cs53l30.c cs53l30->regmap = devm_regmap_init_i2c(client, &cs53l30_regmap); cs53l30 964 sound/soc/codecs/cs53l30.c if (IS_ERR(cs53l30->regmap)) { cs53l30 965 sound/soc/codecs/cs53l30.c ret = PTR_ERR(cs53l30->regmap); cs53l30 971 sound/soc/codecs/cs53l30.c ret = regmap_read(cs53l30->regmap, CS53L30_DEVID_AB, ®); cs53l30 974 sound/soc/codecs/cs53l30.c ret = regmap_read(cs53l30->regmap, CS53L30_DEVID_CD, ®); cs53l30 977 sound/soc/codecs/cs53l30.c ret = regmap_read(cs53l30->regmap, CS53L30_DEVID_E, ®); cs53l30 987 sound/soc/codecs/cs53l30.c ret = regmap_read(cs53l30->regmap, CS53L30_REVID, ®); cs53l30 994 sound/soc/codecs/cs53l30.c cs53l30->mclk = devm_clk_get(dev, "mclk"); cs53l30 995 sound/soc/codecs/cs53l30.c if (IS_ERR(cs53l30->mclk)) { cs53l30 996 sound/soc/codecs/cs53l30.c if (PTR_ERR(cs53l30->mclk) != -ENOENT) { cs53l30 997 sound/soc/codecs/cs53l30.c ret = PTR_ERR(cs53l30->mclk); cs53l30 1001 sound/soc/codecs/cs53l30.c cs53l30->mclk = NULL; cs53l30 1005 sound/soc/codecs/cs53l30.c cs53l30->mute_gpio = devm_gpiod_get_optional(dev, "mute", cs53l30 1007 sound/soc/codecs/cs53l30.c if (IS_ERR(cs53l30->mute_gpio)) { cs53l30 1008 sound/soc/codecs/cs53l30.c ret = PTR_ERR(cs53l30->mute_gpio); cs53l30 1012 sound/soc/codecs/cs53l30.c if (cs53l30->mute_gpio) { cs53l30 1014 sound/soc/codecs/cs53l30.c regmap_write(cs53l30->regmap, CS53L30_MUTEP_CTL1, cs53l30 1017 sound/soc/codecs/cs53l30.c if (gpiod_is_active_low(cs53l30->mute_gpio)) cs53l30 1018 sound/soc/codecs/cs53l30.c regmap_update_bits(cs53l30->regmap, CS53L30_MUTEP_CTL2, cs53l30 1023 sound/soc/codecs/cs53l30.c regmap_update_bits(cs53l30->regmap, CS53L30_MICBIAS_CTL, cs53l30 1027 sound/soc/codecs/cs53l30.c cs53l30->use_sdout2 = true; cs53l30 1040 sound/soc/codecs/cs53l30.c regulator_bulk_disable(ARRAY_SIZE(cs53l30->supplies), cs53l30 1041 sound/soc/codecs/cs53l30.c cs53l30->supplies); cs53l30 1047 sound/soc/codecs/cs53l30.c struct cs53l30_private *cs53l30 = i2c_get_clientdata(client); cs53l30 1050 sound/soc/codecs/cs53l30.c gpiod_set_value_cansleep(cs53l30->reset_gpio, 0); cs53l30 1052 sound/soc/codecs/cs53l30.c regulator_bulk_disable(ARRAY_SIZE(cs53l30->supplies), cs53l30 1053 sound/soc/codecs/cs53l30.c cs53l30->supplies); cs53l30 1061 sound/soc/codecs/cs53l30.c struct cs53l30_private *cs53l30 = dev_get_drvdata(dev); cs53l30 1063 sound/soc/codecs/cs53l30.c regcache_cache_only(cs53l30->regmap, true); cs53l30 1066 sound/soc/codecs/cs53l30.c gpiod_set_value_cansleep(cs53l30->reset_gpio, 0); cs53l30 1068 sound/soc/codecs/cs53l30.c regulator_bulk_disable(ARRAY_SIZE(cs53l30->supplies), cs53l30 1069 sound/soc/codecs/cs53l30.c cs53l30->supplies); cs53l30 1076 sound/soc/codecs/cs53l30.c struct cs53l30_private *cs53l30 = dev_get_drvdata(dev); cs53l30 1079 sound/soc/codecs/cs53l30.c ret = regulator_bulk_enable(ARRAY_SIZE(cs53l30->supplies), cs53l30 1080 sound/soc/codecs/cs53l30.c cs53l30->supplies); cs53l30 1086 sound/soc/codecs/cs53l30.c gpiod_set_value_cansleep(cs53l30->reset_gpio, 1); cs53l30 1088 sound/soc/codecs/cs53l30.c regcache_cache_only(cs53l30->regmap, false); cs53l30 1089 sound/soc/codecs/cs53l30.c ret = regcache_sync(cs53l30->regmap);