Lines Matching refs:aw883xx
390 struct aw883xx *aw883xx = (struct aw883xx *)aw_dev->private_data; in aw_check_spin_mode() local
393 aw883xx->spin_flag = AW_SPIN_OFF; in aw_check_spin_mode()
409 aw883xx->spin_flag = AW_SPIN_OFF; in aw_check_spin_mode()
413 aw883xx->spin_flag = AW_SPIN_ON; in aw_check_spin_mode()
466 static int aw_set_reg_spin_angle(struct aw883xx *aw883xx, uint32_t spin_angle) in aw_set_reg_spin_angle() argument
474 aw_dev_err(aw883xx->dev, "spin_angle:%d not support", in aw_set_reg_spin_angle()
481 aw_dev_err(aw883xx->dev, "get dev list failed"); in aw_set_reg_spin_angle()
489 aw_dev_err(aw883xx->dev, "set channal mode failed"); in aw_set_reg_spin_angle()
497 static int aw_set_reg_mixer_spin_angle(struct aw883xx *aw883xx, uint32_t spin_angle) in aw_set_reg_mixer_spin_angle() argument
502 aw_dev_err(aw883xx->dev, "spin_angle:%d not support", in aw_set_reg_mixer_spin_angle()
507 ret = aw_set_mixer_en(aw883xx->aw_pa, AW_AUDIO_MIX_ENABLE); in aw_set_reg_mixer_spin_angle()
513 aw_set_reg_spin_angle(aw883xx, spin_angle); in aw_set_reg_mixer_spin_angle()
515 ret = aw_set_mixer_en(aw883xx->aw_pa, AW_AUDIO_MIX_DISABLE); in aw_set_reg_mixer_spin_angle()
529 static int aw_set_spin_angle(struct aw883xx *aw883xx, uint32_t spin_angle) in aw_set_spin_angle() argument
533 return aw_set_reg_spin_angle(aw883xx, spin_angle); in aw_set_spin_angle()
535 return aw_set_adsp_spin_angle(aw883xx->aw_pa, spin_angle); in aw_set_spin_angle()
537 return aw_set_reg_mixer_spin_angle(aw883xx, spin_angle); in aw_set_spin_angle()
552 struct aw883xx *aw883xx = (struct aw883xx *)kcontrol->private_value; in aw_set_spin() local
556 aw_dev_dbg(aw883xx->dev, "ucontrol->value.integer.value[0]=%ld", in aw_set_spin()
559 if (aw883xx->spin_flag == AW_SPIN_OFF) { in aw_set_spin()
560 aw_dev_dbg(aw883xx->dev, "spin func not enable"); in aw_set_spin()
567 if (aw883xx->pstream == AW883XX_STREAM_OPEN) { in aw_set_spin()
568 ret = aw_set_spin_angle(aw883xx, ctrl_value); in aw_set_spin()
570 aw_dev_err(aw883xx->dev, "set spin error, ret=%d\n", in aw_set_spin()
574 aw_set_reg_spin_angle(aw883xx, ctrl_value); in aw_set_spin()
576 aw_dev_info(aw883xx->dev, "stream no start only record spin angle"); in aw_set_spin()
595 struct aw883xx *aw883xx = (struct aw883xx *)kcontrol->private_value; in aw_get_spin() local
599 if (aw883xx->pstream == AW883XX_STREAM_OPEN) { in aw_get_spin()
604 aw_dev_dbg(aw883xx->dev, "no stream, use record value"); in aw_get_spin()
614 struct aw883xx *aw883xx = (struct aw883xx *)kcontrol->private_value; in aw_spin_info() local
617 if (aw883xx == NULL) { in aw_spin_info()
637 static int aw_spin_control_create(struct aw883xx *aw883xx) in aw_spin_control_create() argument
643 aw_spin_control = devm_kzalloc(aw883xx->codec->dev, in aw_spin_control_create()
646 aw_dev_err(aw883xx->codec->dev, "kcontrol malloc failed!"); in aw_spin_control_create()
650 kctl_name = devm_kzalloc(aw883xx->codec->dev, AW_NAME_BUF_MAX, GFP_KERNEL); in aw_spin_control_create()
661 aw_spin_control[0].private_value = (unsigned long)aw883xx; in aw_spin_control_create()
663 kctl_name = devm_kzalloc(aw883xx->codec->dev, AW_NAME_BUF_MAX, GFP_KERNEL); in aw_spin_control_create()
667 aw883xx->codec_ops->add_codec_controls(aw883xx->codec, in aw_spin_control_create()
675 struct aw883xx *aw883xx = (struct aw883xx *)aw_dev; in aw_add_spin_controls() local
677 if (aw883xx->aw_pa->spin_desc.spin_mode != AW_SPIN_OFF_MODE) in aw_add_spin_controls()
678 aw_spin_control_create(aw883xx); in aw_add_spin_controls()