From patchwork Thu Dec 14 03:11:46 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Cooks X-Patchwork-Id: 848358 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-i2c-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=opengearcom.onmicrosoft.com header.i=@opengearcom.onmicrosoft.com header.b="oV3TQQuT"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 3yxzBj4lG1z9t2f for ; Thu, 14 Dec 2017 14:12:29 +1100 (AEDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752296AbdLNDM1 (ORCPT ); Wed, 13 Dec 2017 22:12:27 -0500 Received: from mail-by2nam01on0079.outbound.protection.outlook.com ([104.47.34.79]:7309 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751914AbdLNDMV (ORCPT ); Wed, 13 Dec 2017 22:12:21 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=opengearcom.onmicrosoft.com; s=selector1-opengear-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=t1oFgZ8W9kKnH1ZlXUqw6YwSBHeatv7tnA/+zsHNbJA=; b=oV3TQQuTK78v2VKH5V4JqoLqNL2ETGoUmzeapS6J8Pi+U14e/KO/HwA09Bq0Ov/4jLJVhKN4/5DuMVV6UWcEgqYS4OGt71uOuQJM/87O71PIJnqsD8AupxpRIItu2n4jHvAj+SXScHhE39tpOpeZ6X3waHC4nxHe0VhVzk82KdI= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=andrew.cooks@opengear.com; Received: from andrewc.bne.opengear.com (59.167.150.161) by CO2PR15MB0027.namprd15.prod.outlook.com (10.161.86.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.302.9; Thu, 14 Dec 2017 03:12:19 +0000 From: Andrew Cooks To: jdelvare@suse.com, linux-i2c@vger.kernel.org Cc: platypus-sw@opengear.com, Andrew Cooks , Wolfram Sang , linux-kernel@vger.kernel.org (open list) Subject: [PATCH v2 3/3] i2c: add ACPI support for i2c-piix4 Date: Thu, 14 Dec 2017 13:11:46 +1000 Message-Id: X-Mailer: git-send-email 2.7.4 In-Reply-To: References: MIME-Version: 1.0 X-Originating-IP: [59.167.150.161] X-ClientProxiedBy: MEXPR01CA0140.ausprd01.prod.outlook.com (10.171.15.25) To CO2PR15MB0027.namprd15.prod.outlook.com (10.161.86.142) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b9b3ad76-feec-4925-07a2-08d542a07d9d X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(2017052603307); SRVR:CO2PR15MB0027; X-Microsoft-Exchange-Diagnostics: 1; CO2PR15MB0027; 3:mm9ac38k1K2uUMPTa9BvUACbdnD1dj9xsxXNsaF4VDA/P9BhzxXXxkpvhlAVc4TRLaoRHgkk5bfrKCvkfhp4UXgdfCHmYm8LEW1/6RkOM/1CSfsxcHZXL9Rr/8ZmYoXwOMMBbOO7o+j8cD5mSu23OIy//8o2odyCvwVXZLysF/mftWgd9BEe9nR2Ne8vUjYH296rPneSrkQaj9YUbnNPMyNIkgyDYYV+/ORVQC71k+98ycLD3vsGm0Jg7tL6pfDT; 25:myOFQTbIA2F/4ArJw6JXa9FxXZRh5uNhRjS6Yz0FjetVv4hrCYzlMUijze8JeXZRv29koyUEw9S9UVCNYSnQmMBHMP3y4AJF8uHBv9ocxe63kQLYFU7wZQPvhQy1/7fkLE0lDfVLbo9jb+pbJUuekMa4PHJbEhdgMhKwVijSelXFg56KGqQUZoSZ+9tjfZRVPzqX7UAcuY0Jey4iMeBLTVMMp5C+zLZ8UOQno3cmE1NlJYY9snPxi/Qyn+P6ToGCRmaKaD4BqnPjk9T7QMLtO9qWP+n8tQEV72d1DceM+sl3vLG+qE5P8ZEo4nTgJQ+IXp2Zt9EG8xEUxT7rv/DVzA==; 31:u5iuBsczFlBLej+FLPVgzPjiFT60rvIqRuvyRx7BpMUtu0rcFHLo9gkDyGIX5kZ4xYasmyYEMoNj77yQoRHxBDRA94n6JYr/mcEoqEd9pLGCbRf0xF2FiwagqcvFgrJBS508B/ceD5OTKgoqCypmqjalSIQ1gb6U1YE/yWakfiyRQWNrj0dJBAw2phAyJliEvyAp7/HEN0nKnJi3+Kmtdt9kyw7+JEo2BXnPryB+dF0= X-MS-TrafficTypeDiagnostic: CO2PR15MB0027: X-Microsoft-Exchange-Diagnostics: 1; CO2PR15MB0027; 20:hmrmBB9K+oQhjU+EFkspwgGusZra5lVkFcQXFPUyj1MftIqqqwDcdSL1NdqQvKylp01ljgy27MDId/Qajka1bGXI9mtBGldgdc9r2i+Y1oKoWo/IlIVii8Bvjp+45d7twIzlDglBHSGxTKRotDfI+28Hmv4OVmL10BrV1KYptCM=; 4:eGc2wPLTfUH6GhT4XT3RTiHiu5FWQR0wvHAzjryCDa4Ke0lacbXv0TpKByRT/01hiXzEARTZWy/PYxfAvxRvi+PePXaIg56tU72hUzGOmBJKSonzAo9WunMK8xr1z1zSJodGs3sBhFIZzUMRtvkDZGfBnUVdSs+xDlSejsEQAdSOKxl2u5SB8NC1k7LrZ6ksMwISADeW3EQLSTeXg8tR5Ii67GTf+YOmTPdDcFkm4vIKPYzuZO1ncBqJZQtfKU9kAi34sl/SvFrl6fZUL0RshA== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040450)(2401047)(8121501046)(5005006)(93006095)(93001095)(3231023)(3002001)(10201501046)(6041248)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123560025)(20161123558100)(20161123555025)(20161123564025)(6072148)(201708071742011); SRVR:CO2PR15MB0027; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:CO2PR15MB0027; X-Forefront-PRVS: 05214FD68E X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(346002)(396003)(376002)(366004)(39840400004)(199004)(189003)(7696005)(81166006)(66066001)(81156014)(16586007)(59450400001)(7736002)(47776003)(305945005)(5660300001)(2950100002)(52116002)(97736004)(6666003)(68736007)(386003)(4326008)(478600001)(8676002)(316002)(51416003)(36756003)(2906002)(54906003)(53936002)(48376002)(106356001)(105586002)(25786009)(6486002)(50466002)(50226002)(3846002)(8936002)(76176011)(118296001)(16526018)(6116002)(86362001); DIR:OUT; SFP:1101; SCL:1; SRVR:CO2PR15MB0027; H:andrewc.bne.opengear.com; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: opengear.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: 1; CO2PR15MB0027; 23:UpUsP4xo7nwzntsg7lYUJXPOHf005r31Ehl4nqPBjLVnwxaahi3Gksf1nRct3yIcogDB2wp5YYyBS6eKIB5nJT4SvDVeimrTvPclopcxDSoOTRVLXipK5BVijsiZEe8DDnqbVU0WlVVkehJGCo2WMvO12g37wesxzR1a/y08wDnbj33BJ5NE5EvvJLY85idOGh1v/73r2tmsKq9iCKVoXNObFPz0jktxvh+P92UO+5x73wYEmaTEqoiNfzwbrUM4m4jPTBtxbRKvmToNxy2C+OyU1ocrIqaMfRHHzcw9UJ4X+n/EYvMmA3zZ0xzCFjvvaS8H1ix7WY6pgrvu7xOryPTQZ2B629+KAesjhA/RdoNBMtnaFRHqvopCcPV3jfT4/W6ZhNy0ZzSS4rVHSHG0OZE36A4Gtih1gFUCV8XUWmPBD1nhlwXTt48mx3NECejxUWgNuZRo4nQDWiNK9s72xZCcg/BDMN6SvMuT10lFpx0cAbcUggrsemvAo8IAdbJORSDVkahpZZi0UZOfDYYHyMuhgKE23p1CFyUoVVRGSx4BQKFmZJMmJpbtFzstv13HpOB0CxYJ/8+PUJddsbnIsW4d7c51OlitZEW87dlV76CvHwXTMoAVlro9IYHlifwZ+B4g+31JmWzKZ07k5SZw21zCx3ezseVbK93ruQDJSXQPhYjCOlBORyDuMUJ+JRSlJmA/LBIo6F/PxOAJN+hbc9eDc267w4CnXI7YvS9B9bWdg/f/fHrk4c1QFpaMZBjeXt/RuaCqCUxPJgfAmvjbHNV9PVK022Ro9HHn8AA9rsTbVudP7+E1fGSJ7/7+Yy/V9j7rtxY/xkZuDVMgy5j9hw8k531DyUoTkP3G9yZjQtuJqMxbaKgxpMoE1CvbkBOXlz46yoMorQKPvS1gzc+dVdCzl5L/uMaMpagRT20Elt63WcFGFuQ3EJdUDI9k6RxA0tNx3hs8EDu/ry0Of8H9OAOv8QuGDIan57FfkKH050rg7Zj6Rl1xbJbMpgmLT3XxTJmCYonMCdi09bL4MmmRcPOW0GdF4tAqAWpCq/SGxBWPtL6d4vwbUwI7w+i7j5QU X-Microsoft-Exchange-Diagnostics: 1; CO2PR15MB0027; 6:FtFz1aQagYMr5gdcoRWCFTl2V17WeMkmFQ8vWfojapRrnsdEgKYoxY8t8l9Pi1C2EdKTkpyxHLmiVjEzOSjJean9NfauI19R0rdAPUgyglyM3TX6Mlfe1KcyHJH1rwvfGG671w8Oo3L0KCg8i/KZ6EzjJ/ykB1HMQCRo15JZJ/AWG0np1wzT9Pcg2t+t+8MBq3GRgzKBnqPqV51RLI1YI8+83S0/lgHKBjfqDFBpqC5Z+oFVcnciXJrXO6nN9cjiCjManRcFInsqIrz2pIJRq3h7H9pkgoFb1i7NXjVBqfwTi1k4l9Em1kH8j2pOz0VV5/Iibtv8iOAZBZ/DZBsYU3+Y7rXBy2ru+qu/KW5kXkg=; 5:oiKRzhyqFhLVZ0XZNnSqYgeZ/XwpBj29o0HeGL7zdPY85nU1Z4gcbXcZn9jMq5/+ALUy6u1cAns/oAUHYVjaEQPZRefGh27aBAoHhbXqLE0ncZsVdpuK5fcFcEoNExTfvrgOapyoboiVc74z7FcMTOklJgNfJdiKGlubAhFiy0c=; 24:UPv4lJ+QV7TPW8cO3g0QZXfsGJTIvDJFahFpCkIqr+XI2Ys+FdP6ntCElV+uwmZMpMsmT6vQIUU4M+FpgM6Mib6WZh4//0RC1qBijLyHJTU=; 7:WRQaYB9JyF/oxgTCesRVypynlDAl5PSVxtTTqqiwTWtmyhr3rqbsFWZeM0hR3asqlSAeMzDW6xnXNxrSBO1TAMAFoWe33bHTtKGZchfseEKnNJlwFWTz1zZWCyVlKuGKb3FgepvaCN7bECJSJx0DG85uZ7d8cQ2hRg5XteMMx14HxfUYL6KuH0GjCWJIe31kgtl5YoLHBdlratBHwhWkx4ygNSqEcKqDzAM3GVYnjy0vkcyfXwrmTal+fntKNyb6 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: opengear.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Dec 2017 03:12:19.6186 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b9b3ad76-feec-4925-07a2-08d542a07d9d X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: a6251c26-d21f-4164-a225-1f4eaebf5f9a X-MS-Exchange-Transport-CrossTenantHeadersStamped: CO2PR15MB0027 Sender: linux-i2c-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-i2c@vger.kernel.org This enables the i2c-piix4 SMBus controller driver to enumerate I2C slave devices using ACPI. It builds on the related I2C mux device work in commit 8eb5c87a92c0 ("i2c: add ACPI support for I2C mux ports") In the i2c-piix4 driver the adapters are enumerated as: Main SMBus adapter Port 0, Port 2, ..., aux port (i.e., ASF adapter) However, in the AMD BKDG documentation[1], the implied order of ports is: Main SMBus adapter Port 0, ASF adapter, Port 2, Port 3, ... This ordering difference is unfortunate, and we assume that ACPI developers will use the Linux ordering. [1] 52740 BIOS and Kernel Developer's Guide (BKDG) for AMD Family 16h Models 30h-3Fh Processors Signed-off-by: Andrew Cooks --- drivers/i2c/busses/i2c-piix4.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/i2c/busses/i2c-piix4.c b/drivers/i2c/busses/i2c-piix4.c index cc38dc3..65e6390 100644 --- a/drivers/i2c/busses/i2c-piix4.c +++ b/drivers/i2c/busses/i2c-piix4.c @@ -845,6 +845,12 @@ static int piix4_add_adapter(struct pci_dev *dev, unsigned short smba, /* set up the sysfs linkage to our parent device */ adap->dev.parent = &dev->dev; + if (has_acpi_companion(&dev->dev)) { + acpi_preset_companion(&adap->dev, + ACPI_COMPANION(&dev->dev), + piix4_adapter_count++); + } + snprintf(adap->name, sizeof(adap->name), "SMBus PIIX4 adapter%s at %04x", name, smba);