Lines Matching +full:vmon +full:- +full:slot +full:- +full:no

1 // SPDX-License-Identifier: GPL-2.0
23 struct snd_soc_component *component = snd_soc_dapm_to_component(w->dapm); in max98373_dac_event()
28 regmap_update_bits(max98373->regmap, in max98373_dac_event()
33 regmap_update_bits(max98373->regmap, in max98373_dac_event()
36 max98373->tdm_mode = false; in max98373_dac_event()
78 SND_SOC_DAPM_SIGGEN("VMON"),
83 static DECLARE_TLV_DB_SCALE(max98373_digital_tlv, -6350, 50, 1);
99 0, 1, TLV_DB_SCALE_ITEM(-3000, 500, 0),
100 2, 4, TLV_DB_SCALE_ITEM(-2200, 200, 0),
101 5, 6, TLV_DB_SCALE_ITEM(-1500, 300, 0),
102 7, 9, TLV_DB_SCALE_ITEM(-1000, 200, 0),
103 10, 13, TLV_DB_SCALE_ITEM(-500, 100, 0),
104 14, 15, TLV_DB_SCALE_ITEM(-100, 50, 0),
107 0, 15, TLV_DB_SCALE_ITEM(-1500, 100, 0),
111 0, 60, TLV_DB_SCALE_ITEM(-1500, 25, 0),
277 { "VI Sense", "Switch", "VMON" },
290 ret = regmap_update_bits(max98373->regmap, in max98373_reset()
301 ret = regmap_read(max98373->regmap, in max98373_reset()
318 max98373_reset(max98373, component->dev); in max98373_probe()
320 /* IV default slot configuration */ in max98373_probe()
321 regmap_write(max98373->regmap, in max98373_probe()
324 regmap_write(max98373->regmap, in max98373_probe()
328 regmap_write(max98373->regmap, in max98373_probe()
331 regmap_write(max98373->regmap, in max98373_probe()
335 regmap_write(max98373->regmap, in max98373_probe()
338 /* Enable IMON VMON DC blocker */ in max98373_probe()
339 regmap_write(max98373->regmap, in max98373_probe()
342 /* voltage, current slot configuration */ in max98373_probe()
343 regmap_write(max98373->regmap, in max98373_probe()
345 (max98373->i_slot << MAX98373_PCM_TX_CH_SRC_A_I_SHIFT | in max98373_probe()
346 max98373->v_slot) & 0xFF); in max98373_probe()
347 if (max98373->v_slot < 8) in max98373_probe()
348 regmap_update_bits(max98373->regmap, in max98373_probe()
350 1 << max98373->v_slot, 0); in max98373_probe()
352 regmap_update_bits(max98373->regmap, in max98373_probe()
354 1 << (max98373->v_slot - 8), 0); in max98373_probe()
356 if (max98373->i_slot < 8) in max98373_probe()
357 regmap_update_bits(max98373->regmap, in max98373_probe()
359 1 << max98373->i_slot, 0); in max98373_probe()
361 regmap_update_bits(max98373->regmap, in max98373_probe()
363 1 << (max98373->i_slot - 8), 0); in max98373_probe()
365 /* speaker feedback slot configuration */ in max98373_probe()
366 regmap_write(max98373->regmap, in max98373_probe()
368 max98373->spkfb_slot & 0xFF); in max98373_probe()
371 if (max98373->interleave_mode) in max98373_probe()
372 regmap_update_bits(max98373->regmap, in max98373_probe()
378 regmap_update_bits(max98373->regmap, in max98373_probe()
418 if (!device_property_read_u32(dev, "maxim,vmon-slot-no", &value)) in max98373_slot_config()
419 max98373->v_slot = value & 0xF; in max98373_slot_config()
421 max98373->v_slot = 0; in max98373_slot_config()
423 if (!device_property_read_u32(dev, "maxim,imon-slot-no", &value)) in max98373_slot_config()
424 max98373->i_slot = value & 0xF; in max98373_slot_config()
426 max98373->i_slot = 1; in max98373_slot_config()
427 if (dev->of_node) { in max98373_slot_config()
428 max98373->reset_gpio = of_get_named_gpio(dev->of_node, in max98373_slot_config()
429 "maxim,reset-gpio", 0); in max98373_slot_config()
430 if (!gpio_is_valid(max98373->reset_gpio)) { in max98373_slot_config()
432 "maxim,reset-gpio", dev->of_node->full_name, in max98373_slot_config()
433 max98373->reset_gpio); in max98373_slot_config()
435 dev_dbg(dev, "maxim,reset-gpio=%d", in max98373_slot_config()
436 max98373->reset_gpio); in max98373_slot_config()
440 max98373->reset_gpio = -1; in max98373_slot_config()
443 if (!device_property_read_u32(dev, "maxim,spkfb-slot-no", &value)) in max98373_slot_config()
444 max98373->spkfb_slot = value & 0xF; in max98373_slot_config()
446 max98373->spkfb_slot = 2; in max98373_slot_config()