Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp4219003iog; Tue, 21 Jun 2022 14:51:23 -0700 (PDT) X-Google-Smtp-Source: AGRyM1tXSYqRKRlFt8+GtgjxpWQ8CLblE/MAznvSOqVT9C5ptecR1TS+Hwxyp6a3C8IVSW9l5gdH X-Received: by 2002:a17:90b:1a84:b0:1ec:c46f:e150 with SMTP id ng4-20020a17090b1a8400b001ecc46fe150mr7306316pjb.36.1655848283650; Tue, 21 Jun 2022 14:51:23 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1655848283; cv=none; d=google.com; s=arc-20160816; b=ZkdiIhtqqkMvzDBV42QSFhPDDAyf/7yM5SXy/qyI4PyTb4nYixzOpqnN/aPLqjie0c HXPsPmF3P4Lg0cKKpsWkGvmw8FTNQO1L7jQnjveujv4dn5/4XopjA9GHKosPTKkWOO0I TBosJvIxcwl2MwWNw0MjnPNE2vC/DmmyiUV2jasIK18eO/kmdl+08jZyX+nDPrPO2ygL UQrTRR2mL2Gtai4M8WJWvPeHkqA5IVBeBVI7qbgRBsu6MYAcsyNCIjk+Yn2c05SEWkc5 wdmSdgig8Rx1DYUlVRnH5F8/6rEubCK40RUj4quuTZtlMIJNJ8n3RkdRraAoBSHjoYlE h8Fw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=yEUjvzIDkSuesN4ILaRzVOzgfN/9xKEkJ3H0pI1QULM=; b=hPYpFGajufugxJHMTiSkU89MQPgSbvjjsoGDHiuk+t7HKbZOOU1jq5g+8yHS6axALd 8uOAM/WahlxNtCC1Q/wcZnbqMYFU3xFyNXb919rJG1hGflqQAl3ByLD5Ip5Yo5SbwUlQ GHWOgZFYTFfzuf8g+xO2xFmg39S80jULcEVtgjSvJY+pOYYCDC1kVOkNAUJC0EVhF1Tb gRUVmh1prdzgUVTjMkNMqJWwc0MMGTdwjDJ1mHHTzWqGGf5hzatJju4oedvII1TCRblz 51e2WE0cI4nN4vY5s8kAx43e10eWxZyfl5MRC1S2Ake/NF23RDUft7cnq5KWwaccm3J/ hNHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cirrus.com header.s=PODMain02222019 header.b=QThCWPDW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=cirrus.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id h9-20020a056a001a4900b0051b5d39f016si20179087pfv.56.2022.06.21.14.51.11; Tue, 21 Jun 2022 14:51:23 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@cirrus.com header.s=PODMain02222019 header.b=QThCWPDW; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=REJECT sp=REJECT dis=NONE) header.from=cirrus.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1356408AbiFUVjE (ORCPT + 99 others); Tue, 21 Jun 2022 17:39:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:54710 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1355425AbiFUVi3 (ORCPT ); Tue, 21 Jun 2022 17:38:29 -0400 Received: from mx0b-001ae601.pphosted.com (mx0a-001ae601.pphosted.com [67.231.149.25]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D5BC612080 for ; Tue, 21 Jun 2022 14:38:28 -0700 (PDT) Received: from pps.filterd (m0077473.ppops.net [127.0.0.1]) by mx0a-001ae601.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 25LBQrlN010673; Tue, 21 Jun 2022 16:38:08 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cirrus.com; h=from : to : cc : subject : date : message-id : in-reply-to : references : mime-version : content-transfer-encoding : content-type; s=PODMain02222019; bh=yEUjvzIDkSuesN4ILaRzVOzgfN/9xKEkJ3H0pI1QULM=; b=QThCWPDW/IuxAIhoZd+1ZBaJbI0LHdUfY5EHZGa+E0kuwh1O4fqy1MUVxOnCIEUYt6bS uPcOxvIUmlVJSQt0JjJDP+S/vw0uHFwS0WZxoNmgcT3uWcD3AO4vtF8sqjM1TlIQf+fp 71nWyN3HyHvd6BqzxBxaTB4re4q74+H74GXmaWkHNW9Ipn5R1zLrvjB+HXnUmGUqX19o VN7opYylNIb3q8/OJp2U/npgEcVTJ5JVwtfMuTHDKxWb23NRYXxGTIJVqVCKqPv/NbPr MYnno5aYJTgK6JoYe1lA8N/M+WVecE69FNl0dw9TIsf2cRqJWzs4mV2U14GAKzX5uAjA HQ== Received: from ediex02.ad.cirrus.com ([84.19.233.68]) by mx0a-001ae601.pphosted.com (PPS) with ESMTPS id 3gsc41c7yj-6 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Tue, 21 Jun 2022 16:38:08 -0500 Received: from EDIEX01.ad.cirrus.com (198.61.84.80) by EDIEX02.ad.cirrus.com (198.61.84.81) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.28; Tue, 21 Jun 2022 22:38:06 +0100 Received: from ediswmail.ad.cirrus.com (198.61.86.93) by EDIEX01.ad.cirrus.com (198.61.84.80) with Microsoft SMTP Server id 15.1.2375.28 via Frontend Transport; Tue, 21 Jun 2022 22:38:06 +0100 Received: from vitaly-Legion-7-16ACHg6.ad.cirrus.com (unknown [198.90.238.175]) by ediswmail.ad.cirrus.com (Postfix) with ESMTP id EBCD311D3; Tue, 21 Jun 2022 21:38:05 +0000 (UTC) From: Vitaly Rodionov To: Jaroslav Kysela , Takashi Iwai , Mark Brown CC: , , , Stefan Binding Subject: [PATCH v6 12/14] ALSA: hda: cs35l41: Add defaulted values into dsp bypass config sequence Date: Tue, 21 Jun 2022 22:37:59 +0100 Message-ID: <20220621213801.2021097-13-vitalyr@opensource.cirrus.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220621213801.2021097-1-vitalyr@opensource.cirrus.com> References: <20220621213801.2021097-1-vitalyr@opensource.cirrus.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-GUID: U7UsAoVRSSOCJ14RUw5VqNeWYSrteCt7 X-Proofpoint-ORIG-GUID: U7UsAoVRSSOCJ14RUw5VqNeWYSrteCt7 X-Proofpoint-Spam-Reason: safe X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Stefan Binding The config sequences for running with and without firmware and DSP are different. The original behavior assumed that we would only run without DSP only in the case where firmware load failed. This meant the non-firmware sequence was written with the assumtion that various registers would be set to their default value. However, to support the ability to unload the firmware, the non-firmware register sequence must be updated to update all required registers, including values that would be defaulted, in case the firmware sequence, which could have already run, has changed their value. Signed-off-by: Stefan Binding Signed-off-by: Vitaly Rodionov --- sound/pci/hda/cs35l41_hda.c | 13 +++++++++++++ 1 file changed, 13 insertions(+) diff --git a/sound/pci/hda/cs35l41_hda.c b/sound/pci/hda/cs35l41_hda.c index ef3dfda7b03e..e51cdf42d3dc 100644 --- a/sound/pci/hda/cs35l41_hda.c +++ b/sound/pci/hda/cs35l41_hda.c @@ -35,11 +35,24 @@ static const struct reg_sequence cs35l41_hda_config[] = { { CS35L41_PLL_CLK_CTRL, 0x00000430 }, // 3072000Hz, BCLK Input, PLL_REFCLK_EN = 1 + { CS35L41_DSP_CLK_CTRL, 0x00000003 }, // DSP CLK EN { CS35L41_GLOBAL_CLK_CTRL, 0x00000003 }, // GLOBAL_FS = 48 kHz { CS35L41_SP_ENABLES, 0x00010000 }, // ASP_RX1_EN = 1 { CS35L41_SP_RATE_CTRL, 0x00000021 }, // ASP_BCLK_FREQ = 3.072 MHz { CS35L41_SP_FORMAT, 0x20200200 }, // 32 bits RX/TX slots, I2S, clk consumer + { CS35L41_SP_HIZ_CTRL, 0x00000002 }, // Hi-Z unused + { CS35L41_SP_TX_WL, 0x00000018 }, // 24 cycles/slot + { CS35L41_SP_RX_WL, 0x00000018 }, // 24 cycles/slot { CS35L41_DAC_PCM1_SRC, 0x00000008 }, // DACPCM1_SRC = ASPRX1 + { CS35L41_ASP_TX1_SRC, 0x00000018 }, // ASPTX1 SRC = VMON + { CS35L41_ASP_TX2_SRC, 0x00000019 }, // ASPTX2 SRC = IMON + { CS35L41_ASP_TX3_SRC, 0x00000032 }, // ASPTX3 SRC = ERRVOL + { CS35L41_ASP_TX4_SRC, 0x00000033 }, // ASPTX4 SRC = CLASSH_TGT + { CS35L41_DSP1_RX1_SRC, 0x00000008 }, // DSP1RX1 SRC = ASPRX1 + { CS35L41_DSP1_RX2_SRC, 0x00000009 }, // DSP1RX2 SRC = ASPRX2 + { CS35L41_DSP1_RX3_SRC, 0x00000018 }, // DSP1RX3 SRC = VMON + { CS35L41_DSP1_RX4_SRC, 0x00000019 }, // DSP1RX4 SRC = IMON + { CS35L41_DSP1_RX5_SRC, 0x00000020 }, // DSP1RX5 SRC = ERRVOL { CS35L41_AMP_DIG_VOL_CTRL, 0x00000000 }, // AMP_VOL_PCM 0.0 dB { CS35L41_AMP_GAIN_CTRL, 0x00000084 }, // AMP_GAIN_PCM 4.5 dB }; -- 2.34.1