Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp3289115pxb; Wed, 13 Oct 2021 03:04:18 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxhQI0Uc1Jv9mGCvMMw8+kZ//28fkKAN9u4W4gpesgDXxy3O5VterI46wQxVrFGRYb9mibc X-Received: by 2002:a63:6e8d:: with SMTP id j135mr26219928pgc.116.1634119458317; Wed, 13 Oct 2021 03:04:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1634119458; cv=none; d=google.com; s=arc-20160816; b=CfkQiqhHxwpfFSfeuOmfhccCwRrBIqycU1GisxsGP4Ak0Ug5k+id4/RtW0mVibuEIW JVOFlv4gfkD86MGypfkMfgLVdPBv/CtMvUu47zKxBvHhPxpmxn6LuJMWYVIp296Ff99R izzI+E+1Z9T3bZbb/aXDVy76InYzFHH7WsWUY3o/eoNT2uLyx7g2RbURF+05Dixvqv4I Fhh7wZtMXuRYGtLRh6PQ4CNuL9qFTa7AP0nawraJDCn0sDgcQ5T6B3Ts7SgMD4D7U27B QNPwdW8rIVaTT3gb0h8iyqqsjMH9EVx5ppjd9PrYcaFxH4ro2mBV26C2JaQH3yzJKmGp F4Pw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:mime-version :dkim-signature; bh=72qIwnXVGNrfKxhLObQPGF0RNQPHhrmziNaYX8Pmn6k=; b=Bai/SgQ3/p6OOVnmIHxSn2dpAbcVpb0eVY0tcRjwa9MR6karMMrEikzIHb8O5n32lY iamUc3jXnRrQ2gDd3goosxfhuSf+H3ph/qwuHrsGpUDvHDggzIyTNNx8wGd0D0kxxzvN +/BnSlXQEozD0P215Vnmdqu8YHkvHVmMvqe2zhysrZTulpAvkv7WJm3Y3Cv+a56NO1wc qJ8uWXB/7QsNtKYSfnZ8PaFuztZsP5+QZjc7vFtbqNPZaPpDY2vNF2/WDiWwDUpGgrhu p+KmNxLTtFO2k5fiL1DMnp2NeEKdVRSuVFDsHlTLYOOPqLfuIfMcX2731ka3+rh2T5t4 2RGA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@canonical.com header.s=20210705 header.b=W4+p2OYg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=canonical.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f9si7180575pjq.153.2021.10.13.03.04.04; Wed, 13 Oct 2021 03:04:18 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@canonical.com header.s=20210705 header.b=W4+p2OYg; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=canonical.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239255AbhJMKDY (ORCPT + 99 others); Wed, 13 Oct 2021 06:03:24 -0400 Received: from smtp-relay-internal-0.canonical.com ([185.125.188.122]:56946 "EHLO smtp-relay-internal-0.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237931AbhJMKDX (ORCPT ); Wed, 13 Oct 2021 06:03:23 -0400 Received: from mail-oi1-f200.google.com (mail-oi1-f200.google.com [209.85.167.200]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by smtp-relay-internal-0.canonical.com (Postfix) with ESMTPS id 696A940010 for ; Wed, 13 Oct 2021 10:01:19 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=canonical.com; s=20210705; t=1634119279; bh=72qIwnXVGNrfKxhLObQPGF0RNQPHhrmziNaYX8Pmn6k=; h=MIME-Version:From:Date:Message-ID:Subject:To:Cc:Content-Type; b=W4+p2OYgCnWCzp8aAIalzoSBu4LQMSeusJYU5/m7shf8Au032jSENO/pDUEH0vPrN zOzb2njlwuPQ1MdaGrmQqbxde40wkpz+IgWT5kZVurmGy6Sw2sOI0BiCludijQ1wr7 MVS5dLAg5dzagVNWzv9wpR1mQdR+UZ+RfnMaTJiEt5EEJn6Q6YK+iOXHB9He6FshSE 6/3KFxt4MpdrDcYFVchDcfwEeRtsFFf19w9SItEwNbqDX888UPFtbY5vpxK5PqsmGq rLLBrkWeurvSRcq26GQlGyCzqusl1HytgKAXVZcPDSqV4OQ70WJ07FqhW5Ef3FVIzt uNpaEW2ycZzlA== Received: by mail-oi1-f200.google.com with SMTP id m5-20020a05680806c500b00276dd287318so1392755oih.20 for ; Wed, 13 Oct 2021 03:01:19 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:from:date:message-id:subject:to:cc; bh=72qIwnXVGNrfKxhLObQPGF0RNQPHhrmziNaYX8Pmn6k=; b=p89Ty8dqPwijhCdfJMLip04EdAgihNrBi90usS9MztOMLyKG+V3yq19qcIAwmya0FO sS6Pz2K87JxHuTMRmd89V6OewotSWhPPTIUzhkxgmD/cVwPhe3bsyBCeM+D1wEUunCKd BwAFY8fF/2C/ntlPezNx5JVMM4zBW7YnrV5P/x6dKjXqE2JrkWZDgilOyljW8Cnx3+qY 54lcPwz+BTnZWRIMEp5I7vOAQ+ncWw6cPwW9N/v7BV1rOZY/djSikk8hgikUHnyk0dbo Uk6qJO5+rt0H3e5EfhpxMLsDwPSiyad71iEG0TUFeQsFfUG2SV8TWhETjLpuAhBjEeaY oKug== X-Gm-Message-State: AOAM53010PHf4EpKNPi/0MI/K/jdeZBS85ENhyaWNIqGMXm+5RYJE13S vpN0915oq8/9SN3M0ujFYvcXHhZIg2YprprM4zNOylrCNyjnOJVOwcirI6ojCJXtWMMCxNjvkr/ W1P/8XvIRBp/qTkZ1HQCYCODkBvRUJOYoFmQoOgFuxd5M06sYjZ8IOVjwzg== X-Received: by 2002:a9d:4586:: with SMTP id x6mr4832648ote.155.1634119278308; Wed, 13 Oct 2021 03:01:18 -0700 (PDT) X-Received: by 2002:a9d:4586:: with SMTP id x6mr4832615ote.155.1634119278015; Wed, 13 Oct 2021 03:01:18 -0700 (PDT) MIME-Version: 1.0 From: Chris Chiu Date: Wed, 13 Oct 2021 18:01:07 +0800 Message-ID: Subject: The default jack detection type overridden by sof_sdw_quirk To: pierre-louis.bossart@linux.intel.com, broonie@kernel.org, rander.wang@linux.intel.com, yung-chuan.liao@linux.intel.com, liam.r.girdwood@linux.intel.com, yang.jie@linux.intel.com Cc: alsa-devel@alsa-project.org, Linux Kernel Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, I have an Intel AlderLake machine which uses the sof-soundwire driver for audio functions. When the headset is plugged in, it will incorrectly trigger the event KEY_PLAYPAUSE and never stops. To fix the problem, I used to apply the quirk RT711_JD2 proposed in sound/soc/intel/boards/sof_sdw.c and the jack detect function will work as expected. However, when I look into the code of sound/soc/codecs/rt711.c and rt711-sdca.c, the default value for jd_src (https://github.com/torvalds/linux/blob/master/sound/soc/codecs/rt711.c#L1209) is already RT711_JD2, which means it is overridden by other drivers. After digging deeper, the jd_src value is overridden by rt711_add_codec_device_props() with the value RT711_JD1 comes from sof_sdw_quirk. Is there any reason why sof_sdw_quirk is assigned with RT711_JD1 by default? Can I simply fix it by assigning the sof_sdw_quirk to RT711_JD_NULL as follows? -unsigned long sof_sdw_quirk = RT711_JD1; +unsigned long sof_sdw_quirk = RT711_JD_NULL; Please let me know if there's any potential problem I didn't notice and suggest if there's any better solution. Thanks Chris