From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752953AbeDLOPv (ORCPT ); Thu, 12 Apr 2018 10:15:51 -0400 Received: from youngberry.canonical.com ([91.189.89.112]:40406 "EHLO youngberry.canonical.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752303AbeDLOPt (ORCPT ); Thu, 12 Apr 2018 10:15:49 -0400 X-Google-Smtp-Source: AIpwx49LcDzqhcBgESFgLaExcmRs0KVoIb4NVTa7oGz3UeDQp1P8LgnyWwdZx6mzTWqh7T3n6/lcDg== Content-Type: text/plain; charset=utf-8; delsp=yes; format=flowed Mime-Version: 1.0 (Mac OS X Mail 11.3 \(3445.6.18\)) Subject: Re: [PATCH v3 3/3] ALSA: hda: Disabled unused audio controller for Dell platforms with Switchable Graphics From: Kai-Heng Feng In-Reply-To: <20180412105909.tbyfcjm55sb47hiq@pali> Date: Thu, 12 Apr 2018 22:15:41 +0800 Cc: Takashi Iwai , Lukas Wunner , mario.limonciello@dell.com, andy@infradead.org, dvhart@infradead.org, mjg59@srcf.ucam.org, alsa-devel@alsa-project.org, linux-kernel@vger.kernel.org, platform-driver-x86@vger.kernel.org Content-Transfer-Encoding: 8bit Message-Id: <93DC0F40-81A5-49C6-A470-0D1B6AA85725@canonical.com> References: <20180412104239.25584-1-kai.heng.feng@canonical.com> <20180412104239.25584-3-kai.heng.feng@canonical.com> <20180412105909.tbyfcjm55sb47hiq@pali> To: =?utf-8?Q?Pali_Roh=C3=A1r?= X-Mailer: Apple Mail (2.3445.6.18) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org at 6:59 PM, Pali Rohár wrote: > On Thursday 12 April 2018 12:50:02 Takashi Iwai wrote: >>> +#if IS_ENABLED(CONFIG_DELL_LAPTOP) >>> +static bool check_dell_switchable_gfx(struct pci_dev *pdev) >>> +{ >>> + bool (*dell_switchable_gfx_is_enabled_func)(void); >>> + bool enabled; >>> + >>> + /* Only need to check for Dell laptops and AIOs */ >>> + if (!dmi_find_device(DMI_DEV_TYPE_OEM_STRING, "Dell System", NULL) || >>> + !(dmi_match(DMI_CHASSIS_TYPE, "10") || >>> + dmi_match(DMI_CHASSIS_TYPE, "13")) || >>> + !(pdev->vendor == PCI_VENDOR_ID_ATI || >>> + pdev->vendor == PCI_VENDOR_ID_NVIDIA)) >>> + return false; > ... >>> @@ -1711,6 +1745,11 @@ static int azx_create(struct snd_card *card, >>> struct pci_dev *pci, >>> if (err < 0) >>> return err; >>> >>> + if (check_dell_switchable_gfx(pci)) { >>> + pci_disable_device(pci); > > Hi! > > Now looking at it again... This code disables all ATI and NVIDIA sound > cards available in any Dell System (laptop or AIO) if system says that > SG is enabled, right? Yes. > > It means that also any external ATI or NVIDIA PCI card with audio device > connected to Thunderbolt (e.g. via PCI <--> TB bridge) is always > unconditionally disabled too? I never thought of this case, thanks for bringing this up. Do you have any suggestion to check if it connects to the system via Thunderbolt? Kai-Heng > >>> + return -ENODEV; >>> + } > > -- > Pali Rohár > pali.rohar@gmail.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: Kai-Heng Feng Subject: Re: [PATCH v3 3/3] ALSA: hda: Disabled unused audio controller for Dell platforms with Switchable Graphics Date: Thu, 12 Apr 2018 22:15:41 +0800 Message-ID: <93DC0F40-81A5-49C6-A470-0D1B6AA85725@canonical.com> References: <20180412104239.25584-1-kai.heng.feng@canonical.com> <20180412104239.25584-3-kai.heng.feng@canonical.com> <20180412105909.tbyfcjm55sb47hiq@pali> Mime-Version: 1.0 (Mac OS X Mail 11.3 \(3445.6.18\)) Content-Type: text/plain; charset="utf-8"; Format="flowed"; DelSp="yes" Content-Transfer-Encoding: base64 Return-path: In-Reply-To: <20180412105909.tbyfcjm55sb47hiq@pali> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: alsa-devel-bounces@alsa-project.org Sender: alsa-devel-bounces@alsa-project.org To: =?utf-8?Q?Pali_Roh=C3=A1r?= Cc: mjg59@srcf.ucam.org, alsa-devel@alsa-project.org, mario.limonciello@dell.com, Takashi Iwai , linux-kernel@vger.kernel.org, platform-driver-x86@vger.kernel.org, Lukas Wunner , dvhart@infradead.org, andy@infradead.org List-Id: platform-driver-x86.vger.kernel.org YXQgNjo1OSBQTSwgUGFsaSBSb2jDoXIgPHBhbGkucm9oYXJAZ21haWwuY29tPiB3cm90ZToKCj4g T24gVGh1cnNkYXkgMTIgQXByaWwgMjAxOCAxMjo1MDowMiBUYWthc2hpIEl3YWkgd3JvdGU6Cj4+ PiArI2lmIElTX0VOQUJMRUQoQ09ORklHX0RFTExfTEFQVE9QKQo+Pj4gK3N0YXRpYyBib29sIGNo ZWNrX2RlbGxfc3dpdGNoYWJsZV9nZngoc3RydWN0IHBjaV9kZXYgKnBkZXYpCj4+PiArewo+Pj4g Kwlib29sICgqZGVsbF9zd2l0Y2hhYmxlX2dmeF9pc19lbmFibGVkX2Z1bmMpKHZvaWQpOwo+Pj4g Kwlib29sIGVuYWJsZWQ7Cj4+PiArCj4+PiArCS8qIE9ubHkgbmVlZCB0byBjaGVjayBmb3IgRGVs bCBsYXB0b3BzIGFuZCBBSU9zICovCj4+PiArCWlmICghZG1pX2ZpbmRfZGV2aWNlKERNSV9ERVZf VFlQRV9PRU1fU1RSSU5HLCAiRGVsbCBTeXN0ZW0iLCBOVUxMKSB8fAo+Pj4gKwkgICAgIShkbWlf bWF0Y2goRE1JX0NIQVNTSVNfVFlQRSwgIjEwIikgfHwKPj4+ICsJICAgICAgZG1pX21hdGNoKERN SV9DSEFTU0lTX1RZUEUsICIxMyIpKSB8fAo+Pj4gKwkgICAgIShwZGV2LT52ZW5kb3IgPT0gUENJ X1ZFTkRPUl9JRF9BVEkgfHwKPj4+ICsJICAgICAgcGRldi0+dmVuZG9yID09IFBDSV9WRU5ET1Jf SURfTlZJRElBKSkKPj4+ICsJCXJldHVybiBmYWxzZTsKPiAuLi4KPj4+IEBAIC0xNzExLDYgKzE3 NDUsMTEgQEAgc3RhdGljIGludCBhenhfY3JlYXRlKHN0cnVjdCBzbmRfY2FyZCAqY2FyZCwgIAo+ Pj4gc3RydWN0IHBjaV9kZXYgKnBjaSwKPj4+ICAJaWYgKGVyciA8IDApCj4+PiAgCQlyZXR1cm4g ZXJyOwo+Pj4KPj4+ICsJaWYgKGNoZWNrX2RlbGxfc3dpdGNoYWJsZV9nZngocGNpKSkgewo+Pj4g KwkJcGNpX2Rpc2FibGVfZGV2aWNlKHBjaSk7Cj4KPiBIaSEKPgo+IE5vdyBsb29raW5nIGF0IGl0 IGFnYWluLi4uIFRoaXMgY29kZSBkaXNhYmxlcyBhbGwgQVRJIGFuZCBOVklESUEgc291bmQKPiBj YXJkcyBhdmFpbGFibGUgaW4gYW55IERlbGwgU3lzdGVtIChsYXB0b3Agb3IgQUlPKSBpZiBzeXN0 ZW0gc2F5cyB0aGF0Cj4gU0cgaXMgZW5hYmxlZCwgcmlnaHQ/CgpZZXMuCgo+Cj4gSXQgbWVhbnMg dGhhdCBhbHNvIGFueSBleHRlcm5hbCBBVEkgb3IgTlZJRElBIFBDSSBjYXJkIHdpdGggYXVkaW8g ZGV2aWNlCj4gY29ubmVjdGVkIHRvIFRodW5kZXJib2x0IChlLmcuIHZpYSBQQ0kgPC0tPiBUQiBi cmlkZ2UpIGlzIGFsd2F5cwo+IHVuY29uZGl0aW9uYWxseSBkaXNhYmxlZCB0b28/CgpJIG5ldmVy IHRob3VnaHQgb2YgdGhpcyBjYXNlLCB0aGFua3MgZm9yIGJyaW5naW5nIHRoaXMgdXAuCkRvIHlv dSBoYXZlIGFueSBzdWdnZXN0aW9uIHRvIGNoZWNrIGlmIGl0IGNvbm5lY3RzIHRvIHRoZSBzeXN0 ZW0gdmlhICAKVGh1bmRlcmJvbHQ/CgpLYWktSGVuZwoKPgo+Pj4gKwkJcmV0dXJuIC1FTk9ERVY7 Cj4+PiArCX0KPgo+IC0tIAo+IFBhbGkgUm9ow6FyCj4gcGFsaS5yb2hhckBnbWFpbC5jb20KCgpf X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwpBbHNhLWRldmVs IG1haWxpbmcgbGlzdApBbHNhLWRldmVsQGFsc2EtcHJvamVjdC5vcmcKaHR0cDovL21haWxtYW4u YWxzYS1wcm9qZWN0Lm9yZy9tYWlsbWFuL2xpc3RpbmZvL2Fsc2EtZGV2ZWwK