From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jon Masters Subject: Re: [PATCH V7 00/11] Support for generic ACPI based PCI host controller Date: Tue, 24 May 2016 10:38:32 -0400 Message-ID: References: <57331290.7070104@semihalf.com> <3d4aae09-51c4-f007-5100-191a4a85e27a@redhat.com> <95b1d06e-f9c5-39f3-1003-f536b65eef60@redhat.com> <20160523105655.GA22902@red-moon> <20160523233918.GA32555@localhost> Mime-Version: 1.0 Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: Sender: linux-kernel-owner@vger.kernel.org To: Gabriele Paoloni , Bjorn Helgaas Cc: Lorenzo Pieralisi , Ard Biesheuvel , Tomasz Nowicki , "arnd@arndb.de" , "will.deacon@arm.com" , "catalin.marinas@arm.com" , "rafael@kernel.org" , "hanjun.guo@linaro.org" , "okaya@codeaurora.org" , "jchandra@broadcom.com" , "linaro-acpi@lists.linaro.org" , "linux-pci@vger.kernel.org" , "dhdang@apm.com" , "Liviu.Dudau@arm.com" , "ddaney@caviumnetworks.com" , "jeremy.linton@arm.com" , "linux-kernel@vger.kernel.org" , "linux-acpi@vger.kernel.org" , robert. List-Id: linux-acpi@vger.kernel.org Hi Gabriele, all, On 05/24/2016 03:23 AM, Gabriele Paoloni wrote: >> Sorry Gab, I guess I was really responding to earlier messages :) >> >> I don't really have much to say here, except that it doesn't seem >> right to have an MCFG that describes a non-standard ECAM mapping. > > The ACPI table that this mechanism relies upon is the one discussed > in: > https://lkml.org/lkml/2016/3/9/91 > > As you can see MCFG describes ECAM mappings, but we have a motherboard > reserved resource outside the MCFG: > Device (RES0) > { > Name (_HID, "HISI0081") // HiSi PCIe RC config base address > Name (_CID, "PNP0C02") // Motherboard reserved resource > Name (_CRS, ResourceTemplate (){ > Memory32Fixed (ReadWrite, 0xb0080000 , 0x10000) > }) > } > > This allows us to retrieve the address we need for accessing > the config space on the RC (that is non-ECAM). > > I was thinking that such mechanism could fit different vendors > and allow them define their own quirks without spoiling the > official and standard MCFG; also from the thread discussion > you seemed quite ok with such solution...? This could have been useful 2-3 years ago (when myself and others first pulled the fire alarm concerning the lack of upstreaming of the ACPI enablement for PCIe - which should have been fully upstream before the first platforms ever even shipped) but at this time we have shipping platforms that don't have tables built in this way. While we can go back around to vendors and try to get them to rebuild firmware, it would be by far preferable to adopt a solution that works with what is already being deployed in the field today. Such as OEM match in MCFG. Jon. -- Computer Architect | Sent from my Fedora powered laptop From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S964923AbcEXOir (ORCPT ); Tue, 24 May 2016 10:38:47 -0400 Received: from mx1.redhat.com ([209.132.183.28]:60019 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S964906AbcEXOio (ORCPT ); Tue, 24 May 2016 10:38:44 -0400 Subject: Re: [PATCH V7 00/11] Support for generic ACPI based PCI host controller To: Gabriele Paoloni , Bjorn Helgaas References: <57331290.7070104@semihalf.com> <3d4aae09-51c4-f007-5100-191a4a85e27a@redhat.com> <95b1d06e-f9c5-39f3-1003-f536b65eef60@redhat.com> <20160523105655.GA22902@red-moon> <20160523233918.GA32555@localhost> Cc: Lorenzo Pieralisi , Ard Biesheuvel , Tomasz Nowicki , "arnd@arndb.de" , "will.deacon@arm.com" , "catalin.marinas@arm.com" , "rafael@kernel.org" , "hanjun.guo@linaro.org" , "okaya@codeaurora.org" , "jchandra@broadcom.com" , "linaro-acpi@lists.linaro.org" , "linux-pci@vger.kernel.org" , "dhdang@apm.com" , "Liviu.Dudau@arm.com" , "ddaney@caviumnetworks.com" , "jeremy.linton@arm.com" , "linux-kernel@vger.kernel.org" , "linux-acpi@vger.kernel.org" , "robert.richter@caviumnetworks.com" , "Suravee.Suthikulpanit@amd.com" , "msalter@redhat.com" , Wangyijing , "mw@semihalf.com" , "andrea.gallo@linaro.org" , "linux-arm-kernel@lists.infradead.org" From: Jon Masters Message-ID: Date: Tue, 24 May 2016 10:38:32 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit X-Greylist: Sender IP whitelisted, not delayed by milter-greylist-4.5.16 (mx1.redhat.com [10.5.110.32]); Tue, 24 May 2016 14:38:43 +0000 (UTC) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Gabriele, all, On 05/24/2016 03:23 AM, Gabriele Paoloni wrote: >> Sorry Gab, I guess I was really responding to earlier messages :) >> >> I don't really have much to say here, except that it doesn't seem >> right to have an MCFG that describes a non-standard ECAM mapping. > > The ACPI table that this mechanism relies upon is the one discussed > in: > https://lkml.org/lkml/2016/3/9/91 > > As you can see MCFG describes ECAM mappings, but we have a motherboard > reserved resource outside the MCFG: > Device (RES0) > { > Name (_HID, "HISI0081") // HiSi PCIe RC config base address > Name (_CID, "PNP0C02") // Motherboard reserved resource > Name (_CRS, ResourceTemplate (){ > Memory32Fixed (ReadWrite, 0xb0080000 , 0x10000) > }) > } > > This allows us to retrieve the address we need for accessing > the config space on the RC (that is non-ECAM). > > I was thinking that such mechanism could fit different vendors > and allow them define their own quirks without spoiling the > official and standard MCFG; also from the thread discussion > you seemed quite ok with such solution...? This could have been useful 2-3 years ago (when myself and others first pulled the fire alarm concerning the lack of upstreaming of the ACPI enablement for PCIe - which should have been fully upstream before the first platforms ever even shipped) but at this time we have shipping platforms that don't have tables built in this way. While we can go back around to vendors and try to get them to rebuild firmware, it would be by far preferable to adopt a solution that works with what is already being deployed in the field today. Such as OEM match in MCFG. Jon. -- Computer Architect | Sent from my Fedora powered laptop From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Return-Path: Subject: Re: [PATCH V7 00/11] Support for generic ACPI based PCI host controller To: Gabriele Paoloni , Bjorn Helgaas References: <57331290.7070104@semihalf.com> <3d4aae09-51c4-f007-5100-191a4a85e27a@redhat.com> <95b1d06e-f9c5-39f3-1003-f536b65eef60@redhat.com> <20160523105655.GA22902@red-moon> <20160523233918.GA32555@localhost> Cc: Lorenzo Pieralisi , Ard Biesheuvel , Tomasz Nowicki , "arnd@arndb.de" , "will.deacon@arm.com" , "catalin.marinas@arm.com" , "rafael@kernel.org" , "hanjun.guo@linaro.org" , "okaya@codeaurora.org" , "jchandra@broadcom.com" , "linaro-acpi@lists.linaro.org" , "linux-pci@vger.kernel.org" , "dhdang@apm.com" , "Liviu.Dudau@arm.com" , "ddaney@caviumnetworks.com" , "jeremy.linton@arm.com" , "linux-kernel@vger.kernel.org" , "linux-acpi@vger.kernel.org" , "robert.richter@caviumnetworks.com" , "Suravee.Suthikulpanit@amd.com" , "msalter@redhat.com" , Wangyijing , "mw@semihalf.com" , "andrea.gallo@linaro.org" , "linux-arm-kernel@lists.infradead.org" From: Jon Masters Message-ID: Date: Tue, 24 May 2016 10:38:32 -0400 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=windows-1252 List-ID: Hi Gabriele, all, On 05/24/2016 03:23 AM, Gabriele Paoloni wrote: >> Sorry Gab, I guess I was really responding to earlier messages :) >> >> I don't really have much to say here, except that it doesn't seem >> right to have an MCFG that describes a non-standard ECAM mapping. > > The ACPI table that this mechanism relies upon is the one discussed > in: > https://lkml.org/lkml/2016/3/9/91 > > As you can see MCFG describes ECAM mappings, but we have a motherboard > reserved resource outside the MCFG: > Device (RES0) > { > Name (_HID, "HISI0081") // HiSi PCIe RC config base address > Name (_CID, "PNP0C02") // Motherboard reserved resource > Name (_CRS, ResourceTemplate (){ > Memory32Fixed (ReadWrite, 0xb0080000 , 0x10000) > }) > } > > This allows us to retrieve the address we need for accessing > the config space on the RC (that is non-ECAM). > > I was thinking that such mechanism could fit different vendors > and allow them define their own quirks without spoiling the > official and standard MCFG; also from the thread discussion > you seemed quite ok with such solution...? This could have been useful 2-3 years ago (when myself and others first pulled the fire alarm concerning the lack of upstreaming of the ACPI enablement for PCIe - which should have been fully upstream before the first platforms ever even shipped) but at this time we have shipping platforms that don't have tables built in this way. While we can go back around to vendors and try to get them to rebuild firmware, it would be by far preferable to adopt a solution that works with what is already being deployed in the field today. Such as OEM match in MCFG. Jon. -- Computer Architect | Sent from my Fedora powered laptop From mboxrd@z Thu Jan 1 00:00:00 1970 From: jcm@redhat.com (Jon Masters) Date: Tue, 24 May 2016 10:38:32 -0400 Subject: [PATCH V7 00/11] Support for generic ACPI based PCI host controller In-Reply-To: References: <57331290.7070104@semihalf.com> <3d4aae09-51c4-f007-5100-191a4a85e27a@redhat.com> <95b1d06e-f9c5-39f3-1003-f536b65eef60@redhat.com> <20160523105655.GA22902@red-moon> <20160523233918.GA32555@localhost> Message-ID: To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org Hi Gabriele, all, On 05/24/2016 03:23 AM, Gabriele Paoloni wrote: >> Sorry Gab, I guess I was really responding to earlier messages :) >> >> I don't really have much to say here, except that it doesn't seem >> right to have an MCFG that describes a non-standard ECAM mapping. > > The ACPI table that this mechanism relies upon is the one discussed > in: > https://lkml.org/lkml/2016/3/9/91 > > As you can see MCFG describes ECAM mappings, but we have a motherboard > reserved resource outside the MCFG: > Device (RES0) > { > Name (_HID, "HISI0081") // HiSi PCIe RC config base address > Name (_CID, "PNP0C02") // Motherboard reserved resource > Name (_CRS, ResourceTemplate (){ > Memory32Fixed (ReadWrite, 0xb0080000 , 0x10000) > }) > } > > This allows us to retrieve the address we need for accessing > the config space on the RC (that is non-ECAM). > > I was thinking that such mechanism could fit different vendors > and allow them define their own quirks without spoiling the > official and standard MCFG; also from the thread discussion > you seemed quite ok with such solution...? This could have been useful 2-3 years ago (when myself and others first pulled the fire alarm concerning the lack of upstreaming of the ACPI enablement for PCIe - which should have been fully upstream before the first platforms ever even shipped) but at this time we have shipping platforms that don't have tables built in this way. While we can go back around to vendors and try to get them to rebuild firmware, it would be by far preferable to adopt a solution that works with what is already being deployed in the field today. Such as OEM match in MCFG. Jon. -- Computer Architect | Sent from my Fedora powered laptop