Received: by 2002:a05:7412:b10a:b0:f3:1519:9f41 with SMTP id az10csp3055610rdb; Mon, 4 Dec 2023 15:46:44 -0800 (PST) X-Google-Smtp-Source: AGHT+IF2LnxklKH1PKnW0pBkLTjlumIqj3Ok2hwW1S6QYp3dnEO0lLR+4HZD9nA5B6j8LK+9gB2K X-Received: by 2002:a05:6a20:1601:b0:18a:df45:fad4 with SMTP id l1-20020a056a20160100b0018adf45fad4mr6304730pzj.37.1701733603923; Mon, 04 Dec 2023 15:46:43 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1701733603; cv=none; d=google.com; s=arc-20160816; b=ckdb+s6c0twJp4HzLqX4+f0atyte+fcts1xnDPAa0OWlDRWQlAxV/+LOmMfv8/52iT SKm0DlISL5VpdGAf4b+2SrOzbVZhAHwb5zj1MQiAk+7pNAX29YLtzABMusapbHA5NIpw WVkjgt8MBWJvNfsk3fbBEC+KN3/gyQdm6vXpfywzDmVLithx6zJhdM1wQ1G19X+XGS0l 2wNuqWjHs2OSrrnyeiwEy3RSE06yMrh2paDcxqfzvRRskqhCP86DJg0+G8+9GTbYoqzj NCktjutLl2tlqKPTkcsd1zLIHyICz7NFdKuDTTOUJ3cFmLyyi655Kf2lTnFgjMcui2eD R1hg== 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 :message-id:date:subject:cc:to:from; bh=PUmsIece4dxbxFJIbm5bfNZoRAFqi7OopBCCAD7AQCc=; fh=zySoyVfK/7ExaDz2MWyww8poQ40q3tZak5TTvfb/Ovc=; b=OooGXzcx9wq10IwZgn5dvmLNoo4mPXBzgrYoIFJBwmgZdXpeLkOX6aLwKsE4VmOhhg 7lOJNpGalHlXm+NLBHrdvM5sl1nZ0CysjepeP11Qpw5epYgUiAEdED3W4nUvWPD0pOe+ JhmwZEdYx9ZuAhZwA+HmEw3hCEOXPG90UxLTlAZrBBJK8Wikm4U2/5wBDbrCpUA1waEp LQkZYEOdDiq1k6bEOAyGPO/w9Ae4wbdNRMmi4kTy1TnUDmHoq9hMyJivmJSpN+pcZIOh tA+yxignUVVvo3KpBsiv1DhhbfF67DbveuSE3scLgpdAXJIhJuQUxKD3EYkXe/quhPpF ntnA== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=irl.hu Return-Path: Received: from pete.vger.email (pete.vger.email. [2620:137:e000::3:6]) by mx.google.com with ESMTPS id t21-20020a6564d5000000b005b92a7d88e6si8494639pgv.823.2023.12.04.15.46.41 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 04 Dec 2023 15:46:43 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 as permitted sender) client-ip=2620:137:e000::3:6; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:6 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=irl.hu Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by pete.vger.email (Postfix) with ESMTP id F2C3680338AC; Mon, 4 Dec 2023 15:46:31 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at pete.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231555AbjLDXqJ (ORCPT + 99 others); Mon, 4 Dec 2023 18:46:09 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52678 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229668AbjLDXqI (ORCPT ); Mon, 4 Dec 2023 18:46:08 -0500 Received: from irl.hu (irl.hu [95.85.9.111]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 93774F0 for ; Mon, 4 Dec 2023 15:46:14 -0800 (PST) Received: from fedori.lan (51b68398.dsl.pool.telekom.hu [::ffff:81.182.131.152]) (AUTH: CRAM-MD5 soyer@irl.hu, ) by irl.hu with ESMTPSA id 000000000006FC81.00000000656E64C3.00114EBB; Tue, 05 Dec 2023 00:46:11 +0100 From: Gergo Koteles To: Shenghao Ding , Kevin Lu , Baojun Xu , Jaroslav Kysela , Takashi Iwai , Liam Girdwood , Mark Brown Cc: linux-kernel@vger.kernel.org, alsa-devel@alsa-project.org, Gergo Koteles Subject: [PATCH 0/2] ALSA: hda/tas2563: Add tas253 HDA driver Date: Tue, 5 Dec 2023 00:45:36 +0100 Message-ID: X-Mailer: git-send-email 2.43.0 Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Mime-Autoconverted: from 8bit to 7bit by courier 1.0 X-Spam-Status: No, score=-0.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on pete.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (pete.vger.email [0.0.0.0]); Mon, 04 Dec 2023 15:46:32 -0800 (PST) The ta2563 is a smart amplifier. Similar to tas2562 but with DSP. Some Lenovo laptops have it to drive the bass speakers. By default, it is in software shutdown state. To make the DSP work it needs a firmware and some calibration data. The latter can be read from the EFI in Lenovo laptops. For the correct configuration it needs additional register data. It captured after running the Windows driver. The firmware can be extracted as TAS2563Firmware.bin from the Windows driver with innoextract. https://download.lenovo.com/consumer/mobiles/h5yd037fbfyy7kd0.exe The driver will search for it as TAS2563-17AA3870.bin with the 14ARB7. It uses the default program/configuration, and has no controls for these yet. The amplifier works without firmware, but I don't know how safe is it, that's why the firmware is required. Gergo Koteles (2): ASoc: tas2563: DSP Firmware loading support ALSA: hda/tas2563: Add tas2563 HDA driver {sound/soc/codecs => include/sound}/tas2562.h | 8 + include/sound/tas25xx-dsp.h | 100 ++++ sound/pci/hda/Kconfig | 14 + sound/pci/hda/Makefile | 2 + sound/pci/hda/patch_realtek.c | 22 +- sound/pci/hda/tas2563_hda_i2c.c | 508 ++++++++++++++++++ sound/soc/codecs/Kconfig | 7 + sound/soc/codecs/Makefile | 2 + sound/soc/codecs/tas2562.c | 2 +- sound/soc/codecs/tas25xx-dsp.c | 282 ++++++++++ 10 files changed, 942 insertions(+), 5 deletions(-) rename {sound/soc/codecs => include/sound}/tas2562.h (90%) create mode 100644 include/sound/tas25xx-dsp.h create mode 100644 sound/pci/hda/tas2563_hda_i2c.c create mode 100644 sound/soc/codecs/tas25xx-dsp.c base-commit: ffc253263a1375a65fa6c9f62a893e9767fbebfa -- 2.43.0