Received: by 10.213.65.68 with SMTP id h4csp247058imn; Fri, 23 Mar 2018 03:51:53 -0700 (PDT) X-Google-Smtp-Source: AG47ELuLqojNLKe2KTZ0/P+/Rp4WACI+yvsL8tfD7FUoSRPYT6mz84CvzcYd5Ff/1nAfrRPXP5TF X-Received: by 10.99.124.2 with SMTP id x2mr20918970pgc.262.1521802312938; Fri, 23 Mar 2018 03:51:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521802312; cv=none; d=google.com; s=arc-20160816; b=DhQNm3F8ztZpQdgd+eu1o2jm+14DPTbLZ5yS/B+ReGn9Qk0yWY6uIOsVOXip9YfSur 1EAd9UxXtaAcY2w/7KoxsgVOjpfK7y0895Z5hUaXPqk5CRHK1sdRvD1TqIuvNto9dtHM ctqMBFwrw3Js9OV1UYnhBmYZqYuQlAy08wfzyLUYWp4FQ7lTc6enHyMhMa8m4Tpr+grO iHnU85GObBVSgT0Iqc2b6OnHXjLIhrFzhAVOL/YWRm5HTCobaSBE6JibpinLLiYqTnBz 6vjp9kgEZ1YEVLQAvrxLT0aRtGc7ZYK2sqxrmSPVa20V1Qumkq1GtcXNZYAs2l6YR5+T s9oA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:mime-version:user-agent:references :in-reply-to:message-id:date:subject:cc:to:from :arc-authentication-results; bh=PPWXRL91QQItJNGmVDOyn+TL+3b3USnW5xToDo/EVC4=; b=Lvj3vZwwGKDqU272oDOP2Z2cAS7Y88J7yuuyDUEmM+hZlYbl4ohL1TaS9PBZzSPESA 5Lc8T+I2WnlPnehce2TA1WG+2PfgSz9pNPJlcTi0ulRaQ8WWQytkGRfdEtog4Zj5HFZQ e4r2wiMqXUE41HM4vCpQ+kbn2p/oyX1wVe6KloNeeJwbX4aoyJg0oCbc+SkF9E0pp38w EKrAFwZLUj4fz+rlVKtuzc6FKeu2Hy4WMVK9bb51FP0UhtoXmxhSor/nzx7kslsGyZ0+ qPKk0GM8nopHgQOB2qcuboEd1PRrO1ZkqQncZ9WfyaE1P9/ImGwlxaxT8+peqBorGsOK kqeg== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id x6si5966777pgq.260.2018.03.23.03.51.38; Fri, 23 Mar 2018 03:51:52 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755347AbeCWKuo (ORCPT + 99 others); Fri, 23 Mar 2018 06:50:44 -0400 Received: from mail.linuxfoundation.org ([140.211.169.12]:45288 "EHLO mail.linuxfoundation.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755766AbeCWKOe (ORCPT ); Fri, 23 Mar 2018 06:14:34 -0400 Received: from localhost (LFbn-1-12247-202.w90-92.abo.wanadoo.fr [90.92.61.202]) by mail.linuxfoundation.org (Postfix) with ESMTPSA id 095B9124F; Fri, 23 Mar 2018 10:14:33 +0000 (UTC) From: Greg Kroah-Hartman To: linux-kernel@vger.kernel.org Cc: Greg Kroah-Hartman , stable@vger.kernel.org, Edgar Cherkasov , Michael Brunner , Viktor Krasnov , Jean Delvare , Mika Westerberg , Wolfram Sang , Sasha Levin Subject: [PATCH 4.4 16/97] i2c: i2c-scmi: add a MS HID Date: Fri, 23 Mar 2018 10:54:03 +0100 Message-Id: <20180323094158.399312214@linuxfoundation.org> X-Mailer: git-send-email 2.16.2 In-Reply-To: <20180323094157.535925724@linuxfoundation.org> References: <20180323094157.535925724@linuxfoundation.org> User-Agent: quilt/0.65 X-stable: review MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org 4.4-stable review patch. If anyone has any objections, please let me know. ------------------ From: Edgar Cherkasov [ Upstream commit e058e7a4bc89104540a8a303682248614b5df6f1 ] Description of the problem: - i2c-scmi driver contains only two identifiers "SMBUS01" and "SMBUSIBM"; - the fist HID (SMBUS01) is clearly defined in "SMBus Control Method Interface Specification, version 1.0": "Each device must specify 'SMBUS01' as its _HID and use a unique _UID value"; - unfortunately, BIOS vendors (like AMI) seem to ignore this requirement and implement "SMB0001" HID instead of "SMBUS01"; - I speculate that they do this because only "SMB0001" is hard coded in Windows SMBus driver produced by Microsoft. This leads to following situation: - SMBus works out of box in Windows but not in Linux; - board vendors are forced to add correct "SMBUS01" HID to BIOS to make SMBus work in Linux. Moreover the same board vendors complain that tools (3-rd party ASL compiler) do not like the "SMBUS01" identifier and produce errors. So they need to constantly patch the compiler for each new version of BIOS. As it is very unlikely that BIOS vendors implement a correct HID in future, I would propose to consider whether it is possible to work around the problem by adding MS HID to the Linux i2c-scmi driver. v2: move the definition of the new HID to the driver itself. Signed-off-by: Edgar Cherkasov Signed-off-by: Michael Brunner Acked-by: Viktor Krasnov Reviewed-by: Jean Delvare Reviewed-by: Mika Westerberg Signed-off-by: Wolfram Sang Signed-off-by: Sasha Levin Signed-off-by: Greg Kroah-Hartman --- drivers/i2c/busses/i2c-scmi.c | 4 ++++ 1 file changed, 4 insertions(+) --- a/drivers/i2c/busses/i2c-scmi.c +++ b/drivers/i2c/busses/i2c-scmi.c @@ -18,6 +18,9 @@ #define ACPI_SMBUS_HC_CLASS "smbus" #define ACPI_SMBUS_HC_DEVICE_NAME "cmi" +/* SMBUS HID definition as supported by Microsoft Windows */ +#define ACPI_SMBUS_MS_HID "SMB0001" + ACPI_MODULE_NAME("smbus_cmi"); struct smbus_methods_t { @@ -51,6 +54,7 @@ static const struct smbus_methods_t ibm_ static const struct acpi_device_id acpi_smbus_cmi_ids[] = { {"SMBUS01", (kernel_ulong_t)&smbus_methods}, {ACPI_SMBUS_IBM_HID, (kernel_ulong_t)&ibm_smbus_methods}, + {ACPI_SMBUS_MS_HID, (kernel_ulong_t)&smbus_methods}, {"", 0} }; MODULE_DEVICE_TABLE(acpi, acpi_smbus_cmi_ids);