public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Connor McAdams <conmanx360@gmail.com>
To: unlisted-recipients:; (no To-header on input)
Cc: Connor McAdams <conmanx360@gmail.com>,
	Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
	Takashi Sakamoto <o-takashi@sakamocchi.jp>,
	Alastair Bridgewater <alastair.bridgewater@gmail.com>,
	alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org
Subject: [PATCH 11/11] ALSA: hda/ca0132 - Add exit commands for Recon3D
Date: Wed,  8 Aug 2018 13:34:22 -0400	[thread overview]
Message-ID: <1533749663-8200-12-git-send-email-conmanx360@gmail.com> (raw)
In-Reply-To: <1533749663-8200-1-git-send-email-conmanx360@gmail.com>

This patch adds exit functions for the Recon3D, and cleans up the
current exit function.

Signed-off-by: Connor McAdams <conmanx360@gmail.com>
---
 sound/pci/hda/patch_ca0132.c | 30 ++++++++++++++++--------------
 1 file changed, 16 insertions(+), 14 deletions(-)

diff --git a/sound/pci/hda/patch_ca0132.c b/sound/pci/hda/patch_ca0132.c
index 6f288d7..61ab735 100644
--- a/sound/pci/hda/patch_ca0132.c
+++ b/sound/pci/hda/patch_ca0132.c
@@ -6969,7 +6969,7 @@ static void sbz_set_pin_ctl_default(struct hda_codec *codec)
 				AC_VERB_SET_PIN_WIDGET_CONTROL, 0x00);
 }
 
-static void sbz_clear_unsolicited(struct hda_codec *codec)
+static void ca0132_clear_unsolicited(struct hda_codec *codec)
 {
 	hda_nid_t pins[7] = {0x0B, 0x0E, 0x0F, 0x10, 0x11, 0x12, 0x13};
 	unsigned int i;
@@ -7022,21 +7022,22 @@ static void sbz_exit_chip(struct hda_codec *codec)
 
 	chipio_set_control_param(codec, 0x0D, 0x24);
 
-	sbz_clear_unsolicited(codec);
+	ca0132_clear_unsolicited(codec);
 	sbz_set_pin_ctl_default(codec);
 
 	snd_hda_codec_write(codec, 0x0B, 0,
 		AC_VERB_SET_EAPD_BTLENABLE, 0x00);
 
-	if (dspload_is_loaded(codec))
-		dsp_reset(codec);
-
-	snd_hda_codec_write(codec, WIDGET_CHIP_CTRL, 0,
-		VENDOR_CHIPIO_CT_EXTENSIONS_ENABLE, 0x00);
-
 	sbz_region2_exit(codec);
 }
 
+static void r3d_exit_chip(struct hda_codec *codec)
+{
+	ca0132_clear_unsolicited(codec);
+	snd_hda_codec_write(codec, 0x01, 0, 0x793, 0x00);
+	snd_hda_codec_write(codec, 0x01, 0, 0x794, 0x5b);
+}
+
 static void ca0132_exit_chip(struct hda_codec *codec)
 {
 	/* put any chip cleanup stuffs here. */
@@ -7382,16 +7383,17 @@ static void ca0132_free(struct hda_codec *codec)
 	case QUIRK_SBZ:
 		sbz_exit_chip(codec);
 		break;
+	case QUIRK_R3D:
+		r3d_exit_chip(codec);
+		break;
 	case QUIRK_R3DI:
 		r3di_gpio_shutdown(codec);
-		snd_hda_sequence_write(codec, spec->base_exit_verbs);
-		ca0132_exit_chip(codec);
-		break;
-	default:
-		snd_hda_sequence_write(codec, spec->base_exit_verbs);
-		ca0132_exit_chip(codec);
 		break;
 	}
+
+	snd_hda_sequence_write(codec, spec->base_exit_verbs);
+	ca0132_exit_chip(codec);
+
 	snd_hda_power_down(codec);
 	if (spec->mem_base)
 		iounmap(spec->mem_base);
-- 
2.7.4


  parent reply	other threads:[~2018-08-08 17:35 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-08 17:34 [PATCH 00/11] Add Recon3D support + Driver cleanup Connor McAdams
2018-08-08 17:34 ` [PATCH 01/11] ALSA: hda/ca0132 - Create mmio gpio function to make code clearer Connor McAdams
2018-08-08 17:34 ` [PATCH 02/11] ALSA: hda/ca0132 - Clean up ca0132_init function Connor McAdams
2018-08-08 17:34 ` [PATCH 03/11] ALSA: hda/ca0132 - Add alt_functions unsolicited response Connor McAdams
2018-08-08 17:34 ` [PATCH 04/11] ALSA: hda/ca0132 - Add quirk ID and enum for Recon3D Connor McAdams
2018-08-08 17:34 ` [PATCH 05/11] ALSA: hda/ca0132 - Add Recon3D pincfg Connor McAdams
2018-08-08 17:34 ` [PATCH 06/11] ALSA: hda/ca0132 - Add bool variable to enable/disable pci region2 mmio Connor McAdams
2018-08-08 17:34 ` [PATCH 07/11] ALSA: hda/ca0132 - Add Recon3D startup functions and setup Connor McAdams
2018-08-08 17:34 ` [PATCH 08/11] ALSA: hda/ca0132 - Add DSP setup defaults for Recon3D Connor McAdams
2018-08-08 17:34 ` [PATCH 09/11] ALSA: hda/ca0132 - Add Recon3D input and output select commands Connor McAdams
2018-08-08 17:34 ` [PATCH 10/11] ALSA: hda/ca0132 - Change mixer controls for Recon3D Connor McAdams
2018-08-08 17:34 ` Connor McAdams [this message]
2018-08-08 18:43 ` [PATCH 00/11] Add Recon3D support + Driver cleanup Takashi Iwai

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1533749663-8200-12-git-send-email-conmanx360@gmail.com \
    --to=conmanx360@gmail.com \
    --cc=alastair.bridgewater@gmail.com \
    --cc=alsa-devel@alsa-project.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=o-takashi@sakamocchi.jp \
    --cc=perex@perex.cz \
    --cc=tiwai@suse.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox