Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751599AbbLURa0 (ORCPT ); Mon, 21 Dec 2015 12:30:26 -0500 Received: from mail-bn1on0091.outbound.protection.outlook.com ([157.56.110.91]:10198 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751277AbbLURaX (ORCPT ); Mon, 21 Dec 2015 12:30:23 -0500 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=David.Daney@caviumnetworks.com; Message-ID: <5678370B.1030102@caviumnetworks.com> Date: Mon, 21 Dec 2015 09:29:47 -0800 From: David Daney User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:17.0) Gecko/20130625 Thunderbird/17.0.7 MIME-Version: 1.0 To: Arnd Bergmann CC: Gabriele Paoloni , Tomasz Nowicki , "bhelgaas@google.com" , "will.deacon@arm.com" , "catalin.marinas@arm.com" , "rjw@rjwysocki.net" , "hanjun.guo@linaro.org" , "Lorenzo.Pieralisi@arm.com" , "okaya@codeaurora.org" , "jiang.liu@linux.intel.com" , "Stefano.Stabellini@eu.citrix.com" , "robert.richter@caviumnetworks.com" , "mw@semihalf.com" , "Liviu.Dudau@arm.com" , "tglx@linutronix.de" , Wangyijing , "Suravee.Suthikulpanit@amd.com" , "msalter@redhat.com" , "linux-pci@vger.kernel.org" , "linux-arm-kernel@lists.infradead.org" , "linux-acpi@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "linaro-acpi@lists.linaro.org" , "jchandra@broadcom.com" , "jcm@redhat.com" Subject: Re: [PATCH V2 22/23] pci, acpi: Match PCI config space accessors against platfrom specific quirks. References: <1450278993-12664-1-git-send-email-tn@semihalf.com> <1450278993-12664-23-git-send-email-tn@semihalf.com> <201512211510.32029.arnd@arndb.de> In-Reply-To: <201512211510.32029.arnd@arndb.de> Content-Type: text/plain; charset="ISO-8859-1"; format=flowed Content-Transfer-Encoding: 7bit X-Originating-IP: [64.2.3.194] X-ClientProxiedBy: DM2PR07CA0012.namprd07.prod.outlook.com (10.141.52.140) To CY1PR07MB2136.namprd07.prod.outlook.com (25.164.112.14) X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2136;2:2VebdcgAbdzPi4d3GXya7yJcUP5xI4+u6pAIqQEiQ7JKFkDnXFShMOU6IWrz2jg5l/b87QJi+8x8v4T2g5fVirWPrK24v9Q/aTCRHmiQqf8RkRAZBKC2I1oD2TuVB9dGsd2T+0AopEi3OrTrgL9HpQ==;3:pAbhL1QBKnrgFvQrvd0AQFKYzmpXqx7VJGiyJjPe+NdE1SN1u+C+eclwuG6x+yUgIjz3p6XXbDDd0k1A2Hk66sMlsxUHVce4/ZFSUtjUZglLnJa2Tweg3rvGXnvL6cxe;25:HM7ATIr5qWosgfWTR8xIQrcov/pd5gHAtYHOUcNalTBnspmxhRA0QQ3MFMnshMXixwLmw1urJr6T7DGb1dOe7g/MClp6WX/XRTZ/bWfP+o/8lCYS6Cm+ezUNGglbXjIF7ETwDUmVkTyBXLjIzObl3KFNIPrgfXlzeXtNhyqmH+aBO59qkm0i6WcMpscD9soBxQYufgI2yHFexsfED7d+cVPdzB31ieJ8z4ukgZsVFD7VZWECsiYhIL1wdwSucz/EvPaGfCVLoH+iJmuOPlhnsQ== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR07MB2136; X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2136;20:niRXQ0IZGQqiF+LVI0QXWByi4WJGQNZ3/Y4epD7uJsYYe+tiMtiMymIeqSypxB1YYZtRgDJZkBYcvrkw+HFHm1vbwZSY+u0ltupxyZHQx6UUvGavUCee0U010vtv1Az+DQb4opahedN+/B0c0/X2/OVxKBHP673RxxnWyhOD6ZGWOceZgTsfFzXlEKG9dh9Ri/8mU3Bjj5G66q0IXdBrF83hZKtDFYibogffauNUUWaP0vgWW/Y0DgJVWW0C77d+vU3JB3vrxarp7LA67xGe57GKYEf2sSAXnOBHP9oA3d1+1b3U+yrEN44drSSm5AP4C3PWihGSgfdEPxLIInG1Xe5znYXIBdr5I2oVkECRVnqnsTOIMWqVG6Bh4JgrfZbHSiIfvRYx+CEA4yhrF4AN/mdHFhNf7JWoxBdf1s2abHLf1uRmxqcyJMP/DLEgZSrnVRd4Cd1+brCr97feq+sjVfVMBe+0On4J/X4PY90zsbvpNRVCBclxE7Gs/Gnj/AkI9mVkOaNob0KJcSyoWao3B1TK/0nleZXa9jp0utvXSD46DCeMBVtOJM4XjkBLUIwTecm+dsty3HqCCGwcJw04pThTZYs8FmRuLGs9SCLkxlQ= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(520078)(5005006)(8121501046)(3002001)(10201501046);SRVR:CY1PR07MB2136;BCL:0;PCL:0;RULEID:;SRVR:CY1PR07MB2136; X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2136;4:2qaI1iuf+gmSP/9Xpgqx5nLI+F0J5ialOdia7OwtUG0AMrVF7DXj+w86h0AnpZ5dIdigZLmgI+4twV6RtO2ZBlvD4r7qKE0c9N8zdvjTVS7s8Grc7uDV1pCSrRO+c45UAARDrCvZhgFwcFJNLI04RKGwyQW+9L5mFVkEpmGx37+/bOjslctZRQvwSMHlAKBOt+HQjYK3eb1wQHiXPBaxnKo20XEyO6mE5gsAe0BWdW91yqdhQyLDOFk6KNMEBM1flGRPEWJE6fQkaEapFantiTZZ1NKH8dvraJ4b7vS1K3gMb9donhAHN1iGiolstMKlI4xjLF5fnP4t0An9lMGjP/3Z9mvPLt5VfzVftR8GdMGA+zL07KVdeWtpsLAEkGi+ X-Forefront-PRVS: 079756C6B9 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(6009001)(189002)(24454002)(199003)(479174004)(377454003)(13464003)(65956001)(23756003)(65806001)(106356001)(66066001)(77096005)(80316001)(64126003)(5004730100002)(93886004)(105586002)(40100003)(19580395003)(19580405001)(101416001)(76176999)(54356999)(87266999)(65816999)(42186005)(59896002)(5008740100001)(50986999)(69596002)(99136001)(53416004)(50466002)(4001350100001)(36756003)(81156007)(87976001)(97736004)(5001960100002)(189998001)(110136002)(230700001)(83506001)(122386002)(47776003)(1096002)(2950100001)(586003)(3846002)(6116002)(33656002)(92566002)(7059030);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR07MB2136;H:dl.caveonetworks.com;FPR:;SPF:None;PTR:InfoNoRecords;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?iso-8859-1?Q?1;CY1PR07MB2136;23:Hyf6R6fFGTlgg8CWb1oiGBN/s+Vdt52Sl3uZn62?= =?iso-8859-1?Q?sS5SHhFqsPcFrOXgKcREcpbpF3nul1cFFcOmvCkxkphK8QQXgsAddG4c2a?= =?iso-8859-1?Q?NrW5z5V4/NNdpIe4kNVcjLpoY5MblCwx9LkOBnfVGviduA7roBUw0O4/+k?= =?iso-8859-1?Q?xsU1ezh/0yIwt+E40Wh4FHIRNlLaNB7gDbqBWJdo5bzNM6T9do8+zE9Y2d?= =?iso-8859-1?Q?G1crQ3oeD0MiMo8JHmkKolFDH+32h3QFRqI6eYMquuoKMeCDk9oARg7Ctf?= =?iso-8859-1?Q?96neSmoL+62XCl+pe4J8Kz9KgsiyNyvWE87VW1RjiH+hEPpuhMm9PdNmbg?= =?iso-8859-1?Q?pTlO940GVGSHaSI6mHQ9ZPEYzj2xmzeeYtixFZB6UTiOxlFsFWOvGr6xBh?= =?iso-8859-1?Q?R0PNeihAf3TqGxPAnzZ1xXXu/LX6+MkopoFZL4NGrHg/Ms/sDx5PryCY3k?= =?iso-8859-1?Q?ZxWhUULdr4tfFF61/J8aaHu4NSh60smCd0nyRK8BjUbmeunKwrT2fm5bZV?= =?iso-8859-1?Q?BJruEMXLOPdfUNZWOUhf3QwHyMhQQYOIhO0pW7ij6vL8W5KNaM8aB0RmRh?= =?iso-8859-1?Q?sfXZFFNwhlERXem3I/kpBTsil4+zQwCSHQsbQTe8ulUlex9VDgsZw+9jrD?= =?iso-8859-1?Q?X3oejyrHcyH3pZLQbJtGHv9hZGSUJNk2RHn60Fe/5Z8ZKK6Xfxi2xrNkYV?= =?iso-8859-1?Q?YnvYzXde5vRxtfksrTXkb55AUAxLqZfZxPT/KYzWnvzZ+nJ1BOdQx7rbPG?= =?iso-8859-1?Q?MqpxQCa6ZXhQvsXM0Uz0/LE03T7VX4lbG73X1LsYFDC94ZHUpK5E9iPONF?= =?iso-8859-1?Q?FWhigrSeZPmOvVSs0VWPeNh7zIQ6NJPrp7Dpt3ZUcJBNkJaNWHHXsFhiw0?= =?iso-8859-1?Q?x5Y+Ml0PA48iH68O4l2IEgKn2O7j4JoL4rcbw7SGFD5orxuEDeNRFJHYvB?= =?iso-8859-1?Q?Iyt1r92jQNehA+iGR7fxcqMnltDgADUgqejhVj16W5YinmyAxhzkMHCb2x?= =?iso-8859-1?Q?exN45iFp8EmAvp9mX5swWMGDGbbcI4TybssHMdfnG91X0Y0AYkRPSlWSIS?= =?iso-8859-1?Q?FrhPb4A5+LdZ5585s2Lf0SJy91US9/OZwphh7gmlsuMDt9TNckJZlQ/Ls8?= =?iso-8859-1?Q?38r2YqoLOveFqFnIF/dldxDpYLspqXb+wIqAg5Aoz4aJ/TPccLmtNfUhHz?= =?iso-8859-1?Q?5RfXXlI7fSS+jBflEmN9KZ7tqthosn29HSAAWMtnPeeiTHfXRmzlHgB+Vf?= =?iso-8859-1?Q?7s0n5ANnediHSVKls3OkX07XxdX8c5DpniHjDtqnJMshWgogJnl+6Fgs97?= =?iso-8859-1?Q?/JeWD2pvUjzIWfbGh5YWL0vI0Wh5vIAPSVXpyBE4P0CsRRJNP1EoWElbz7?= =?iso-8859-1?Q?ThqFTkhCwlH9u4uWS0o4aVSJ2grO06UMyfKS5MFSHBHdVTcyBQWluXKxBx?= =?iso-8859-1?Q?5t27m9qYaCXE0E=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2136;5:BUM8Ii31QTZz5S4ZBnhqv4kjo2daqq0qQYtLffksiCl3jOUmaiQjOF697igaQyc+y1CPXhJWEp7Nq6SodzY/cfDI0tYyuXBMO+gta1hCBfDTNLaUrbU7lIQc/238nrsVWh0Dysce7IQ16s9oaZ5EEQ==;24:Tg5ZK1ZpRQ2FjRNxaxTvmsr1nwynkBsnGmhCnLm4Gjb+wWKp7qwPV15TZ9joBPj1yQyXDRq4fbkK2LzKEU8wxuqFqs4Zp4GWCkXLZ6xAVNo= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Dec 2015 17:29:56.9130 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR07MB2136 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2368 Lines: 54 On 12/21/2015 06:10 AM, Arnd Bergmann wrote: > On Monday 21 December 2015, Gabriele Paoloni wrote: >>> -----Original Message----- >>> From: linux-kernel-owner@vger.kernel.org [mailto:linux-kernel- >>> owner@vger.kernel.org] On Behalf Of Tomasz Nowicki > >>> Some platforms may not be fully compliant with generic set of PCI >>> config accessors. For these cases we implement the way to overwrite >>> accessors set before PCI buses enumeration. Algorithm that overwrite >>> accessors matches against platform ID (DMI), domain and bus number, >>> hopefully enough for all cases. All quirks can be defined using: >>> DECLARE_ACPI_MCFG_FIXUP() and keep self contained. >> >> I've got a couple of comments/questions about this patch.. >> >> 1) So according to this mechanism quirks would be supported only by >> vendors whose BIOS are SMBIOS compliant. Now personally I am ok >> with this but I don't know if this is OK in general as it would >> narrow down the number of platforms that would be able to define >> the quirks... >> Lorenzo, Arnd what is your opinion here? > > I'd rather not see the quirks in mainline at all, and only support > SBSA compliant machines, There seems to exist a class of systems that were intended to be SBSA compliant, but after they were manufactured turn out to not be fully complaint. It would be nice to have Linux kernel support for some of these systems There also seems to be historical precedent for quirk frameworks in various kernel subsystems to handle systems and devices that are not fully "Spec. Compliant". > or require the BIOS to work around the hardware > quirks differently (e.g. by trapping config space access through secure > firmware, or going through an AML method to be defined). Some systems don't seem to have this capability. For example, in ARMv8 (A.K.A. arm64), I haven't been able to figure out how to trap these accesses to EL3 for emulation. The specification is 5700 pages long though, so perhaps I missed that bit. > I'm certainly > ok with making it depend on SMBIOS if we are going to use something like this. > > Arnd > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/