From: Murali Karicheri <m-karicheri2@ti.com>
To: Jingoo Han <jg1.han@samsung.com>
Cc: "'Rob Herring'" <robherring2@gmail.com>,
<linux-arm-kernel@lists.infradead.org>,
<linux-pci@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
"'Russell King'" <linux@arm.linux.org.uk>,
"'Grant Likely'" <grant.likely@linaro.org>,
"'Rob Herring'" <robh+dt@kernel.org>,
"'Mohit Kumar'" <mohit.kumar@st.com>,
"'Bjorn Helgaas'" <bhelgaas@google.com>,
"'Pratyush Anand'" <pratyush.anand@st.com>,
"'Richard Zhu'" <r65037@freescale.com>,
"'Kishon Vijay Abraham I'" <kishon@ti.com>,
"'Marek Vasut'" <marex@denx.de>,
"'Arnd Bergmann'" <arnd@arndb.de>,
"'Pawel Moll'" <pawel.moll@arm.com>,
"'Mark Rutland'" <mark.rutland@arm.com>,
"'Ian Campbell'" <ijc+devicetree@hellion.org.uk>,
"'Kumar Gala'" <galak@codeaurora.org>,
"'Randy Dunlap'" <rdunlap@infradead.org>
Subject: Re: [PATCH v6 4/5] PCI: add PCI controller for keystone PCIe h/w
Date: Mon, 21 Jul 2014 12:39:39 -0400 [thread overview]
Message-ID: <53CD424B.1090806@ti.com> (raw)
In-Reply-To: <006001cfa485$4f4fcff0$edef6fd0$%han@samsung.com>
On 07/20/2014 09:44 PM, Jingoo Han wrote:
> On Saturday, July 19, 2014 5:29 AM, Murali Karicheri wrote:
>> On 07/18/2014 03:31 PM, Rob Herring wrote:
>>> On Fri, Jul 18, 2014 at 10:14 AM, Murali Karicheri<m-karicheri2@ti.com> wrote:
>> --- Cut ---
>>>> +
>>>> +Optional properties:-
>>>> + phys: phandle to Generic Keystone SerDes phy for PCI
>>>> + phy-names: name of the Generic Keystine SerDes phy for PCI
>>>> + - If boot loader already does PCI link establishment, then phys and
>>>> + phy-names shouldn't be present.
>>>> + ti,enable-linktrain - Enable Link training.
>>>> + - If boot loader already does PCI link establishment, then this
>>>> + shouldn't be present.
>>>
>>> Can't you read from the h/w if the link is trained?
>
> I agree with Rob Herring's suggestion.
>
>>
>> Yes.
>>
>> There are customers who use this driver with PCI Link setup done in the
>> boot loader. This property tells the driver to bypass Link setup
>> procedure in that case. Is this undesirable and if so. how other
>> platforms handle it? Check first if link is trained or start the link
>> setup procedure? Let me know. If this is fine, please provide your Ack.
>
> Please, check the following code of Exynos PCIe diver.
>
> ./drivers/pci/host/pci-exynos.c
>
> static int exynos_pcie_establish_link(struct pcie_port *pp)
> {
> struct exynos_pcie *exynos_pcie = to_exynos_pcie(pp);
> void __iomem *elbi_base = exynos_pcie->elbi_base;
> void __iomem *pmu_base = exynos_pcie->pmu_base;
>
> if (dw_pcie_link_up(pp)) {
> dev_err(pp->dev, "Link already up\n");
> return 0;
> }
> .....
>
> In the case of Exynos PCIe, the Exynos PCIe driver checks the
> h/w bit such as PCIE_ELBI_LTSSM_ENABLE bit of PCIE_ELBI_RDLH_LINKUP
> offset register.
>
> If the link is already set up by the boot loader or other reasons,
> the driver will skip some initialization codes.
>
> The first step is that you find such h/w bit for checking link up.
> If so, please add the code for skipping, when the link is already
> set up.
>
Rob, Jingoo,
We have similar bit to check for Link status and I have removed the DT
property and skip Link retrain if PCIe Link is already Up. I will be
resending the series with Patch 4/5 updated.
Thanks.
Murali
> Best regards,
> Jingoo Han
>
next prev parent reply other threads:[~2014-07-21 16:41 UTC|newest]
Thread overview: 17+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-07-18 15:14 [PATCH v6 0/5] Add Keystone PCIe controller driver Murali Karicheri
2014-07-18 15:14 ` [PATCH v6 1/5] PCI: designware: add rd[wr]_other_conf API Murali Karicheri
2014-07-18 15:14 ` [PATCH v6 2/5] PCI: designware: refactor MSI code to work with v3.65 dw hardware Murali Karicheri
2014-07-18 15:14 ` [PATCH v6 3/5] PCI: designware: enhance dw_pcie_host_init() to support v3.65 DW hardware Murali Karicheri
2014-07-18 15:14 ` [PATCH v6 4/5] PCI: add PCI controller for keystone PCIe h/w Murali Karicheri
2014-07-18 19:31 ` Rob Herring
2014-07-18 19:50 ` Arnd Bergmann
2014-07-18 20:15 ` Murali Karicheri
2014-07-22 15:37 ` Rob Herring
2014-07-22 19:00 ` Murali Karicheri
2014-07-18 20:29 ` Murali Karicheri
2014-07-21 1:44 ` Jingoo Han
2014-07-21 16:39 ` Murali Karicheri [this message]
2014-07-22 15:41 ` Rob Herring
2014-07-22 18:58 ` Murali Karicheri
2014-07-18 15:14 ` [PATCH v6 5/5] PCI: keystone: Update maintainer information Murali Karicheri
2014-07-18 15:19 ` [PATCH v6 0/5] Add Keystone PCIe controller driver Murali Karicheri
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=53CD424B.1090806@ti.com \
--to=m-karicheri2@ti.com \
--cc=arnd@arndb.de \
--cc=bhelgaas@google.com \
--cc=galak@codeaurora.org \
--cc=grant.likely@linaro.org \
--cc=ijc+devicetree@hellion.org.uk \
--cc=jg1.han@samsung.com \
--cc=kishon@ti.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux@arm.linux.org.uk \
--cc=marex@denx.de \
--cc=mark.rutland@arm.com \
--cc=mohit.kumar@st.com \
--cc=pawel.moll@arm.com \
--cc=pratyush.anand@st.com \
--cc=r65037@freescale.com \
--cc=rdunlap@infradead.org \
--cc=robh+dt@kernel.org \
--cc=robherring2@gmail.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).