wm8996            105 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = container_of(nb, struct wm8996_priv, \
wm8996            108 sound/soc/codecs/wm8996.c 		regcache_mark_dirty(wm8996->regmap);	\
wm8996            336 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            337 sound/soc/codecs/wm8996.c 	struct wm8996_pdata *pdata = &wm8996->pdata;
wm8996            340 sound/soc/codecs/wm8996.c 	if (!wm8996->num_retune_mobile_texts)
wm8996            366 sound/soc/codecs/wm8996.c 	cfg = wm8996->retune_mobile_cfg[block];
wm8996            371 sound/soc/codecs/wm8996.c 			   wm8996->retune_mobile_texts[cfg]) == 0 &&
wm8996            373 sound/soc/codecs/wm8996.c 			- wm8996->rx_rate[iface]) < best_val) {
wm8996            376 sound/soc/codecs/wm8996.c 				       - wm8996->rx_rate[iface]);
wm8996            384 sound/soc/codecs/wm8996.c 		wm8996->rx_rate[iface]);
wm8996            413 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            414 sound/soc/codecs/wm8996.c 	struct wm8996_pdata *pdata = &wm8996->pdata;
wm8996            424 sound/soc/codecs/wm8996.c 	wm8996->retune_mobile_cfg[block] = value;
wm8996            435 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            440 sound/soc/codecs/wm8996.c 	ucontrol->value.enumerated.item[0] = wm8996->retune_mobile_cfg[block];
wm8996            576 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            578 sound/soc/codecs/wm8996.c 	wm8996->bg_ena++;
wm8996            579 sound/soc/codecs/wm8996.c 	if (wm8996->bg_ena == 1) {
wm8996            588 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            590 sound/soc/codecs/wm8996.c 	wm8996->bg_ena--;
wm8996            591 sound/soc/codecs/wm8996.c 	if (!wm8996->bg_ena)
wm8996            635 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            640 sound/soc/codecs/wm8996.c 		wm8996->hpout_pending &= ~w->shift;
wm8996            643 sound/soc/codecs/wm8996.c 		wm8996->hpout_pending |= w->shift;
wm8996            656 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            665 sound/soc/codecs/wm8996.c 			timeout = wait_for_completion_timeout(&wm8996->dcs_done,
wm8996            688 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            692 sound/soc/codecs/wm8996.c 	if (wm8996->dcs_pending) {
wm8996            694 sound/soc/codecs/wm8996.c 			wm8996->dcs_pending);
wm8996            697 sound/soc/codecs/wm8996.c 		wait_for_dc_servo(component, wm8996->dcs_pending
wm8996            700 sound/soc/codecs/wm8996.c 		wm8996->dcs_pending = 0;
wm8996            703 sound/soc/codecs/wm8996.c 	if (wm8996->hpout_pending != wm8996->hpout_ena) {
wm8996            705 sound/soc/codecs/wm8996.c 			wm8996->hpout_ena, wm8996->hpout_pending);
wm8996            709 sound/soc/codecs/wm8996.c 		if (wm8996->hpout_pending & HPOUT1L) {
wm8996            718 sound/soc/codecs/wm8996.c 		if (wm8996->hpout_pending & HPOUT1R) {
wm8996            731 sound/soc/codecs/wm8996.c 		if (wm8996->hpout_pending & HPOUT2L) {
wm8996            740 sound/soc/codecs/wm8996.c 		if (wm8996->hpout_pending & HPOUT2R) {
wm8996            751 sound/soc/codecs/wm8996.c 		wm8996->hpout_ena = wm8996->hpout_pending;
wm8996            759 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996            763 sound/soc/codecs/wm8996.c 		wm8996->dcs_pending |= 1 << w->shift;
wm8996           1533 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           1539 sound/soc/codecs/wm8996.c 	if (wm8996->sysclk < 64000)
wm8996           1552 sound/soc/codecs/wm8996.c 		bclk_rate = wm8996->bclk_rate[aif];
wm8996           1557 sound/soc/codecs/wm8996.c 			cur_val = (wm8996->sysclk / bclk_divs[i]) - bclk_rate;
wm8996           1562 sound/soc/codecs/wm8996.c 		bclk_rate = wm8996->sysclk / bclk_divs[best];
wm8996           1574 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           1590 sound/soc/codecs/wm8996.c 			ret = regulator_bulk_enable(ARRAY_SIZE(wm8996->supplies),
wm8996           1591 sound/soc/codecs/wm8996.c 						    wm8996->supplies);
wm8996           1599 sound/soc/codecs/wm8996.c 			if (wm8996->pdata.ldo_ena >= 0) {
wm8996           1600 sound/soc/codecs/wm8996.c 				gpio_set_value_cansleep(wm8996->pdata.ldo_ena,
wm8996           1605 sound/soc/codecs/wm8996.c 			regcache_cache_only(wm8996->regmap, false);
wm8996           1606 sound/soc/codecs/wm8996.c 			regcache_sync(wm8996->regmap);
wm8996           1617 sound/soc/codecs/wm8996.c 		regcache_cache_only(wm8996->regmap, true);
wm8996           1618 sound/soc/codecs/wm8996.c 		if (wm8996->pdata.ldo_ena >= 0) {
wm8996           1619 sound/soc/codecs/wm8996.c 			gpio_set_value_cansleep(wm8996->pdata.ldo_ena, 0);
wm8996           1620 sound/soc/codecs/wm8996.c 			regcache_cache_only(wm8996->regmap, true);
wm8996           1622 sound/soc/codecs/wm8996.c 		regulator_bulk_disable(ARRAY_SIZE(wm8996->supplies),
wm8996           1623 sound/soc/codecs/wm8996.c 				       wm8996->supplies);
wm8996           1734 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           1775 sound/soc/codecs/wm8996.c 	wm8996->bclk_rate[dai->id] = bclk_rate;
wm8996           1776 sound/soc/codecs/wm8996.c 	wm8996->rx_rate[dai->id] = params_rate(params);
wm8996           1814 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           1821 sound/soc/codecs/wm8996.c 	if (freq == wm8996->sysclk && clk_id == wm8996->sysclk_src)
wm8996           1831 sound/soc/codecs/wm8996.c 		wm8996->sysclk = freq;
wm8996           1835 sound/soc/codecs/wm8996.c 		wm8996->sysclk = freq;
wm8996           1839 sound/soc/codecs/wm8996.c 		wm8996->sysclk = freq;
wm8996           1847 sound/soc/codecs/wm8996.c 	switch (wm8996->sysclk) {
wm8996           1856 sound/soc/codecs/wm8996.c 		wm8996->sysclk /= 2;
wm8996           1870 sound/soc/codecs/wm8996.c 			 wm8996->sysclk);
wm8996           1885 sound/soc/codecs/wm8996.c 	wm8996->sysclk_src = clk_id;
wm8996           2004 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           2011 sound/soc/codecs/wm8996.c 	if (source == wm8996->fll_src && Fref == wm8996->fll_fref &&
wm8996           2012 sound/soc/codecs/wm8996.c 	    Fout == wm8996->fll_fout)
wm8996           2018 sound/soc/codecs/wm8996.c 		wm8996->fll_fref = 0;
wm8996           2019 sound/soc/codecs/wm8996.c 		wm8996->fll_fout = 0;
wm8996           2086 sound/soc/codecs/wm8996.c 	try_wait_for_completion(&wm8996->fll_lock);
wm8996           2112 sound/soc/codecs/wm8996.c 		time_left = wait_for_completion_timeout(&wm8996->fll_lock,
wm8996           2131 sound/soc/codecs/wm8996.c 	wm8996->fll_fref = Fref;
wm8996           2132 sound/soc/codecs/wm8996.c 	wm8996->fll_fout = Fout;
wm8996           2133 sound/soc/codecs/wm8996.c 	wm8996->fll_src = source;
wm8996           2141 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = gpiochip_get_data(chip);
wm8996           2143 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_GPIO_1 + offset,
wm8996           2150 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = gpiochip_get_data(chip);
wm8996           2155 sound/soc/codecs/wm8996.c 	return regmap_update_bits(wm8996->regmap, WM8996_GPIO_1 + offset,
wm8996           2162 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = gpiochip_get_data(chip);
wm8996           2166 sound/soc/codecs/wm8996.c 	ret = regmap_read(wm8996->regmap, WM8996_GPIO_1 + offset, &reg);
wm8996           2175 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = gpiochip_get_data(chip);
wm8996           2177 sound/soc/codecs/wm8996.c 	return regmap_update_bits(wm8996->regmap, WM8996_GPIO_1 + offset,
wm8996           2193 sound/soc/codecs/wm8996.c static void wm8996_init_gpio(struct wm8996_priv *wm8996)
wm8996           2197 sound/soc/codecs/wm8996.c 	wm8996->gpio_chip = wm8996_template_chip;
wm8996           2198 sound/soc/codecs/wm8996.c 	wm8996->gpio_chip.ngpio = 5;
wm8996           2199 sound/soc/codecs/wm8996.c 	wm8996->gpio_chip.parent = wm8996->dev;
wm8996           2201 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.gpio_base)
wm8996           2202 sound/soc/codecs/wm8996.c 		wm8996->gpio_chip.base = wm8996->pdata.gpio_base;
wm8996           2204 sound/soc/codecs/wm8996.c 		wm8996->gpio_chip.base = -1;
wm8996           2206 sound/soc/codecs/wm8996.c 	ret = gpiochip_add_data(&wm8996->gpio_chip, wm8996);
wm8996           2208 sound/soc/codecs/wm8996.c 		dev_err(wm8996->dev, "Failed to add GPIOs: %d\n", ret);
wm8996           2211 sound/soc/codecs/wm8996.c static void wm8996_free_gpio(struct wm8996_priv *wm8996)
wm8996           2213 sound/soc/codecs/wm8996.c 	gpiochip_remove(&wm8996->gpio_chip);
wm8996           2216 sound/soc/codecs/wm8996.c static void wm8996_init_gpio(struct wm8996_priv *wm8996)
wm8996           2220 sound/soc/codecs/wm8996.c static void wm8996_free_gpio(struct wm8996_priv *wm8996)
wm8996           2239 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           2242 sound/soc/codecs/wm8996.c 	wm8996->jack = jack;
wm8996           2243 sound/soc/codecs/wm8996.c 	wm8996->detecting = true;
wm8996           2244 sound/soc/codecs/wm8996.c 	wm8996->polarity_cb = polarity_cb;
wm8996           2245 sound/soc/codecs/wm8996.c 	wm8996->jack_flips = 0;
wm8996           2247 sound/soc/codecs/wm8996.c 	if (wm8996->polarity_cb)
wm8996           2248 sound/soc/codecs/wm8996.c 		wm8996->polarity_cb(component, 0);
wm8996           2286 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           2318 sound/soc/codecs/wm8996.c 	if (wm8996->jack_mic)
wm8996           2321 sound/soc/codecs/wm8996.c 	snd_soc_jack_report(wm8996->jack, report,
wm8996           2324 sound/soc/codecs/wm8996.c 	wm8996->detecting = false;
wm8996           2383 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           2398 sound/soc/codecs/wm8996.c 		wm8996->jack_mic = false;
wm8996           2399 sound/soc/codecs/wm8996.c 		wm8996->detecting = true;
wm8996           2400 sound/soc/codecs/wm8996.c 		wm8996->jack_flips = 0;
wm8996           2401 sound/soc/codecs/wm8996.c 		snd_soc_jack_report(wm8996->jack, 0,
wm8996           2418 sound/soc/codecs/wm8996.c 		if (wm8996->detecting) {
wm8996           2420 sound/soc/codecs/wm8996.c 			wm8996->jack_mic = true;
wm8996           2432 sound/soc/codecs/wm8996.c 			snd_soc_jack_report(wm8996->jack, 0, SND_JACK_BTN_0);
wm8996           2444 sound/soc/codecs/wm8996.c 	if (wm8996->detecting && (val & 0x3f0)) {
wm8996           2445 sound/soc/codecs/wm8996.c 		wm8996->jack_flips++;
wm8996           2447 sound/soc/codecs/wm8996.c 		if (wm8996->jack_flips > 1) {
wm8996           2459 sound/soc/codecs/wm8996.c 		if (wm8996->polarity_cb)
wm8996           2460 sound/soc/codecs/wm8996.c 			wm8996->polarity_cb(component,
wm8996           2473 sound/soc/codecs/wm8996.c 		if (wm8996->jack_mic) {
wm8996           2475 sound/soc/codecs/wm8996.c 			snd_soc_jack_report(wm8996->jack, SND_JACK_BTN_0,
wm8996           2477 sound/soc/codecs/wm8996.c 		} else if (wm8996->detecting) {
wm8996           2486 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           2504 sound/soc/codecs/wm8996.c 		complete(&wm8996->dcs_done);
wm8996           2512 sound/soc/codecs/wm8996.c 		complete(&wm8996->fll_lock);
wm8996           2540 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           2541 sound/soc/codecs/wm8996.c 	struct wm8996_pdata *pdata = &wm8996->pdata;
wm8996           2545 sound/soc/codecs/wm8996.c 			     wm8996->retune_mobile_enum,
wm8996           2549 sound/soc/codecs/wm8996.c 			     wm8996->retune_mobile_enum,
wm8996           2560 sound/soc/codecs/wm8996.c 	wm8996->num_retune_mobile_texts = 0;
wm8996           2561 sound/soc/codecs/wm8996.c 	wm8996->retune_mobile_texts = NULL;
wm8996           2563 sound/soc/codecs/wm8996.c 		for (j = 0; j < wm8996->num_retune_mobile_texts; j++) {
wm8996           2565 sound/soc/codecs/wm8996.c 				   wm8996->retune_mobile_texts[j]) == 0)
wm8996           2569 sound/soc/codecs/wm8996.c 		if (j != wm8996->num_retune_mobile_texts)
wm8996           2573 sound/soc/codecs/wm8996.c 		t = krealloc(wm8996->retune_mobile_texts,
wm8996           2575 sound/soc/codecs/wm8996.c 			     (wm8996->num_retune_mobile_texts + 1),
wm8996           2581 sound/soc/codecs/wm8996.c 		t[wm8996->num_retune_mobile_texts] = 
wm8996           2585 sound/soc/codecs/wm8996.c 		wm8996->num_retune_mobile_texts++;
wm8996           2586 sound/soc/codecs/wm8996.c 		wm8996->retune_mobile_texts = t;
wm8996           2590 sound/soc/codecs/wm8996.c 		wm8996->num_retune_mobile_texts);
wm8996           2592 sound/soc/codecs/wm8996.c 	wm8996->retune_mobile_enum.items = wm8996->num_retune_mobile_texts;
wm8996           2593 sound/soc/codecs/wm8996.c 	wm8996->retune_mobile_enum.texts = wm8996->retune_mobile_texts;
wm8996           2616 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = snd_soc_component_get_drvdata(component);
wm8996           2620 sound/soc/codecs/wm8996.c 	wm8996->component = component;
wm8996           2622 sound/soc/codecs/wm8996.c 	init_completion(&wm8996->dcs_done);
wm8996           2623 sound/soc/codecs/wm8996.c 	init_completion(&wm8996->fll_lock);
wm8996           2625 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.num_retune_mobile_cfgs)
wm8996           2632 sound/soc/codecs/wm8996.c 		if (wm8996->pdata.irq_flags)
wm8996           2633 sound/soc/codecs/wm8996.c 			irq_flags = wm8996->pdata.irq_flags;
wm8996           2758 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996;
wm8996           2762 sound/soc/codecs/wm8996.c 	wm8996 = devm_kzalloc(&i2c->dev, sizeof(struct wm8996_priv),
wm8996           2764 sound/soc/codecs/wm8996.c 	if (wm8996 == NULL)
wm8996           2767 sound/soc/codecs/wm8996.c 	i2c_set_clientdata(i2c, wm8996);
wm8996           2768 sound/soc/codecs/wm8996.c 	wm8996->dev = &i2c->dev;
wm8996           2771 sound/soc/codecs/wm8996.c 		memcpy(&wm8996->pdata, dev_get_platdata(&i2c->dev),
wm8996           2772 sound/soc/codecs/wm8996.c 		       sizeof(wm8996->pdata));
wm8996           2774 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.ldo_ena > 0) {
wm8996           2775 sound/soc/codecs/wm8996.c 		ret = gpio_request_one(wm8996->pdata.ldo_ena,
wm8996           2779 sound/soc/codecs/wm8996.c 				wm8996->pdata.ldo_ena, ret);
wm8996           2784 sound/soc/codecs/wm8996.c 	for (i = 0; i < ARRAY_SIZE(wm8996->supplies); i++)
wm8996           2785 sound/soc/codecs/wm8996.c 		wm8996->supplies[i].supply = wm8996_supply_names[i];
wm8996           2787 sound/soc/codecs/wm8996.c 	ret = devm_regulator_bulk_get(&i2c->dev, ARRAY_SIZE(wm8996->supplies),
wm8996           2788 sound/soc/codecs/wm8996.c 				      wm8996->supplies);
wm8996           2794 sound/soc/codecs/wm8996.c 	wm8996->disable_nb[0].notifier_call = wm8996_regulator_event_0;
wm8996           2795 sound/soc/codecs/wm8996.c 	wm8996->disable_nb[1].notifier_call = wm8996_regulator_event_1;
wm8996           2796 sound/soc/codecs/wm8996.c 	wm8996->disable_nb[2].notifier_call = wm8996_regulator_event_2;
wm8996           2799 sound/soc/codecs/wm8996.c 	for (i = 0; i < ARRAY_SIZE(wm8996->supplies); i++) {
wm8996           2801 sound/soc/codecs/wm8996.c 						wm8996->supplies[i].consumer,
wm8996           2802 sound/soc/codecs/wm8996.c 						&wm8996->disable_nb[i]);
wm8996           2810 sound/soc/codecs/wm8996.c 	ret = regulator_bulk_enable(ARRAY_SIZE(wm8996->supplies),
wm8996           2811 sound/soc/codecs/wm8996.c 				    wm8996->supplies);
wm8996           2817 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.ldo_ena > 0) {
wm8996           2818 sound/soc/codecs/wm8996.c 		gpio_set_value_cansleep(wm8996->pdata.ldo_ena, 1);
wm8996           2822 sound/soc/codecs/wm8996.c 	wm8996->regmap = devm_regmap_init_i2c(i2c, &wm8996_regmap);
wm8996           2823 sound/soc/codecs/wm8996.c 	if (IS_ERR(wm8996->regmap)) {
wm8996           2824 sound/soc/codecs/wm8996.c 		ret = PTR_ERR(wm8996->regmap);
wm8996           2829 sound/soc/codecs/wm8996.c 	ret = regmap_read(wm8996->regmap, WM8996_SOFTWARE_RESET, &reg);
wm8996           2840 sound/soc/codecs/wm8996.c 	ret = regmap_read(wm8996->regmap, WM8996_CHIP_REVISION, &reg);
wm8996           2850 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.ldo_ena > 0) {
wm8996           2851 sound/soc/codecs/wm8996.c 		gpio_set_value_cansleep(wm8996->pdata.ldo_ena, 0);
wm8996           2852 sound/soc/codecs/wm8996.c 		regcache_cache_only(wm8996->regmap, true);
wm8996           2854 sound/soc/codecs/wm8996.c 		ret = regmap_write(wm8996->regmap, WM8996_SOFTWARE_RESET,
wm8996           2862 sound/soc/codecs/wm8996.c 	regulator_bulk_disable(ARRAY_SIZE(wm8996->supplies), wm8996->supplies);
wm8996           2865 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_LINE_INPUT_CONTROL,
wm8996           2867 sound/soc/codecs/wm8996.c 			   wm8996->pdata.inl_mode << WM8996_INL_MODE_SHIFT |
wm8996           2868 sound/soc/codecs/wm8996.c 			   wm8996->pdata.inr_mode);
wm8996           2870 sound/soc/codecs/wm8996.c 	for (i = 0; i < ARRAY_SIZE(wm8996->pdata.gpio_default); i++) {
wm8996           2871 sound/soc/codecs/wm8996.c 		if (!wm8996->pdata.gpio_default[i])
wm8996           2874 sound/soc/codecs/wm8996.c 		regmap_write(wm8996->regmap, WM8996_GPIO_1 + i,
wm8996           2875 sound/soc/codecs/wm8996.c 			     wm8996->pdata.gpio_default[i] & 0xffff);
wm8996           2878 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.spkmute_seq)
wm8996           2879 sound/soc/codecs/wm8996.c 		regmap_update_bits(wm8996->regmap,
wm8996           2883 sound/soc/codecs/wm8996.c 				   wm8996->pdata.spkmute_seq);
wm8996           2885 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_ACCESSORY_DETECT_MODE_2,
wm8996           2887 sound/soc/codecs/wm8996.c 			   WM8996_MICD_SRC, wm8996->pdata.micdet_def);
wm8996           2890 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_LEFT_LINE_INPUT_VOLUME,
wm8996           2892 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_RIGHT_LINE_INPUT_VOLUME,
wm8996           2895 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DAC1_LEFT_VOLUME,
wm8996           2897 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DAC1_RIGHT_VOLUME,
wm8996           2899 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DAC2_LEFT_VOLUME,
wm8996           2901 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DAC2_RIGHT_VOLUME,
wm8996           2904 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_OUTPUT1_LEFT_VOLUME,
wm8996           2906 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_OUTPUT1_RIGHT_VOLUME,
wm8996           2908 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_OUTPUT2_LEFT_VOLUME,
wm8996           2910 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_OUTPUT2_RIGHT_VOLUME,
wm8996           2913 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DSP1_TX_LEFT_VOLUME,
wm8996           2915 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DSP1_TX_RIGHT_VOLUME,
wm8996           2917 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DSP2_TX_LEFT_VOLUME,
wm8996           2919 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DSP2_TX_RIGHT_VOLUME,
wm8996           2922 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DSP1_RX_LEFT_VOLUME,
wm8996           2924 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DSP1_RX_RIGHT_VOLUME,
wm8996           2926 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DSP2_RX_LEFT_VOLUME,
wm8996           2928 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap, WM8996_DSP2_RX_RIGHT_VOLUME,
wm8996           2934 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2939 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2944 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2949 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2954 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2959 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2965 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2970 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2976 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2981 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2986 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2991 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           2996 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           3001 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           3007 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           3012 sound/soc/codecs/wm8996.c 	regmap_update_bits(wm8996->regmap,
wm8996           3021 sound/soc/codecs/wm8996.c 	ret = regmap_read(wm8996->regmap, WM8996_GPIO_1, &reg);
wm8996           3028 sound/soc/codecs/wm8996.c 		regmap_update_bits(wm8996->regmap, WM8996_AIF1_TX_LRCLK_2,
wm8996           3032 sound/soc/codecs/wm8996.c 	ret = regmap_read(wm8996->regmap, WM8996_GPIO_2, &reg);
wm8996           3039 sound/soc/codecs/wm8996.c 		regmap_update_bits(wm8996->regmap, WM8996_AIF2_TX_LRCLK_2,
wm8996           3043 sound/soc/codecs/wm8996.c 	wm8996_init_gpio(wm8996);
wm8996           3054 sound/soc/codecs/wm8996.c 	wm8996_free_gpio(wm8996);
wm8996           3057 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.ldo_ena > 0)
wm8996           3058 sound/soc/codecs/wm8996.c 		gpio_set_value_cansleep(wm8996->pdata.ldo_ena, 0);
wm8996           3059 sound/soc/codecs/wm8996.c 	regulator_bulk_disable(ARRAY_SIZE(wm8996->supplies), wm8996->supplies);
wm8996           3061 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.ldo_ena > 0)
wm8996           3062 sound/soc/codecs/wm8996.c 		gpio_free(wm8996->pdata.ldo_ena);
wm8996           3070 sound/soc/codecs/wm8996.c 	struct wm8996_priv *wm8996 = i2c_get_clientdata(client);
wm8996           3072 sound/soc/codecs/wm8996.c 	wm8996_free_gpio(wm8996);
wm8996           3073 sound/soc/codecs/wm8996.c 	if (wm8996->pdata.ldo_ena > 0) {
wm8996           3074 sound/soc/codecs/wm8996.c 		gpio_set_value_cansleep(wm8996->pdata.ldo_ena, 0);
wm8996           3075 sound/soc/codecs/wm8996.c 		gpio_free(wm8996->pdata.ldo_ena);