Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp498925rwd; Sat, 20 May 2023 01:19:36 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ6Lx5kyTNvQ+o1LMD8o2QCEeYw2YB8WzkcW5wGRnFWzHp6srUN4lODZQ06+HWh+KOQgka+K X-Received: by 2002:a17:90a:d589:b0:253:4d6c:21e5 with SMTP id v9-20020a17090ad58900b002534d6c21e5mr9358078pju.15.1684570776594; Sat, 20 May 2023 01:19:36 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1684570776; cv=none; d=google.com; s=arc-20160816; b=GFbk15tY29Jpxn3hP2l3DnddLIjpw4MHProWZhsXpsLF/TpS1B2ypHwRCuKaoaAMLQ YoxpytvvRU+hp2kJjjlatYvVj0wMpo1ISh9pNBWc3ObVNWRx9+5MxYL728e3XoJL4Azz Ap2AR61viLVx+h+hfZhTaN4LXidEtPWHs9rxb7x9R0t/v0CujWwaAXbO3UJ8XmUFNDb9 kpHGJcMyeKhPDsmbZCnDdbGBFSLs4a0dWUHG8F0e633HsOeYEUSJLgqZAdc484pQheJh h9cbLdDcQL9NNIdvydQ5+bC1XRi1NETDmF2yD9dt201qFFUuRzSKvjzMSNblgjhsP9uz l9aQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:mime-version:user-agent:references:in-reply-to :subject:cc:to:from:message-id:date:dkim-signature:dkim-signature; bh=iPRJUtW+RTZfRnJcov7RdMbBJjkESZBBD8yCDMtMyjA=; b=VadH9eMy7gO4Fo2pieFcwaJRhwZOSpcN/9RhqR8LNzSBYfWY/2sk5QgfgEDEGGDWIo uZzOj4aN+XratRKVJpYJaYQYEEV9s/3sMoN+7eh+roPQ/J34tvum9ifXFRnijkjdTZDe j6NsYcoe3S46X7qNWkHHp+X2Ly7BAr0244jJgpue2nyEUhvXeoypjnxtcdu91/v9jN+Z t7E1nNotKfzJ2m5aoYLpLINMt33hjeqWdHs+AUJI34kTzrtiE0be1MlpqYH0TsMNLVVv /j2arCjArs1Mhr19YZPbfQ0x3KSJIMcM2JY+7nC5CSCUDzeYQ4uGu+Z2XMEFBCIn+bcs vIyg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@suse.de header.s=susede2_rsa header.b="IoG/z5mT"; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519; 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=suse.de Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id g20-20020a17090ace9400b002528393e899si3094596pju.164.2023.05.20.01.19.24; Sat, 20 May 2023 01:19:36 -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=@suse.de header.s=susede2_rsa header.b="IoG/z5mT"; dkim=neutral (no key) header.i=@suse.de header.s=susede2_ed25519; 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=suse.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230318AbjETIO6 (ORCPT + 99 others); Sat, 20 May 2023 04:14:58 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:57496 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229760AbjETIOz (ORCPT ); Sat, 20 May 2023 04:14:55 -0400 Received: from smtp-out1.suse.de (smtp-out1.suse.de [195.135.220.28]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E114E1AB for ; Sat, 20 May 2023 01:14:53 -0700 (PDT) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 1668C21E9A; Sat, 20 May 2023 08:14:52 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_rsa; t=1684570492; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=iPRJUtW+RTZfRnJcov7RdMbBJjkESZBBD8yCDMtMyjA=; b=IoG/z5mTs7/tLu8Z/Q+PHgbP/rGU6ZqhF2olFtnpD/aMTRp02I6HgkM1vb/y3p8LWRN8Y+ HdZPjr91x0oY6+srErH2ksNdtI0KsFDJkTxiZ5ZaabQT7S/ap087Wfc4JQru+X+RdEFiE4 qXqORgzZGSiMdhq/0Nz89m/cl2A6omw= DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=suse.de; s=susede2_ed25519; t=1684570492; h=from:from:reply-to:date:date:message-id:message-id:to:to:cc:cc: mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=iPRJUtW+RTZfRnJcov7RdMbBJjkESZBBD8yCDMtMyjA=; b=eWrQdHoakkgClDGanexpYZrIo7ihL85dMq0+r4uDcJuxO6ltJxNid9UmzYp17Fg4Z/jgHb sG0ge3kHq17G4KCQ== Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id AE4B41358F; Sat, 20 May 2023 08:14:51 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id PturKXuBaGQHNwAAMHmgww (envelope-from ); Sat, 20 May 2023 08:14:51 +0000 Date: Sat, 20 May 2023 10:14:51 +0200 Message-ID: <87jzx3zaf8.wl-tiwai@suse.de> From: Takashi Iwai To: Luke Jones Cc: linux-kernel@vger.kernel.org, tiwai@suse.com, sbinding@opensource.cirrus.com, perex@perex.cz, tangmeng@uniontech.com, andy.chi@canonical.com, p.jungkamp@gmx.net, kasper93@gmail.com, yangyuchi66@gmail.com, armas@codux.tech, ealex95@gmail.com, james.schulman@cirrus.com, david.rhodes@cirrus.com, tanureal@opensource.cirrus.com, rf@opensource.cirrus.com, patches@opensource.cirrus.com, alsa-devel@alsa-project.org Subject: Re: CSC3551 and devices missing related _DSD bits In-Reply-To: <1991650.PYKUYFuaPT@fedora> References: <1991650.PYKUYFuaPT@fedora> User-Agent: Wanderlust/2.15.9 (Almost Unreal) Emacs/27.2 Mule/6.0 MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=US-ASCII X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED 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 On Fri, 19 May 2023 00:26:22 +0200, Luke Jones wrote: > > Hi Takashi (and all others), > > We're beginning to encounter more and more laptops from ASUS in the ROG range > where the bass speakers are connected to a cirrus amp, and the driver for > cirrus is unable to pick this up due to being missing a _DSD section in the > ACPI (SSDT). I've emailed engineers at ASUS I have contact with about this but > it is unlikely that we will see corrections for each and every model + variant > they have. The models we have seen so far are: > - GX650P > - GU604V > - GA402X > And there have been numerous forum postings in various places with the exact > same issue for other models from ASUS that are not in the ROG group I deal > with - oh and also some Lenovo and HP devices also. > > Some of the logs are: > > [ 5.542312] Serial bus multi instantiate pseudo device driver CSC3551:00: > Instantiated 2 I2C devices. > [ 5.717261] cs35l41-hda i2c-CSC3551:00-cs35l41-hda.0: Error: ACPI _DSD > Properties are missing for HID CSC3551. > [ 5.717269] cs35l41-hda i2c-CSC3551:00-cs35l41-hda.0: error -EINVAL: > Platform not supported > [ 5.717286] cs35l41-hda: probe of i2c-CSC3551:00-cs35l41-hda.0 failed with > error -22 > [ 5.717734] cs35l41-hda i2c-CSC3551:00-cs35l41-hda.1: Error: ACPI _DSD > Properties are missing for HID CSC3551. > [ 5.717737] cs35l41-hda i2c-CSC3551:00-cs35l41-hda.1: error -EINVAL: > Platform not supported > [ 5.717750] cs35l41-hda: probe of i2c-CSC3551:00-cs35l41-hda.1 failed with > error -22 > > and: > > [ 3.343851] cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: Error: ACPI _DSD > Properties are missing for HID CSC3551. > [ 3.343854] cs35l41-hda spi1-CSC3551:00-cs35l41-hda.0: error -EINVAL: > Platform not supported > [ 3.343855] cs35l41-hda: probe of spi1-CSC3551:00-cs35l41-hda.0 failed with > error -22 > [ 3.345544] cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: Error: ACPI _DSD > Properties are missing for HID CSC3551. > [ 3.345546] cs35l41-hda spi1-CSC3551:00-cs35l41-hda.1: error -EINVAL: > Platform not supported > [ 3.345548] cs35l41-hda: probe of spi1-CSC3551:00-cs35l41-hda.1 failed with > error -22 > > So there are SPI connected, and I2C connected. > > Alex has already submitted the related patch_realtek work for the GU604V and > no doubt there will be some follow up patches from myself or others for the > other models. Alex has attempted to patch the Cirrus related parts in kernel > direct with: > 1. https://github.com/bno1/linux-xanmod-gu604/blob/acpi-hack/ > patch03_gu604v_speaker_acpi_hack.patch > 2. https://github.com/bno1/linux-xanmod-gu604/blob/acpi-hack/ > patch04_gu604v_spi_cs_gpio_hack.patch > both of these patches have been tested and working for over a week. > > >From what I see the patch04_gu604v_spi_cs_gpio_hack patch needs to shift to > the cirrus driver sound/pci/hda/cs35l41_hda.c, and that driver must now have a > quirk table - unless we can somehow add the cirrus related bits to the realtek > code? I've personally not played with this beyond keeping an eye on it all and > am reluctant to begin work on a solution until I've had some input on the > direction it should take. > > In any case, this is not an isolated issue and we could benefit from putting > in place some quirk or similar to accommodate for laptops where the vendor for > some reason does not include the _DSD parts for use with the cirrus driver. > The trend is looking so far like this practice will continue regardless of the > vendor. > > Known reports: > - https://bugzilla.kernel.org/show_bug.cgi?id=216194 > - https://www.spinics.net/lists/alsa-devel/msg146434.html > - https://gist.github.com/lamperez/862763881c0e1c812392b5574727f6ff > - https://forums.linuxmint.com/viewtopic.php?t=392762 > - https://h30434.www3.hp.com/t5/Notebook-Operating-System-and-Recovery/Envy-x360-2022-13-b0074TU-Audio-not-working-in-Linux-Fedora/td-p/8644641 The problem is that this can really easily blow up your machine if some incorrect bit is applied. And more easily applicable, more chance to break by novice users, simply by believing what a chat bot speaks :) That's the very reason why this kind of change should be via ACPI table officially set up by the vendor. That said, the question is only who and how can be responsible for this kind of change. It's no technical issue, per se. If BIOS can't be updated, at least, the configuration change has to be confirmed by ASUS people. If ASUS still ignores the inquires and requests, we may put the quirk but with a bit fat warning (and maybe complaints to ASUS) to be shown in the log as a very last resort. Let's see what happens. thanks, Takashi