From patchwork Fri Feb 23 19:53:08 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Limonciello, Mario" X-Patchwork-Id: 10239451 X-Patchwork-Delegate: dvhart@infradead.org Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 0479B602DC for ; Fri, 23 Feb 2018 19:53:15 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id E7F9E29926 for ; Fri, 23 Feb 2018 19:53:14 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id DC9C82992E; Fri, 23 Feb 2018 19:53:14 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-6.8 required=2.0 tests=BAYES_00,DKIM_SIGNED, RCVD_IN_DNSWL_HI,T_DKIM_INVALID autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id BC2EA29926 for ; Fri, 23 Feb 2018 19:53:13 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754793AbeBWTxM (ORCPT ); Fri, 23 Feb 2018 14:53:12 -0500 Received: from esa7.dell-outbound.iphmx.com ([68.232.153.96]:62559 "EHLO esa7.dell-outbound.iphmx.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754973AbeBWTxL (ORCPT ); Fri, 23 Feb 2018 14:53:11 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=dell.com; i=@dell.com; q=dns/txt; s=smtpout; t=1519415193; x=1550951193; h=from:to:cc:subject:date:message-id:references: in-reply-to:content-transfer-encoding:mime-version; bh=aTpgXL8u90wKsNnaOjC3/Je+rV/jMomwResGPRgFBN0=; b=e08zqnMX1FJdXKk+812GeRhbl5lBZ2j8wwv64wZRTEurwr46kzIVSSZv pV3sXQqj6n7al0TQU3Mr/VynqFdmU0gGWgwuaPgO8kl/wbKn9EnO1EJcU AiCM55OLDzvimyOEidV8rxt+UwOwVNe0nCckCf6MXdO2JWcROzK4J+cWo o=; X-IronPort-Anti-Spam-Filtered: true X-IronPort-Anti-Spam-Result: =?us-ascii?q?A2GxAQCPb5BamMuZ6ERdGQEBAQEBAQEBA?= =?us-ascii?q?QEBAQcBAQEBAYQlgQAoCoNKmCCCAoEWiAGOUBSCAgqFMwIagh5WFgECAQEBAQE?= =?us-ascii?q?BAgECEAEBAQEBCAsLBigvgjgigkoBAQEDASMRMwcLDAQCAQgRBAEBAQICIwMCA?= =?us-ascii?q?gIfJQEICAIEAQ0FCIoDAw0IrAOCJ4c5DYEygh4BAQEBAQEEAQEBAQEBAQEggQ+?= =?us-ascii?q?ECYIngz2DLYJqggQBEgEmFh2CXYJlBYsPjySJWjUJkQWFAoIohimLfUiODYlWg?= =?us-ascii?q?TwmCYEKcXBPgkOCVBAMggZ4AYpqgSWBGQEBAQ?= X-IPAS-Result: =?us-ascii?q?A2GxAQCPb5BamMuZ6ERdGQEBAQEBAQEBAQEBAQcBAQEBAYQ?= =?us-ascii?q?lgQAoCoNKmCCCAoEWiAGOUBSCAgqFMwIagh5WFgECAQEBAQEBAgECEAEBAQEBC?= =?us-ascii?q?AsLBigvgjgigkoBAQEDASMRMwcLDAQCAQgRBAEBAQICIwMCAgIfJQEICAIEAQ0?= =?us-ascii?q?FCIoDAw0IrAOCJ4c5DYEygh4BAQEBAQEEAQEBAQEBAQEggQ+ECYIngz2DLYJqg?= =?us-ascii?q?gQBEgEmFh2CXYJlBYsPjySJWjUJkQWFAoIohimLfUiODYlWgTwmCYEKcXBPgkO?= =?us-ascii?q?CVBAMggZ4AYpqgSWBGQEBAQ?= Received: from esa5.dell-outbound2.iphmx.com ([68.232.153.203]) by esa7.dell-outbound.iphmx.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 23 Feb 2018 13:46:32 -0600 From: Received: from ausxippc101.us.dell.com ([143.166.85.207]) by esa5.dell-outbound2.iphmx.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 24 Feb 2018 01:45:27 +0600 X-LoopCount0: from 10.166.132.169 X-IronPort-AV: E=Sophos;i="5.47,383,1515477600"; d="scan'208";a="1055729394" X-DLP: DLP_GlobalPCIDSS To: , , CC: , Subject: RE: dell_smbios in 4.15 and keyboard backlight Thread-Topic: dell_smbios in 4.15 and keyboard backlight Thread-Index: AQHTrNm5slXmoTDsqkGomqt/s3ipcKOyWfoQgABtWQD//5xpcA== Date: Fri, 23 Feb 2018 19:53:08 +0000 Message-ID: <4882553904ef48da9b12799ed7a7100c@ausx13mpc120.AMER.DELL.COM> References: <20180223133330.GA12066@bongo.bofh.it> <20180223190615.GA23961@bongo.bofh.it> <37740d49c7404fae824ff075fb87fbe9@ausx13mpc120.AMER.DELL.COM> <1519414856.10722.131.camel@linux.intel.com> In-Reply-To: <1519414856.10722.131.camel@linux.intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-ms-exchange-transport-fromentityheader: Hosted x-originating-ip: [10.143.18.86] MIME-Version: 1.0 Sender: platform-driver-x86-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: platform-driver-x86@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP > -----Original Message----- > From: Andy Shevchenko [mailto:andriy.shevchenko@linux.intel.com] > Sent: Friday, February 23, 2018 1:41 PM > To: Limonciello, Mario ; md@linux.it; > dvhart@infradead.org > Cc: pali.rohar@gmail.com; platform-driver-x86@vger.kernel.org > Subject: Re: dell_smbios in 4.15 and keyboard backlight > > On Fri, 2018-02-23 at 19:19 +0000, Mario.Limonciello@dell.com wrote: > > > -----Original Message----- > > > From: Marco d'Itri [mailto:md@linux.it] > > > Sent: Friday, February 23, 2018 1:06 PM > > > To: Limonciello, Mario > > > Cc: pali.rohar@gmail.com > > > Subject: Re: dell_smbios in 4.15 and keyboard backlight > > > > > > On Feb 23, Mario Limonciello wrote: > > > > > > > Can you please email me on mario.limonciello@dell.com for this > > > > topic? > > > > > > > > I would be interested to know do you have dell-smbios-smm or > > > > dell-smbios-wmi not loading or compiling? > > > > > > Oops... The new modules have not been enabled yet by the Debian > > > kernel > > > team, so this explains why I could not find them. > > > Thank you for your help, I will get back to you if I will still have > > > troubles with the new kernel. > > > > > > > If you don't mind I'm going to CC this to the mailing list for > > discussion. I think > > you identified a valid config problem. > > > > Andy, Darren, > > > > Marco (CC'ed) privately emailed Pali and I to discuss an issue that > > dell-laptop > > wasn't working properly for him and dell-smbios couldn't find a > > backend. > > > > I thought at first it was an issue of the race condition recently > > discussed but > > it's actually a case that the distro kernel he's using compiled: > > > > DELL_SMBIOS > > DELL_LAPTOP > > > > But didn't select DELL_SMBIOS_WMI or DELL_SMBIOS_SMM. > > Distros have to enable whatever they want to. At least in this instance I'd hypothesize it's because these are new config options that default to off. They probably had DELL_SMBIOS enabled before and carried that forward But there was nothing to transition them to make them turn on DELL_SMBIOS_WMI or DELL_SMBIOS_SMM. > > Can it be the Dell model, that survives w/o one of above or even both? The design as it exists to day is that dell-laptop needs dell-smbios but dell-smbios won't run unless it has a backend selected. > > > I remember hypothesizing about this with one of the earlier versions > > of the > > patch series but the decision was to just hide config DELL_SMBIOS as > > an invisible > > tristate. > > > > Because this is a real problem happening I think we need something > > like this: > > > > diff --git a/drivers/platform/x86/Kconfig > > b/drivers/platform/x86/Kconfig > > index 9a8f964..f2f548b 100644 > > --- a/drivers/platform/x86/Kconfig > > +++ b/drivers/platform/x86/Kconfig > > @@ -107,6 +107,7 @@ config ASUS_LAPTOP > > > > config DELL_SMBIOS > > tristate > > + depends on DELL_SMBIOS_WMI || DELL_SMBIOS_SMM > > This will simple not work. You're right, I tried it and got this: warning: (DELL_SMBIOS_WMI && DELL_SMBIOS_SMM && DELL_LAPTOP && DELL_WMI) selects DELL_SMBIOS which has unmet direct dependencies (X86 && X86_PLATFORM_DEVICES && (DELL_SMBIOS_WMI || DELL_SMBIOS_SMM)) warning: (DELL_SMBIOS_WMI && DELL_SMBIOS_SMM && DELL_LAPTOP && DELL_WMI) selects DELL_SMBIOS which has unmet direct dependencies (X86 && X86_PLATFORM_DEVICES && (DELL_SMBIOS_WMI || DELL_SMBIOS_SMM)) but it still let me go forward. Something like this maybe then to not let them even try to run dell-smbios? diff --git a/drivers/platform/x86/dell-smbios.c b/drivers/platform/x86/dell-smbios.c index 8541cde..71489fe 100644 --- a/drivers/platform/x86/dell-smbios.c +++ b/drivers/platform/x86/dell-smbios.c @@ -556,6 +556,11 @@ static int __init dell_smbios_init(void) const struct dmi_device *valid; int ret; +#if !defined(CONFIG_DELL_SMBIOS_WMI) && !defined(CONFIG_DELL_SMBIOS_SMM) + pr_err("Missing SMBIOS backend."); + return -ENODEV; +#endif + valid = dmi_find_device(DMI_DEV_TYPE_OEM_STRING, "Dell System", NULL); if (!valid) { pr_err("Unable to run on non-Dell system\n");