Received: by 2002:a05:6358:5282:b0:b5:90e7:25cb with SMTP id g2csp3071007rwa; Mon, 22 Aug 2022 20:45:24 -0700 (PDT) X-Google-Smtp-Source: AA6agR5CggkbYVNaBs6+tdp70SaNxV5Gl7i6k1Egyx3KYy1w90UCaT956y4EwP3Fp0hSL/3vUycc X-Received: by 2002:a17:90b:238b:b0:1fa:d833:30dd with SMTP id mr11-20020a17090b238b00b001fad83330ddmr1388684pjb.147.1661226324291; Mon, 22 Aug 2022 20:45:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1661226324; cv=none; d=google.com; s=arc-20160816; b=Bc3yjZrNU8XJ9niyzEdRrCoXH37Yyack87glmhTKjFoB5mBFknx2Ty+dRyPtwMLcmH E5MPgOi4tqItP4XbE99GW4sG04Z65PuYNJG+x0HYi/OFh0H95Bw569AyIrrdtZ0Wahfz IMjIbSNkgIHYhMEPTq8NekQ6uihZoq4YSz0qEk/+nR0QwVtRAyJD1zPphUD5FEKa7WZd +1upSxhPXBsKA0+Ncwg52qlb2U+AkeB+jeyZoIBMAD10wpPd6Z/Cwo2PqfyCsr0bjp8C VgNL7n90HGF4gdXBTdGTkShUOUYbjdzHEpSY+F1wlt2/2CelEkE5PQuMVp+S3xKXp47Z 0xPw== 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:dkim-signature; bh=xn0cX4ZndxthuYxAk61+Z2aWoCvAgPwmbOhO+LBdIx8=; b=tUuuQReUVypPIygweinSctEgSw7gTrtHNja7BUfkdOaxp8uELVNYSxOXDVZwTwB+Br vHyuJzNuA/W2XYbbjvPByadNXTYG4uJoD4DE9BxWzY0jP/FWDVsnveEp5GhOQ6W0oqzk hhoNphQ1HGXMvusFgYJrxYH+XzsVvVMbjbHHzbUgkYn9+J3Tbvr+brFgG8WfvIWifr8E 3iqMcG+Xjl9mMPM3FsjK+VzotqnyiQ6r7I8eKAfik89O9AlkUST1pQQ/EVwO7LEgW90h eidH6lewvORqfrhOkhtVTWLwsXkg4/RRVL2ZLRbK3LfsS5K5aXqmeALNlp3Qidw1D6fE vGbA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=bZbTXW3A; 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=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id k63-20020a17090a14c500b001fad9dc07b2si12745926pja.82.2022.08.22.20.45.12; Mon, 22 Aug 2022 20:45:24 -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=@intel.com header.s=Intel header.b=bZbTXW3A; 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=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239999AbiHWDIV (ORCPT + 99 others); Mon, 22 Aug 2022 23:08:21 -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: 8bit X-Spam-Status: No, score=-4.3 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_NONE,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: 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[] = { {} }; +/* + * 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[] = { + /* rt711-sdca on link0 */ + { + 0x000020025d071100ull, + 0x000030025d071101ull + }, + /* rt1316-sdca on link3 */ + { + 0x000120025d071100ull, + 0x000330025d131601ull + }, + {} +}; + static const struct dmi_system_id adr_remap_quirk_table[] = { + /* TGL devices */ { .matches = { DMI_MATCH(DMI_SYS_VENDOR, "HP"), @@ -78,6 +97,14 @@ static const struct dmi_system_id adr_remap_quirk_table[] = { }, .driver_data = (void *)dell_sku_0A3E, }, + /* ADL devices */ + { + .matches = { + DMI_MATCH(DMI_SYS_VENDOR, "HP"), + DMI_MATCH(DMI_PRODUCT_NAME, "OMEN by HP Gaming Laptop 16-k0xxx"), + }, + .driver_data = (void *)hp_omen_16, + }, {} }; -- 2.25.1