From nobody Wed Apr 8 06:11:33 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4700EC28D13 for ; Tue, 23 Aug 2022 03:08:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S240001AbiHWDIX (ORCPT ); Mon, 22 Aug 2022 23:08:23 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:56394 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239970AbiHWDHq (ORCPT ); Mon, 22 Aug 2022 23:07:46 -0400 Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 3D4425FAD9 for ; Mon, 22 Aug 2022 20:05:25 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1661223925; x=1692759925; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=dFchl2bmcRn49wmin1I4Kwm9RG7Qfuh91pAl14MRq5w=; b=bZbTXW3A20brAiUHp9Qwimx1esKPNDq0b+TgBDXHQJ4VcNxDDCjJv7gr 3cFAJUS1xv7vJAq9qOFYp9z5H7YVm7YWfm1lXm8/qDkq/GUJwNQbp/SPH I6ezWb8wGPpgxmSBePNmeD8xNsv83aQIP/SgF4NQ4N9SEcz8btXSpLgec imL9oTREXrRZL8jqdw8Sc1GGtcKghyHHUr+figW++HUFMqJ9Yg9LQVOUB LsJs9hXe87knpNV0fQ9g3/JIqEGBc+yhNP9FrR8yqJc+dvMJ3jA6JNvdm QZSD45buA5xie9QzkKZja5TOxpRYMYuvE1CnMgIDpIMlJcd/zWe3dxB2f Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10447"; a="273962555" X-IronPort-AV: E=Sophos;i="5.93,256,1654585200"; d="scan'208";a="273962555" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Aug 2022 20:05:24 -0700 X-IronPort-AV: E=Sophos;i="5.93,256,1654585200"; d="scan'208";a="638470575" Received: from bard-ubuntu.sh.intel.com ([10.239.185.57]) by orsmga008-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 22 Aug 2022 20:05:22 -0700 From: Bard Liao To: alsa-devel@alsa-project.org, vkoul@kernel.org Cc: vinod.koul@linaro.org, linux-kernel@vger.kernel.org, pierre-louis.bossart@linux.intel.com, bard.liao@intel.com Subject: [PATCH] soundwire: dmi-quirks: add remapping for HP Omen 16-k0005TX Date: Tue, 23 Aug 2022 11:09:19 +0800 Message-Id: <20220823030919.2346629-1-yung-chuan.liao@linux.intel.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" From: Pierre-Louis Bossart The DSDT for this device has a number of problems: a) it lists rt711 on link0 and link1, but link1 is disabled b) the rt711 entry on link0 uses the wrong v2 instead of v3 (SDCA) c) the rt1316 amplifier on link3 is not listed. Add a remapping table to work-around these BIOS shenanigans. BugLink: https://github.com/thesofproject/sof/issues/5955 Signed-off-by: Pierre-Louis Bossart Reviewed-by: Ranjani Sridharan Signed-off-by: Bard Liao --- drivers/soundwire/dmi-quirks.c | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) diff --git a/drivers/soundwire/dmi-quirks.c b/drivers/soundwire/dmi-quirks.c index 747983743a14..f81cdd83ec26 100644 --- a/drivers/soundwire/dmi-quirks.c +++ b/drivers/soundwire/dmi-quirks.c @@ -55,7 +55,26 @@ static const struct adr_remap dell_sku_0A3E[] =3D { {} }; =20 +/* + * The HP Omen 16-k0005TX does not expose the correct version of RT711 on = link0 + * and does not expose a RT1316 on link3 + */ +static const struct adr_remap hp_omen_16[] =3D { + /* rt711-sdca on link0 */ + { + 0x000020025d071100ull, + 0x000030025d071101ull + }, + /* rt1316-sdca on link3 */ + { + 0x000120025d071100ull, + 0x000330025d131601ull + }, + {} +}; + static const struct dmi_system_id adr_remap_quirk_table[] =3D { + /* TGL devices */ { .matches =3D { DMI_MATCH(DMI_SYS_VENDOR, "HP"), @@ -78,6 +97,14 @@ static const struct dmi_system_id adr_remap_quirk_table[= ] =3D { }, .driver_data =3D (void *)dell_sku_0A3E, }, + /* ADL devices */ + { + .matches =3D { + DMI_MATCH(DMI_SYS_VENDOR, "HP"), + DMI_MATCH(DMI_PRODUCT_NAME, "OMEN by HP Gaming Laptop 16-k0xxx"), + }, + .driver_data =3D (void *)hp_omen_16, + }, {} }; =20 --=20 2.25.1