From patchwork Thu Dec 28 15:30:20 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ding, Shenghao" X-Patchwork-Id: 183770 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7301:6f82:b0:100:9c79:88ff with SMTP id tb2csp2063451dyb; Thu, 28 Dec 2023 07:32:28 -0800 (PST) X-Google-Smtp-Source: AGHT+IFAVEokqFUvCGNYmRytT+S9oHAqUIoLvlbDP9Qr99WyExviw1t0zwbVfNOifqHBYqpHD0Mb X-Received: by 2002:a05:6a20:1442:b0:195:efb7:5c9d with SMTP id a2-20020a056a20144200b00195efb75c9dmr4931444pzi.49.1703777548692; Thu, 28 Dec 2023 07:32:28 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703777548; cv=none; d=google.com; s=arc-20160816; b=VyHVHL7LdnLTSddWBvjMB77lGcVlPYgWgEODWX6wRmK3G8epNtk5CVDx7qASqlkvqs Y+bs2bvATI6StHx0nq1UixJM9sSX6gVFySGikt8pANxJqEZsO7NDGxZooqGdpNLJSzHt SITcyNF+1o8QIJfOvGa/a76wyJV3RLN9BX9u7c6+xIJFHqtCMsv3Rf+Fzpw1UgHX7I1u yLOEGWymTn7wHMSxfx0o4qMxj2xVlod63plnDh6S2TFSjjTbNs7aiYeJ0PjtNmSWWDBk ZakHeJQyxmsqxvEvcKS7+l7KAabOs8n48kURCY6uTO13NeQ6IkLeEGLBsP/w0JbsxCqD 2UPA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:message-id:date:subject:cc:to :from:dkim-signature; bh=hbQn/7htqu5ze6cnODQAltMYX+xCyXIFHCSDxaMTPfc=; fh=nmpqriIAxzz9z4/piqOabUsFkiEK8VDv7G5j+pvfHas=; b=Kg4h3qh9dAXPbMN2resskXd+nGxiqF6+ZhJ85AUoSCb4AUb6p6JBUxrtWS+l26qRfw KyYPrJzFVwiMqfahs9WWEUUyAWZsbafqedfDGka073doVjT4fkSruS9i4Vax58VFUykK o5idGw97i8Xy2x2ejRLVyR2QzLd2Ds2t9MACWRf4OG1fE4ZXfU0kbNrTdJvBCxwzMlxo YApvPfwqeXdChZdznxIdjROrbtqPVVNhcTlI9tH6g+yIjUo2OCqbVbE3siKW/lWFmHUk 2/ClaALVx/Wu5m40ileFwTCnPIfCJHNavCRAIanLfBim/HKkrZyoNJjkUXp/ylfA1Obg kYeg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=cnZYnqL7; spf=pass (google.com: domain of linux-kernel+bounces-12757-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-12757-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id y18-20020a056a001c9200b006d9a6d5737bsi8918715pfw.47.2023.12.28.07.32.28 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 Dec 2023 07:32:28 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-12757-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=cnZYnqL7; spf=pass (google.com: domain of linux-kernel+bounces-12757-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-12757-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id 719B6285404 for ; Thu, 28 Dec 2023 15:32:28 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 6F075101CD; Thu, 28 Dec 2023 15:31:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="cnZYnqL7" X-Original-To: linux-kernel@vger.kernel.org Received: from lelv0142.ext.ti.com (lelv0142.ext.ti.com [198.47.23.249]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6264DF4E9; Thu, 28 Dec 2023 15:31:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ti.com Received: from fllv0034.itg.ti.com ([10.64.40.246]) by lelv0142.ext.ti.com (8.15.2/8.15.2) with ESMTP id 3BSFUaXv103330; Thu, 28 Dec 2023 09:30:36 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1703777436; bh=hbQn/7htqu5ze6cnODQAltMYX+xCyXIFHCSDxaMTPfc=; h=From:To:CC:Subject:Date; b=cnZYnqL75ELnqaZJVCm+YD6gR4gNeBHKUqNlfqeJ9Pava7VAPj9PNnFsRvrI3jTUI JvmHsbvUyq4A68P/tl1LLDhI89MoVNGwpJ+GGaEkCfqrsvqw0dTf3Mh+05EDsHhMtF 9gY682Ptu3mEdTOkYhzILMuWqzVqit8n6PJ5C+Uc= Received: from DLEE106.ent.ti.com (dlee106.ent.ti.com [157.170.170.36]) by fllv0034.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 3BSFUaBq038470 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 28 Dec 2023 09:30:36 -0600 Received: from DLEE111.ent.ti.com (157.170.170.22) by DLEE106.ent.ti.com (157.170.170.36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Thu, 28 Dec 2023 09:30:35 -0600 Received: from lelvsmtp5.itg.ti.com (10.180.75.250) by DLEE111.ent.ti.com (157.170.170.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Thu, 28 Dec 2023 09:30:35 -0600 Received: from LT5CG31242FY.dhcp.ti.com ([10.250.161.188]) by lelvsmtp5.itg.ti.com (8.15.2/8.15.2) with ESMTP id 3BSFUSKm116497; Thu, 28 Dec 2023 09:30:29 -0600 From: Shenghao Ding To: , , CC: , , , , , , , , <13916275206@139.com>, , , , , , , , Shenghao Ding Subject: [PATCH v4 1/4] ASoC: dt-bindings: move tas2563 from tas2562.yaml to tas2781.yaml Date: Thu, 28 Dec 2023 23:30:20 +0800 Message-ID: <20231228153024.1659-1-shenghao-ding@ti.com> X-Mailer: git-send-email 2.33.0.windows.2 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1786540246519230271 X-GMAIL-MSGID: 1786540246519230271 Move tas2563 from tas2562.yaml to tas2781.yaml to unbind tas2563 from tas2562 driver code and bind it to tas2781 driver code, because tas2563 only work in bypass-DSP mode with tas2562 driver. In order to enable DSP mode for tas2563, it has been moved to tas2781 driver. As to the hardware part, such as register setting and DSP firmware, all these are stored in the binary firmware. What tas2781 drivder dooes is to parse the firmware and download it to the chip, then power on the chip. So, tas2781 driver can be resued as tas2563 driver. Only attention will be paid to downloading corresponding firmware. Signed-off-by: Shenghao Ding --- Change in v4: - remove tas2563, which will be move to tas2781 driver. - Add more comments on why to move tas2563 to tas2781 driver. - Provide rationale in terms of bindings and hardware, not in terms of driver. Or at least not only. - Reorder chip, tas2563 is first, tas2781 is second. - Add datasheet linkings. - squash both tas2562 and tas2781 binding patches. - Put allOf: to the end of the file, after required: block. --- .../devicetree/bindings/sound/tas2562.yaml | 2 - .../devicetree/bindings/sound/ti,tas2781.yaml | 85 ++++++++++++++----- 2 files changed, 64 insertions(+), 23 deletions(-) diff --git a/Documentation/devicetree/bindings/sound/tas2562.yaml b/Documentation/devicetree/bindings/sound/tas2562.yaml index f01c0dde0cf7..d28c102c0ce7 100644 --- a/Documentation/devicetree/bindings/sound/tas2562.yaml +++ b/Documentation/devicetree/bindings/sound/tas2562.yaml @@ -18,7 +18,6 @@ description: | Specifications about the audio amplifier can be found at: https://www.ti.com/lit/gpn/tas2562 - https://www.ti.com/lit/gpn/tas2563 https://www.ti.com/lit/gpn/tas2564 https://www.ti.com/lit/gpn/tas2110 @@ -29,7 +28,6 @@ properties: compatible: enum: - ti,tas2562 - - ti,tas2563 - ti,tas2564 - ti,tas2110 diff --git a/Documentation/devicetree/bindings/sound/ti,tas2781.yaml b/Documentation/devicetree/bindings/sound/ti,tas2781.yaml index a69e6c223308..78d89008c36f 100644 --- a/Documentation/devicetree/bindings/sound/ti,tas2781.yaml +++ b/Documentation/devicetree/bindings/sound/ti,tas2781.yaml @@ -5,36 +5,41 @@ $id: http://devicetree.org/schemas/sound/ti,tas2781.yaml# $schema: http://devicetree.org/meta-schemas/core.yaml# -title: Texas Instruments TAS2781 SmartAMP +title: Texas Instruments TAS2563/TAS2781 SmartAMP maintainers: - Shenghao Ding -description: - The TAS2781 is a mono, digital input Class-D audio amplifier - optimized for efficiently driving high peak power into small - loudspeakers. An integrated on-chip DSP supports Texas Instruments - Smart Amp speaker protection algorithm. The integrated speaker - voltage and current sense provides for real time +description: | + The TAS2563/TAS2781 is a mono, digital input Class-D audio + amplifier optimized for efficiently driving high peak power into + small loudspeakers. An integrated on-chip DSP supports Texas + Instruments Smart Amp speaker protection algorithm. The + integrated speaker voltage and current sense provides for real time monitoring of loudspeaker behavior. -allOf: - - $ref: dai-common.yaml# + Specifications about the audio amplifier can be found at: + https://www.ti.com/lit/gpn/tas2563 + https://www.ti.com/lit/gpn/tas2781 properties: compatible: - enum: - - ti,tas2781 - - reg: - description: - I2C address, in multiple tas2781s case, all the i2c address - aggregate as one Audio Device to support multiple audio slots. - maxItems: 8 - minItems: 1 - items: - minimum: 0x38 - maximum: 0x3f + description: | + ti,tas2563: 6.1-W Boosted Class-D Audio Amplifier With Integrated + DSP and IV Sense, 16/20/24/32bit stereo I2S or multichannel TDM. + + ti,tas2781: 24-V Class-D Amplifier with Real Time Integrated Speaker + Protection and Audio Processing, 16/20/24/32bit stereo I2S or + multichannel TDM. + oneOf: + - items: + - enum: + - ti,tas2563 + - const: ti,tas2781 + - enum: + - ti,tas2781 + + reg: true reset-gpios: maxItems: 1 @@ -49,6 +54,44 @@ required: - compatible - reg +allOf: + - $ref: dai-common.yaml# + - if: + properties: + compatible: + contains: + enum: + - ti,tas2563 + then: + properties: + reg: + description: + I2C address, in multiple-AMP case, all the i2c address + aggregate as one Audio Device to support multiple audio slots. + maxItems: 4 + minItems: 1 + items: + minimum: 0x4c + maximum: 0x4f + + - if: + properties: + compatible: + contains: + enum: + - ti,tas2781 + then: + properties: + reg: + description: + I2C address, in multiple-AMP case, all the i2c address + aggregate as one Audio Device to support multiple audio slots. + maxItems: 8 + minItems: 1 + items: + minimum: 0x38 + maximum: 0x3f + additionalProperties: false examples: From patchwork Thu Dec 28 15:30:21 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ding, Shenghao" X-Patchwork-Id: 183772 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7301:6f82:b0:100:9c79:88ff with SMTP id tb2csp2063632dyb; Thu, 28 Dec 2023 07:32:46 -0800 (PST) X-Google-Smtp-Source: AGHT+IHUS881vnX5f9PKTtmLrSzayCsdrDy7yukbxTZJDypgqm2Yycj+wevTr4zEBoLdcDSg/Eei X-Received: by 2002:a05:6102:4b14:b0:467:938:6be3 with SMTP id ia20-20020a0561024b1400b0046709386be3mr2348604vsb.4.1703777566510; Thu, 28 Dec 2023 07:32:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703777566; cv=none; d=google.com; s=arc-20160816; b=BCtpv0UVz1p3W9iYm0QhgtSA1/xhgd42UAf5+1y+2dcxrlB48rUrfsAA43NLqgC0ql CbeCqwxNW79maj7VeTXGVU5pJYTo2pKv4pOC0A6AoscvX48EC1NY+BLTGHG86yoTIOkl FSoYVyR7Yd22u8Tg6cuylWiAaEMMn/MI4+enQhwe4/QQHXsYr6vwKB/pLB1Ym08Lstfo eDOHmVok/zZpZh6OwdMrBc9xC2xo09itKpWJrepYan48teXW8RyJyZVPGsEmEUjNUIE8 4OD9Z8lnz5D+WrzJ6K0J9DZi46WqcNT0elRvvemp2YyDC761+V9noFAHDVH8ZZ9fhVKC /Iqg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=pt5rKWcz7qj6e/Uv9/6XAlEO0zulJkwe/I8I73dMvrI=; fh=nmpqriIAxzz9z4/piqOabUsFkiEK8VDv7G5j+pvfHas=; b=CyDRMzzlkrKXTXoCObFkb2YuLP9GmYkPNv3wPXoe6pGr4vvKDD6w8zhOKqHqS/I22K /rD3KAHAs+NefCo+sp96UL3o6zw7l51vSNOKoGx6NSCkmDFjxc0n93YobxUSxPRMppdK PCwB7NXnj+hjE3s+vKQIpbCnSIxn/Ovd7tjIJ88vEMhJQW0xzUano6ixpRFk/7zHUwrB cbXTSh75FBvOPS06eNJ4Xz9KtrpcpNBGNPh5o4tNWIf2/1bsGRuo3BlB/y5lFfEBZiBO 0cJ6VrpM9UYRD17/L/Up8opCyvir0SABZ/gyjvnHRgcv5cRRLg0GyeNOuegDWPvMJGcj ZCpg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b="mSKaxI/p"; spf=pass (google.com: domain of linux-kernel+bounces-12758-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-12758-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id k4-20020a67fd84000000b00466f6c703cesi1062201vsq.186.2023.12.28.07.32.46 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 Dec 2023 07:32:46 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-12758-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b="mSKaxI/p"; spf=pass (google.com: domain of linux-kernel+bounces-12758-ouuuleilei=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-12758-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id 4A7BD1C21FEF for ; Thu, 28 Dec 2023 15:32:46 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id ADFDB1078E; Thu, 28 Dec 2023 15:32:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="mSKaxI/p" X-Original-To: linux-kernel@vger.kernel.org Received: from fllv0015.ext.ti.com (fllv0015.ext.ti.com [198.47.19.141]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BDB59101C8; Thu, 28 Dec 2023 15:32:02 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ti.com Received: from lelv0265.itg.ti.com ([10.180.67.224]) by fllv0015.ext.ti.com (8.15.2/8.15.2) with ESMTP id 3BSFUgrh100508; Thu, 28 Dec 2023 09:30:42 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1703777443; bh=pt5rKWcz7qj6e/Uv9/6XAlEO0zulJkwe/I8I73dMvrI=; h=From:To:CC:Subject:Date:In-Reply-To:References; b=mSKaxI/p0aCDh2p+IOpxl8kr6LIZoA8Z50jeeffRHB0uehahZH8j2jE9rgiIsv/w2 YJhuIfCdvdA/WRPGX5ihdjHfWw44/MaLE6n0ZqlLTD29aPDPeB7AjrRQzyQsMwbeOr 1EcdqI927coRTqrx6ftKHTOurd+/Sj1BVdsyuzDI= Received: from DFLE101.ent.ti.com (dfle101.ent.ti.com [10.64.6.22]) by lelv0265.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 3BSFUgPB030577 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 28 Dec 2023 09:30:42 -0600 Received: from DFLE114.ent.ti.com (10.64.6.35) by DFLE101.ent.ti.com (10.64.6.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Thu, 28 Dec 2023 09:30:42 -0600 Received: from lelvsmtp5.itg.ti.com (10.180.75.250) by DFLE114.ent.ti.com (10.64.6.35) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Thu, 28 Dec 2023 09:30:42 -0600 Received: from LT5CG31242FY.dhcp.ti.com ([10.250.161.188]) by lelvsmtp5.itg.ti.com (8.15.2/8.15.2) with ESMTP id 3BSFUSKn116497; Thu, 28 Dec 2023 09:30:36 -0600 From: Shenghao Ding To: , , CC: , , , , , , , , <13916275206@139.com>, , , , , , , , Shenghao Ding Subject: [PATCH v4 2/4] ASoC: tas2562: move tas2563 from tas2562 driver to tas2781 driver Date: Thu, 28 Dec 2023 23:30:21 +0800 Message-ID: <20231228153024.1659-2-shenghao-ding@ti.com> X-Mailer: git-send-email 2.33.0.windows.2 In-Reply-To: <20231228153024.1659-1-shenghao-ding@ti.com> References: <20231228153024.1659-1-shenghao-ding@ti.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1786540265541231331 X-GMAIL-MSGID: 1786540265541231331 Move tas2563 from tas2562 driver to tas2781 driver to unbind tas2563 from tas2562 driver code and bind it to tas2781 driver code, because tas2563 only work in bypass-DSP mode with tas2562 driver. In order to enable DSP mode for tas2563, it has been moved to tas2781 driver. As to the hardware part, such as register setting and DSP firmware, all these are stored in the binary firmware. What tas2781 drivder dooes is to parse the firmware and download it to the chip, then power on the chip. So, tas2781 driver can be resued as tas2563 driver. Only attention will be paid to downloading corresponding firmware. Signed-off-by: Shenghao Ding --- Change in v4: - Move tas2563 from tas2562 driver to tas2781 driver. - Add more comments on why move tas2563 to tas2781 driver. - Provide rationale in terms of bindings and hardware, not in terms of driver. Or at least not only. --- sound/soc/codecs/tas2562.c | 3 --- 1 file changed, 3 deletions(-) diff --git a/sound/soc/codecs/tas2562.c b/sound/soc/codecs/tas2562.c index 962c2cdfa017..54561ae598b8 100644 --- a/sound/soc/codecs/tas2562.c +++ b/sound/soc/codecs/tas2562.c @@ -59,7 +59,6 @@ struct tas2562_data { enum tas256x_model { TAS2562, - TAS2563, TAS2564, TAS2110, }; @@ -721,7 +720,6 @@ static int tas2562_parse_dt(struct tas2562_data *tas2562) static const struct i2c_device_id tas2562_id[] = { { "tas2562", TAS2562 }, - { "tas2563", TAS2563 }, { "tas2564", TAS2564 }, { "tas2110", TAS2110 }, { } @@ -770,7 +768,6 @@ static int tas2562_probe(struct i2c_client *client) #ifdef CONFIG_OF static const struct of_device_id tas2562_of_match[] = { { .compatible = "ti,tas2562", }, - { .compatible = "ti,tas2563", }, { .compatible = "ti,tas2564", }, { .compatible = "ti,tas2110", }, { }, From patchwork Thu Dec 28 15:30:22 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ding, Shenghao" X-Patchwork-Id: 183771 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7301:6f82:b0:100:9c79:88ff with SMTP id tb2csp2063628dyb; Thu, 28 Dec 2023 07:32:46 -0800 (PST) X-Google-Smtp-Source: AGHT+IFbwAgUB6rZsNUAsX4P9/WL1pMcrG8wQey1zCzYu404GVY7/9vddETvNJxliOvLQVFJeDoS X-Received: by 2002:a17:902:daca:b0:1d4:368d:3d62 with SMTP id q10-20020a170902daca00b001d4368d3d62mr10956742plx.31.1703777566188; Thu, 28 Dec 2023 07:32:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703777566; cv=none; d=google.com; s=arc-20160816; b=gpdPQ5aOCjoWKnVhug2jn1eLbzhUTu9DNS6CnNXJe64Vng9avQlQ+x+AokiIHNHwWk VIOROkUkqGuwp0R9zRGaHlUIHWMB/ZYfNA464x+DqBJFUA/C2Qn8+RllSNyyYOLArkho GLFWv/hOs3g3ni4Th6zpl1/mi4E2UA1MRvt6ZLd/war3TIE0yghcGJc5rDb2gzjZzW66 Q4OWSbYXhxVD35Mcpi0Krp0emjx/IYuGh/ihUGvcXp9hzMkpWforcwpEEMopAMM4K7Vv lgQ/IRobmfVqwxNI8EzeaOcFSkURYOhEE7L5jDbwtQnnR5KHa8LZguBI3WzLGwFlNhuG MSjg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=eXdP1Lty0OTypAfP2iXtJ7Xg7bsHo6MATuIsZtFUKN8=; fh=nmpqriIAxzz9z4/piqOabUsFkiEK8VDv7G5j+pvfHas=; b=A7z3BHag28Zi+HlgZ8d6K9izMdt+hs993A1F15QKz0XnnynuVaF0BImSYsHne63R6F NIJloJDXBsx17EuV9Tyf3LsyA+yMLj/SyTi13BeNIoHT9/xy4T5uc6F6TGg4waW0QQf1 BxHPss/FQ991yVn7x45kMRt2CBPjT03Pqt97y9KEenrq4qFT6ilMKERqxJfVy6p5KX6S LNcnN9yoF+ZQmifhjaJaAPtOUfyZ5VmKdWW2vzuY6Yn/Wohc0myLDyBSrp6JhTlOYzgu oDK3q9NHDEVE9jtbuDYXlt+Af87Q53dIAfhUAxj1xiRgk5f7Jdw3tXeRdWaVW/+kswzU FMQw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=Y6mEUQQA; spf=pass (google.com: domain of linux-kernel+bounces-12756-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-12756-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [147.75.48.161]) by mx.google.com with ESMTPS id w15-20020a170902e88f00b001d44dac626dsi3771216plg.142.2023.12.28.07.32.45 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 Dec 2023 07:32:46 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-12756-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) client-ip=147.75.48.161; Authentication-Results: mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=Y6mEUQQA; spf=pass (google.com: domain of linux-kernel+bounces-12756-ouuuleilei=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-12756-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sy.mirrors.kernel.org (Postfix) with ESMTPS id 96967B21F6E for ; Thu, 28 Dec 2023 15:32:28 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 53E03101C6; Thu, 28 Dec 2023 15:31:59 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="Y6mEUQQA" X-Original-To: linux-kernel@vger.kernel.org Received: from lelv0142.ext.ti.com (lelv0142.ext.ti.com [198.47.23.249]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6261BF4E1; Thu, 28 Dec 2023 15:31:55 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ti.com Received: from lelv0265.itg.ti.com ([10.180.67.224]) by lelv0142.ext.ti.com (8.15.2/8.15.2) with ESMTP id 3BSFUnhk103353; Thu, 28 Dec 2023 09:30:49 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1703777449; bh=eXdP1Lty0OTypAfP2iXtJ7Xg7bsHo6MATuIsZtFUKN8=; h=From:To:CC:Subject:Date:In-Reply-To:References; b=Y6mEUQQA5HYeKu/AsKvgr6+iBjV2H2weFv563BFPi/LlIzrl3vRlLBmkJJB+GTTYp QO0xoNSGVdn+fTo+5zIO6BreAxDrej/QB4vqNN7OC3r1Nvlv/R2I+uAaqkvHyWngm7 5/rsHJJZeBqbmWyAgQC6rE9U9dtq+gAMLS5/Lrvo= Received: from DFLE104.ent.ti.com (dfle104.ent.ti.com [10.64.6.25]) by lelv0265.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 3BSFUnFK030653 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 28 Dec 2023 09:30:49 -0600 Received: from DFLE101.ent.ti.com (10.64.6.22) by DFLE104.ent.ti.com (10.64.6.25) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Thu, 28 Dec 2023 09:30:49 -0600 Received: from lelvsmtp5.itg.ti.com (10.180.75.250) by DFLE101.ent.ti.com (10.64.6.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Thu, 28 Dec 2023 09:30:49 -0600 Received: from LT5CG31242FY.dhcp.ti.com ([10.250.161.188]) by lelvsmtp5.itg.ti.com (8.15.2/8.15.2) with ESMTP id 3BSFUSKo116497; Thu, 28 Dec 2023 09:30:43 -0600 From: Shenghao Ding To: , , CC: , , , , , , , , <13916275206@139.com>, , , , , , , , Shenghao Ding Subject: [PATCH v4 3/4] ASoC: tas2781: Add tas2563 into header file for DSP mode Date: Thu, 28 Dec 2023 23:30:22 +0800 Message-ID: <20231228153024.1659-3-shenghao-ding@ti.com> X-Mailer: git-send-email 2.33.0.windows.2 In-Reply-To: <20231228153024.1659-1-shenghao-ding@ti.com> References: <20231228153024.1659-1-shenghao-ding@ti.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1786540264737446897 X-GMAIL-MSGID: 1786540264737446897 Move tas2563 from tas2562 header file to tas2781 header file to unbind tas2563 from tas2562 driver code and bind it to tas2781 driver code, because tas2563 only work in bypass-DSP mode with tas2562 driver. In order to enable DSP mode for tas2563, it has been moved to tas2781 driver. As to the hardware part, such as register setting and DSP firmware, all these are stored in the binary firmware. What tas2781 drivder dooes is to parse the firmware and download it to the chip, then power on the chip. So, tas2781 driver can be resued as tas2563 driver. Only attention will be paid to downloading corresponding firmware. Signed-off-by: Shenghao Ding --- Change in v4: - Move tas2563 to tas2781 driver. - Add more comments on why move tas2563 to tas2781 driver. - Provide rationale in terms of bindings and hardware, not in terms of driver. Or at least not only. - leave comma as the last entry is _not_ a terminator. - Make the enum order, tas2563 is first, tas2781 is second. --- include/sound/tas2781.h | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/include/sound/tas2781.h b/include/sound/tas2781.h index a6c808b22318..813cf9446a58 100644 --- a/include/sound/tas2781.h +++ b/include/sound/tas2781.h @@ -1,13 +1,13 @@ /* SPDX-License-Identifier: GPL-2.0 */ // -// ALSA SoC Texas Instruments TAS2781 Audio Smart Amplifier +// ALSA SoC Texas Instruments TAS2563/TAS2781 Audio Smart Amplifier // // Copyright (C) 2022 - 2023 Texas Instruments Incorporated // https://www.ti.com // -// The TAS2781 driver implements a flexible and configurable +// The TAS2563/TAS2781 driver implements a flexible and configurable // algo coefficient setting for one, two, or even multiple -// TAS2781 chips. +// TAS2563/TAS2781 chips. // // Author: Shenghao Ding // Author: Kevin Lu @@ -59,7 +59,8 @@ #define TASDEVICE_CMD_FIELD_W 0x4 enum audio_device { - TAS2781 = 0, + TAS2563, + TAS2781, }; enum device_catlog_id { From patchwork Thu Dec 28 15:30:23 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Ding, Shenghao" X-Patchwork-Id: 183773 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a05:7301:6f82:b0:100:9c79:88ff with SMTP id tb2csp2063797dyb; Thu, 28 Dec 2023 07:33:02 -0800 (PST) X-Google-Smtp-Source: AGHT+IEAxzENGDSu/kdIP4OODUbqrWAnNkQxGd9s6kRKUzqhNZ5ZBV17ysoZnePaiekvxhf3HcYN X-Received: by 2002:a05:6a20:729d:b0:194:de54:a8b3 with SMTP id o29-20020a056a20729d00b00194de54a8b3mr5396446pzk.82.1703777581950; Thu, 28 Dec 2023 07:33:01 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1703777581; cv=none; d=google.com; s=arc-20160816; b=igIkaY1Si0ZjMkTZX9RO0gpd/ujo92sdO2vY2bhK25sJ38Rug3adcqGcAWXpn+4X2R OHxqS1G+DKDS+XjsY5qlwBC91WOD0w+ltlRRQQ0qx/0r01m6jhu5f2BJRu9yTHFlI0gd q2vOxqvxbGhqrlParn3E6cByc+Pt7PJPPbCXeXU7M8/+JI+L8a4muzSyjFxyM93Zpmdu j7Fyguf//gBkAd6l7KGpfQFNRXmFXgLIc9Qyqz81xHCUM86U7A0YATig0oHhFgSIAXaO 80Sqci78oLvvUF2fKDkkHU17Z9tv3MqiRi7W++KGVKnQE7OtoC3VQGq6aV1vTj7JPeio mDDQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=nUT+e6SaWTQhh6iN7sxaO6r8+dJ5mAaZQM0ZgSDR6gM=; fh=nmpqriIAxzz9z4/piqOabUsFkiEK8VDv7G5j+pvfHas=; b=0i2MdM+FTu3LWPcPFJUst8xnsP2ojqRXR4ictwxTaZ5zkSehvd7cb0Z+gCHI5ERYiK x1n0IGENPAHkiY8uHcourqCSnv+x7F145t8Xm4hSJacByrdaZZ4zRR8Czz4ePkxcJQdu oBH4eTm9zIoxzxLXjkQfLYlHjw1cwzH2mhnSfwfdvfGclQo8lZwv8lMr+L52YdFvH2Wz BLcJTgzko0g7dgAQtQqaGfRfSSbsFtNO3M/Wta2TpYLDgSdqtwm9iM6qEbwHuwrPD9fR PAfZ95C18Bkn0ZDPTkPwxj8NEXUrC6HHS7oA3CbINzPcmJl8yskysV4anAxryicAS/7Z bsaQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=KVkU812U; spf=pass (google.com: domain of linux-kernel+bounces-12759-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-12759-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from sv.mirrors.kernel.org (sv.mirrors.kernel.org. [139.178.88.99]) by mx.google.com with ESMTPS id k13-20020a63560d000000b005c6251da182si13195899pgb.226.2023.12.28.07.33.01 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 28 Dec 2023 07:33:01 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-12759-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) client-ip=139.178.88.99; Authentication-Results: mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=KVkU812U; spf=pass (google.com: domain of linux-kernel+bounces-12759-ouuuleilei=gmail.com@vger.kernel.org designates 139.178.88.99 as permitted sender) smtp.mailfrom="linux-kernel+bounces-12759-ouuuleilei=gmail.com@vger.kernel.org"; dmarc=pass (p=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by sv.mirrors.kernel.org (Postfix) with ESMTPS id B268728576F for ; Thu, 28 Dec 2023 15:33:01 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id CEDB810944; Thu, 28 Dec 2023 15:32:10 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=ti.com header.i=@ti.com header.b="KVkU812U" X-Original-To: linux-kernel@vger.kernel.org Received: from fllv0015.ext.ti.com (fllv0015.ext.ti.com [198.47.19.141]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id CF82810795; Thu, 28 Dec 2023 15:32:06 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=ti.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=ti.com Received: from lelv0265.itg.ti.com ([10.180.67.224]) by fllv0015.ext.ti.com (8.15.2/8.15.2) with ESMTP id 3BSFUuqv100551; Thu, 28 Dec 2023 09:30:56 -0600 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1703777456; bh=nUT+e6SaWTQhh6iN7sxaO6r8+dJ5mAaZQM0ZgSDR6gM=; h=From:To:CC:Subject:Date:In-Reply-To:References; b=KVkU812URm/TX4ItBgIguT/E9WTfZlLgOvnLl5ubo/nk5BtafjwvlPhFZZHGpQKwL 2AGJQuU1sitT3Be8gGBSnnMDj11TQwYTatpDKbymTB3Q0ee9kFjsJAat24kdrakevn gfPRCOfjufmYca2Ftfy/EBgzsLflESf0t0adxJwM= Received: from DFLE105.ent.ti.com (dfle105.ent.ti.com [10.64.6.26]) by lelv0265.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 3BSFUuXT030710 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Thu, 28 Dec 2023 09:30:56 -0600 Received: from DFLE101.ent.ti.com (10.64.6.22) by DFLE105.ent.ti.com (10.64.6.26) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Thu, 28 Dec 2023 09:30:56 -0600 Received: from lelvsmtp5.itg.ti.com (10.180.75.250) by DFLE101.ent.ti.com (10.64.6.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Thu, 28 Dec 2023 09:30:56 -0600 Received: from LT5CG31242FY.dhcp.ti.com ([10.250.161.188]) by lelvsmtp5.itg.ti.com (8.15.2/8.15.2) with ESMTP id 3BSFUSKp116497; Thu, 28 Dec 2023 09:30:50 -0600 From: Shenghao Ding To: , , CC: , , , , , , , , <13916275206@139.com>, , , , , , , , Shenghao Ding Subject: [PATCH v4 4/4] ASoC: tas2781: Add tas2563 into driver Date: Thu, 28 Dec 2023 23:30:23 +0800 Message-ID: <20231228153024.1659-4-shenghao-ding@ti.com> X-Mailer: git-send-email 2.33.0.windows.2 In-Reply-To: <20231228153024.1659-1-shenghao-ding@ti.com> References: <20231228153024.1659-1-shenghao-ding@ti.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1786540281517318154 X-GMAIL-MSGID: 1786540281517318154 Move tas2563 from tas2562 driver to tas2781 driver to unbind tas2563 from tas2562 driver code and bind it to tas2781 driver code, because tas2563 only work in bypass-DSP mode with tas2562 driver. In order to enable DSP mode for tas2563, it has been moved to tas2781 driver. As to the hardware part, such as register setting and DSP firmware, all these are stored in the binary firmware. What tas2781 drivder dooes is to parse the firmware and download it to the chip, then power on the chip. So, tas2781 driver can be resued as tas2563 driver. Only attention will be paid to downloading corresponding firmware. Signed-off-by: Shenghao Ding --- Change in v4: - Add tas2563 to tas2781 driver. - Add more comments on why move tas2563 to tas2781 driver. - Provide rationale in terms of bindings and hardware, not in terms of driver. Or at least not only. - In all cases, to make the lists ordered by a chip model, tas2563 is first, tas2781 is second. --- sound/soc/codecs/tas2781-i2c.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/sound/soc/codecs/tas2781-i2c.c b/sound/soc/codecs/tas2781-i2c.c index 55cd5e3c23a5..bd5ef4ff96fe 100644 --- a/sound/soc/codecs/tas2781-i2c.c +++ b/sound/soc/codecs/tas2781-i2c.c @@ -1,13 +1,13 @@ // SPDX-License-Identifier: GPL-2.0 // -// ALSA SoC Texas Instruments TAS2781 Audio Smart Amplifier +// ALSA SoC Texas Instruments TAS2563/TAS2781 Audio Smart Amplifier // // Copyright (C) 2022 - 2023 Texas Instruments Incorporated // https://www.ti.com // -// The TAS2781 driver implements a flexible and configurable +// The TAS2563/TAS2781 driver implements a flexible and configurable // algo coefficient setting for one, two, or even multiple -// TAS2781 chips. +// TAS2563/TAS2781 chips. // // Author: Shenghao Ding // Author: Kevin Lu @@ -32,6 +32,7 @@ #include static const struct i2c_device_id tasdevice_id[] = { + { "tas2563", TAS2563 }, { "tas2781", TAS2781 }, {} }; @@ -39,6 +40,7 @@ MODULE_DEVICE_TABLE(i2c, tasdevice_id); #ifdef CONFIG_OF static const struct of_device_id tasdevice_of_match[] = { + { .compatible = "ti,tas2563" }, { .compatible = "ti,tas2781" }, {}, };