Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1533793
| Path | csiph.com!aioe.org!bofh.it!news.nic.it!robomod |
|---|---|
| From | Sinan Kaya <okaya@codeaurora.org> |
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version |
| Date | Thu, 01 Dec 2016 05:30:02 +0100 |
| Message-ID | <sJraq-7jF-7@gated-at.bofh.it> (permalink) |
| References | <sDI4h-30U-13@gated-at.bofh.it> <sDI4h-30U-25@gated-at.bofh.it> <sJnq9-4Ta-9@gated-at.bofh.it> <sJo2R-5lf-11@gated-at.bofh.it> <sJqxH-6Oh-9@gated-at.bofh.it> |
| X-Original-To | Bjorn Helgaas <helgaas@kernel.org> |
| Dkim-Signature | v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1480566394; bh=CMTzyCGPwWi05NDlERlDF5zl/NnfzcMYqzKz6W/e/mQ=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=RPvhFQoGKn+DgpVJJrQcWObMgZJAFFzRebOyEgEaYK8FG78xIZCsw1h6eDw71sFQq EvpiecX9v/S2RhbShtBn/eT7EhpXciTFqhZzSb4YsREX4sC4H6hs3jQ3OCowC32e1P 1iOdDF86dsXiCJZN1Ll3kdj8Fi/KzPKOFnI7UFQo= |
| Dkim-Signature | v=1; a=rsa-sha256; c=relaxed/simple; d=codeaurora.org; s=default; t=1480566393; bh=CMTzyCGPwWi05NDlERlDF5zl/NnfzcMYqzKz6W/e/mQ=; h=Subject:To:References:Cc:From:Date:In-Reply-To:From; b=DT9i40zsTh6MhTRhH4xJAMC+C9kO5+LXjfRi3PGtC62kpFFwJlD14ovcK/MW64b3i IK+u5rjlahV/4ap5oe7qkXz0pkdA56Z8HBqYv9o0zQU+tywP3dJP4s2CYROxYV2nWi 3GVcGZ6v189vmeT7bf1twlkHhxxPQijKUug4w5bA= |
| Dmarc-Filter | OpenDMARC Filter v1.3.1 smtp.codeaurora.org D4E306147E |
| Authentication-Results | pdx-caf-mail.web.codeaurora.org; dmarc=none header.from=codeaurora.org |
| Authentication-Results | pdx-caf-mail.web.codeaurora.org; spf=pass smtp.mailfrom=okaya@codeaurora.org |
| User-Agent | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.5.0 |
| MIME-Version | 1.0 |
| Content-Type | text/plain; charset=windows-1252 |
| Content-Transfer-Encoding | 7bit |
| Sender | robomod@news.nic.it |
| List-ID | <linux-kernel.vger.kernel.org> |
| X-Mailing-List | linux-kernel@vger.kernel.org |
| Approved | robomod@news.nic.it |
| Lines | 92 |
| Organization | linux.* mail to news gateway |
| X-Original-Cc | Tomasz Nowicki <tn@semihalf.com>, will.deacon@arm.com, catalin.marinas@arm.com, rafael@kernel.org, Lorenzo.Pieralisi@arm.com, arnd@arndb.de, jchandra@broadcom.com, ard.biesheuvel@linaro.org, robert.richter@caviumnetworks.com, mw@semihalf.com, ddaney@caviumnetworks.com, linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linaro-acpi@lists.linaro.org, andrea.gallo@linaro.org, jeremy.linton@arm.com, liudongdong3@huawei.com, gabriele.paoloni@huawei.com, linux-acpi@vger.kernel.org, linux-kernel@vger.kernel.org, jcm@redhat.com, msalter@redhat.com, Christopher Covington <cov@codeaurora.org> |
| X-Original-Date | Wed, 30 Nov 2016 23:26:29 -0500 |
| X-Original-Message-ID | <84119c18-b130-0b32-029b-bd9169a25960@codeaurora.org> |
| X-Original-References | <1479201298-25494-1-git-send-email-tn@semihalf.com> <1479201298-25494-2-git-send-email-tn@semihalf.com> <20161201002812.GB9409@bhelgaas-glaptop.roam.corp.google.com> <19e244f2-22f9-be94-0929-a9d96844b801@codeaurora.org> <20161201034817.GA19681@bhelgaas-glaptop.roam.corp.google.com> |
| X-Original-Sender | linux-kernel-owner@vger.kernel.org |
| Xref | csiph.com linux.kernel:1533793 |
Show key headers only | View raw
On 11/30/2016 10:48 PM, Bjorn Helgaas wrote:
> On Wed, Nov 30, 2016 at 08:00:12PM -0500, Sinan Kaya wrote:
>> Hi Bjorn,
>>
>> On 11/30/2016 7:28 PM, Bjorn Helgaas wrote:
>>> Actually, that raises a question for qualcomm and hisi: in the DT
>>> model, we use non-ECAM config accessors in the driver, but in the ACPI
>>> model, we use ECAM accessors. It seems like the accessors should be
>>> the same regardless of whether we discover the bridge via DT or ACPI.
>>
>> For servers, we are only setting up the PCIe controller in ECAM mode in FW.
>> If somebody wants to use DT with QCOM Server (unsupported but possible),
>> they need to use pci-host-ecam-generic driver.
>>
>> Here is an example:
>>
>> pcie3 {
>> compatible = "pci-host-ecam-generic";
>> device_type = "pci";
>> #address-cells = <3>;
>> #size-cells = <2>;
>> bus-range = <0x0 0xff>;
>> linux,pci-domain = <3>;
>>
>> // CPU_PHYSICAL(2) SIZE(2)
>> reg = <0xC00 0x00000000 0x0 0x10000000>;
>> ...
>> }
>>
>> I think you are referring to this driver here.
>>
>> obj-$(CONFIG_PCIE_QCOM) += pcie-qcom.o
>>
>> This driver is only in use by the mobile products.
>
> https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?h=pci/ecam&id=2bb62a60711e
> says it's for the Qualcomm QDF2432. Is pcie-qcom for that same
> device, or is it for something different?
They are different controllers.
Qualcomm QDF2432 only supports ECAM mode only and is designed for
ACPI based server products by the Data Center division.
If somebody really needs device tree for QDF2432 server chip even though
we don't officially support it, generic host driver with ECAM mode
is the way to go.
Even there, we need a small patch to pci_generic_ecam_ops as follows due
to quirky HW. Generic host driver won't work out of the box.
struct pci_ecam_ops pci_generic_ecam_ops = {
.bus_shift = 20,
.pci_ops = {
.map_bus = pci_ecam_map_bus,
- .read = pci_generic_config_read,
+ .read = pci_generic_config_read32,
- .write = pci_generic_config_write,
+ .write = pci_generic_config_write32,
}
};
This is essentially what pci_32b_ops is. Since device-tree is not officially
supported, we didn't bother making changes to the generic host bridge driver.
https://git.kernel.org/cgit/linux/kernel/git/helgaas/pci.git/commit/?h=pci/ecam&id=2bb62a60711e
is the only thing needed for QDF2432.
>
> I assume it's probably different because pci-host-ecam-generic uses
> the standard ECAM accessors (pci_generic_ecam_ops), while the quirk
> requires non-standard ones (pci_32b_ops).
>
> If these are two different controllers, that's fine. If it's the same
> controller in both cases, the controller should be configured the same
> way (either by FW or by the DT driver) and we should use the same
> accessors.
>
> If you have to use different accessors for the same controller, you
> would need some explanation for the difference because it's a
> maintenance headache to operate a device in different modes depending
> on the environment or which driver you're using.
>
> Bjorn
>
--
Sinan Kaya
Qualcomm Datacenter Technologies, Inc. as an affiliate of Qualcomm Technologies, Inc.
Qualcomm Technologies, Inc. is a member of the Code Aurora Forum, a Linux Foundation Collaborative Project.
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Bjorn Helgaas <helgaas@kernel.org> - 2016-12-01 01:30 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Sinan Kaya <okaya@codeaurora.org> - 2016-12-01 02:10 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Bjorn Helgaas <helgaas@kernel.org> - 2016-12-01 04:50 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Sinan Kaya <okaya@codeaurora.org> - 2016-12-01 05:30 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Tomasz Nowicki <tn@semihalf.com> - 2016-12-01 10:00 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Lorenzo Pieralisi <lorenzo.pieralisi@arm.com> - 2016-12-01 16:00 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Bjorn Helgaas <helgaas@kernel.org> - 2016-12-01 19:00 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Bjorn Helgaas <helgaas@kernel.org> - 2016-12-01 18:00 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Bjorn Helgaas <helgaas@kernel.org> - 2016-12-01 18:20 +0100
Re: [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Jon Masters <jcm@redhat.com> - 2016-12-02 07:00 +0100
Re: [Linaro-acpi] [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Jon Masters <jcm@redhat.com> - 2016-12-02 07:50 +0100
Re: [Linaro-acpi] [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Duc Dang <dhdang@apm.com> - 2016-12-02 07:50 +0100
Re: [Linaro-acpi] [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Tomasz Nowicki <tn@semihalf.com> - 2016-12-02 11:10 +0100
Re: [Linaro-acpi] [PATCH V1 1/2] PCI: thunder: Enable ACPI PCI controller for ThunderX pass2.x silicon version Bjorn Helgaas <helgaas@kernel.org> - 2016-12-02 17:30 +0100
csiph-web