Received: by 2002:a05:6602:18e:0:0:0:0 with SMTP id m14csp4019486ioo; Wed, 25 May 2022 13:01:41 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwPrWnXf6H/CHeHlZ7jbjuZEtDlaNEai4XjsG5gQf+BU4Upz9bdNQDRYlTDBvKCQ36C4uVU X-Received: by 2002:a05:6a00:1acb:b0:518:99c4:aa2e with SMTP id f11-20020a056a001acb00b0051899c4aa2emr17689556pfv.25.1653508901746; Wed, 25 May 2022 13:01:41 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1653508901; cv=none; d=google.com; s=arc-20160816; b=hHbD9OPKAKRv9OZCoyGcPKfjtoXgHVI2TCXLCk9fTfghXN1hfgj/JUhmZc+z+uQsny 5APSH2kKEBY15yA3J5pUZ1GAVnLiYAi3IJSmxggigmQeR4imVM0jiL9f2AehPwEpnXsh HIN6yQsPnmFZQtDnwcLGQB9mEf5Fkxwytf7VTvfGsFfehNN3Q7uFWfMAEDqml9hIYtdI RnxaXcS8Od72k5NZJLnxRQ4XoxmSfyWyMWh00+g5htcvdulbXVJdR6bTE7UEFkOVUpLD xsYqZkSyplJlCV3jxCu0XFx1rBAJMBLmSy0Pzj1wI9parRDy9P3syAQcEKdt+B7T0z7G 6IRQ== 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=sv5kg+VufeHGb940jrq8D6qqQDoRuEKRbumnfanmMv8=; b=ci9uPld6y4DYIv+bx5BeULygx7yQMllEnXWgl32F9cJd4+5L26S2bDCKuhYmluMvB7 K2amMx1A9rUQbvSn/NV96jgqrOblTL5KPBH9w2dgZZN639lJ6K7eJIlFHmqIpmZWdh8d /EfwiYp2K7F2SrHIpZSqtBgKBUQaD8xT3lioyVEU0Py5dBZFyM4X+QEziV0PDIeS/B/0 9vGty3FYX7ccjP0CRG4CQwmAXkHP8Zr7rHL2w2sOupPJAlIRxjAC5BfIRTnQvNzXSewx TLOFpw0jXzXYjN8pMFdr6YYHVi6vIToay1x4+mae7ZkFf4E6B4SE9wyOD324gbWJmrZ6 GTAQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@cirrus.com header.s=PODMain02222019 header.b=FxKy8798; 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 y6-20020a17090322c600b0015838a4fd9dsi21841836plg.64.2022.05.25.13.01.23; Wed, 25 May 2022 13:01:41 -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=FxKy8798; 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 S236547AbiEYNRJ (ORCPT + 99 others); Wed, 25 May 2022 09:17:09 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:34154 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233564AbiEYNQ4 (ORCPT ); Wed, 25 May 2022 09:16:56 -0400 Received: from mx0b-001ae601.pphosted.com (mx0b-001ae601.pphosted.com [67.231.152.168]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EAED5DFC6 for ; Wed, 25 May 2022 06:16:54 -0700 (PDT) Received: from pps.filterd (m0077474.ppops.net [127.0.0.1]) by mx0b-001ae601.pphosted.com (8.17.1.5/8.17.1.5) with ESMTP id 24PCRmjE022096; Wed, 25 May 2022 08:16:43 -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=sv5kg+VufeHGb940jrq8D6qqQDoRuEKRbumnfanmMv8=; b=FxKy8798cBwhDDXigWFbcpa+8rZ+TtkihGdse6UPYwUKey9thnQTF0/yA2e1cYXy7eZV oBiV2F6z087PH0fn7okLmaynFdQEhuTM1B9qeL5lqQFRmNxSYN1OhNd6KLGEtpLr+HbN LVAh+iI7c744iuT3JFTKc84u8xzVx7SMhLDEcDe2//Jik99+1N6ATu3/8oIBbVJvvHMr CTvdiHSaSXp3oPebMBB35Swbr1/bC+pwYjfeUxWCnpv6AAlZIcbjLMe8DMRb321Sx3yL gbcFMP4si++LtzFt5V0CUHhrgYWLMUaQE0Yb/5GAWDw/+r6a9JFVjSOTTlsY4rAtImzJ VA== Received: from ediex01.ad.cirrus.com ([84.19.233.68]) by mx0b-001ae601.pphosted.com (PPS) with ESMTPS id 3g93u20we6-4 (version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128 verify=NOT); Wed, 25 May 2022 08:16:42 -0500 Received: from EDIEX01.ad.cirrus.com (198.61.84.80) by EDIEX01.ad.cirrus.com (198.61.84.80) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2375.24; Wed, 25 May 2022 14:16:41 +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.24 via Frontend Transport; Wed, 25 May 2022 14:16:41 +0100 Received: from vitaly-Legion-7-16ACHg6.ad.cirrus.com (unknown [198.90.238.233]) by ediswmail.ad.cirrus.com (Postfix) with ESMTP id 5D01B468; Wed, 25 May 2022 13:16:41 +0000 (UTC) From: Vitaly Rodionov To: Jaroslav Kysela , Takashi Iwai , Mark Brown CC: , , , Stefan Binding Subject: [PATCH v4 05/17] ALSA: hda: cs35l41: Save Subsystem ID inside CS35L41 Driver Date: Wed, 25 May 2022 14:16:26 +0100 Message-ID: <20220525131638.5512-6-vitalyr@opensource.cirrus.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220525131638.5512-1-vitalyr@opensource.cirrus.com> References: <20220525131638.5512-1-vitalyr@opensource.cirrus.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-Proofpoint-ORIG-GUID: FcsxwZ4VLbEU8EyuUianABwHp20ubK-R X-Proofpoint-GUID: FcsxwZ4VLbEU8EyuUianABwHp20ubK-R X-Proofpoint-Spam-Reason: safe X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_LOW,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 Subsystem ID is read from the HDA driver, and will be used by the CS35L41 driver to be able to uniquely identify the laptop, which is required to be able to define firmware to be used by specific models. Signed-off-by: Stefan Binding Signed-off-by: Vitaly Rodionov --- Changes since v2: - No change sound/pci/hda/cs35l41_hda.c | 3 +++ sound/pci/hda/cs35l41_hda.h | 1 + sound/pci/hda/hda_component.h | 1 + sound/pci/hda/patch_realtek.c | 1 + 4 files changed, 6 insertions(+) diff --git a/sound/pci/hda/cs35l41_hda.c b/sound/pci/hda/cs35l41_hda.c index fe2ba03e602b..c235b899aa04 100644 --- a/sound/pci/hda/cs35l41_hda.c +++ b/sound/pci/hda/cs35l41_hda.c @@ -346,6 +346,9 @@ static int cs35l41_hda_bind(struct device *dev, struct device *master, void *mas return -EBUSY; comps->dev = dev; + if (!cs35l41->acpi_subsystem_id) + cs35l41->acpi_subsystem_id = devm_kasprintf(dev, GFP_KERNEL, + "%.8x", comps->subsystem_id); cs35l41->codec = comps->codec; strscpy(comps->name, dev_name(dev), sizeof(comps->name)); comps->playback_hook = cs35l41_hda_playback_hook; diff --git a/sound/pci/hda/cs35l41_hda.h b/sound/pci/hda/cs35l41_hda.h index 03c5f14631dd..b8352088a5cb 100644 --- a/sound/pci/hda/cs35l41_hda.h +++ b/sound/pci/hda/cs35l41_hda.h @@ -42,6 +42,7 @@ struct cs35l41_hda { int channel_index; unsigned volatile long irq_errors; const char *amp_name; + const char *acpi_subsystem_id; struct regmap_irq_chip_data *irq_data; bool firmware_running; bool halo_initialized; diff --git a/sound/pci/hda/hda_component.h b/sound/pci/hda/hda_component.h index 534e845b9cd1..fa6df52e7855 100644 --- a/sound/pci/hda/hda_component.h +++ b/sound/pci/hda/hda_component.h @@ -14,6 +14,7 @@ struct hda_component { struct device *dev; char name[HDA_MAX_NAME_SIZE]; + int subsystem_id; struct hda_codec *codec; void (*playback_hook)(struct device *dev, int action); }; diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c index cd289b17ca13..b8249c4dcb1d 100644 --- a/sound/pci/hda/patch_realtek.c +++ b/sound/pci/hda/patch_realtek.c @@ -6632,6 +6632,7 @@ static void cs35l41_generic_fixup(struct hda_codec *cdc, int action, const char if (!name) return; spec->comps[i].codec = cdc; + spec->comps[i].subsystem_id = cdc->core.subsystem_id; component_match_add(dev, &spec->match, component_compare_dev_name, name); } ret = component_master_add_with_match(dev, &comp_master_ops, spec->match); -- 2.34.1