From: Zhou Wang <wangzhou1@hisilicon.com>
To: Gabriele Paoloni <gabriele.paoloni@huawei.com>
Cc: James Morse <james.morse@arm.com>,
Bjorn Helgaas <bhelgaas@google.com>,
Jingoo Han <jg1.han@samsung.com>,
Pratyush Anand <pratyush.anand@gmail.com>,
Arnd Bergmann <arnd@arndb.de>, Liviu Dudau <Liviu.Dudau@arm.com>,
"kishon@ti.com" <kishon@ti.com>,
"xobs@kosagi.com" <xobs@kosagi.com>,
"m-karicheri2@ti.com" <m-karicheri2@ti.com>,
"Minghuan.Lian@freescale.com" <Minghuan.Lian@freescale.com>,
"linux-pci@vger.kernel.org" <linux-pci@vger.kernel.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
Yuanzhichang <yuanzhichang@hisilicon.com>,
Zhudacai <zhudacai@hisilicon.com>,
zhangjukuo <zhangjukuo@huawei.com>,
qiuzhenfa <qiuzhenfa@hisilicon.com>,
"Liguozhu (Kenneth)" <liguozhu@hisilicon.com>
Subject: Re: [PATCH v3 2/5] PCI: designware: Add ARM64 support
Date: Fri, 10 Jul 2015 17:36:49 +0800 [thread overview]
Message-ID: <559F9231.4080008@hisilicon.com> (raw)
In-Reply-To: <EE11001F9E5DDD47B7634E2F8A612F2E01D568F4@lhreml503-mbs>
On 2015/7/10 16:53, Gabriele Paoloni wrote:
> I have just sent this patch "[PATCH] Store PCIe controllers address in struct of_pci_range".
>
> It would be needed by "pcie_designware.c" to retrieve the PCI controller addresses from "win->__res.start".
>
> So we do not need to retrieve info from the DT parser anymore and we can use the new PCI DT parsing API
>
> This problem was already discussed in this thread:
> http://lists.infradead.org/pipermail/linux-arm-kernel/2015-January/317743.html
>
>
Hi Gab,
Thanks for your patch.
That means I can use something like: pp->io_mod_base = win->__res.start
to get io_mod_base, mem_mod_base and cfg0_mod_base.
will send my v4 series based on your patch.
Best regards,
Zhou
>> -----Original Message-----
>> From: Wangzhou (B)
>> Sent: Tuesday, July 07, 2015 4:44 AM
>> To: James Morse
>> Cc: Gabriele Paoloni; Bjorn Helgaas; Jingoo Han; Pratyush Anand; Arnd
>> Bergmann; Liviu Dudau; kishon@ti.com; xobs@kosagi.com; m-
>> karicheri2@ti.com; Minghuan.Lian@freescale.com; linux-
>> pci@vger.kernel.org; linux-arm-kernel@lists.infradead.org;
>> devicetree@vger.kernel.org; Yuanzhichang; Zhudacai; zhangjukuo;
>> qiuzhenfa; Liguozhu (Kenneth)
>> Subject: Re: [PATCH v3 2/5] PCI: designware: Add ARM64 support
>>
>> On 2015/7/1 22:26, James Morse wrote:
>>> Zhou Wang wrote:
>>>> I tested this patch on D02 board of Hisilicon. It works well.
>>>> I have compiled the driver with multi_v7_defconfig. However, I don't
>>>> have
>>>> ARM32 PCIe related board to do test. It will be appreciated if
>> someone
>>>> could
>>>> help to test it.
>>>>
>>>> Signed-off-by: Zhou Wang <wangzhou1@hisilicon.com>
>>>> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
>>>> Signed-off-by: Gabriele Paoloni <gabriele.paoloni@huawei.com>
>>>> Tested-by: Fabrice Gasnier <fabrice.gasnier@st.com>
>>>> Tested-by: James Morse <james.morse@arm.com>
>>>
>>> Tests on this new series, using the same i.MX 6Quad board, are not
>> working.
>>>
>>> The network card is no longer detected, and I get a lockup when
>> removing
>>> the root bridge and rescanning.
>>>
>>> Partial dmesg output below. Significantly, the lines:
>>>> [ 0.152128] PCI host bridge /soc/pcie@0x01000000 ranges:
>>>> [ 0.152142] No bus range found for /soc/pcie@0x01000000, using
>> [bus
>>> 00-ff]
>>> are new.
>>>
>>> Both series are applied to v4.1, use the same .config file, and the
>> same dtb.
>>> I will investigate further.
>>>
>>> (Re-testing v2 works, so this isn't an interim hardware failure)
>>>
>>> Thanks,
>>>
>>> James
>>>
>>
>> Hi James,
>>
>> There are something wrong with v3 patch.
>>
>> pp->io_mod_base = of_read_number(parser_range_end -
>> of_n_addr_cells(np) - 5 + na, ns);
>> pp->mem_mod_base = of_read_number(parser_range_end -
>> of_n_addr_cells(np) - 5 + na, ns);
>> pp->cfg0_mod_base = of_read_number(parser_range_end -
>> of_n_addr_cells(np) - 5 + na, ns);
>> are wrong.
>>
>> The ranges item in your dts is:
>> ranges = <0x800 0x0 0x1f00000 0x1f00000 0x0 0x80000
>> 0x81000000 0x0 0x0 0x1f80000 0x0 0x10000
>> 0x82000000 0x0 0x1000000 0x1000000 0x0 0xf00000>;
>> parser_range_end points to the end of ranges(0xf00000) directly. In v2
>> patch,
>> of_read_number is of_read_number(parser.range - parser.np + na, ns);
>> parser.range
>> points to the end of each line in ranges item.
>>
>> When I did test on D02 board with intel82599 card, I set ranges item as:
>> ranges = <0x03000000 0 0xb0000000 0x220 0x00000000 0 0xf000000>;
>> It is just one line. In this case, parser_range_end is same with
>> parser.range.
>> That is why it happened to work well on D02 board.
>>
>> very sorry to bother you about this problem.
>>
>> Thanks,
>> Zhou
>>
>>>
>>>
>>> root@localhost:~# dmesg | grep -i pci
>>> [ 0.126184] PCI: CLS 0 bytes, default 64
>>> [ 0.152128] PCI host bridge /soc/pcie@0x01000000 ranges:
>>> [ 0.152142] No bus range found for /soc/pcie@0x01000000, using
>> [bus 00-ff]
>>> [ 0.154183] imx6q-pcie 1ffc000.pcie: PCI host bridge to bus
>> 0000:00
>>> [ 0.154201] pci_bus 0000:00: root bus resource [bus 00-ff]
>>> [ 0.154215] pci_bus 0000:00: root bus resource [???
>>> 0x01f00000-0x01f7ffff flags 0x0]
>>> [ 0.154228] pci_bus 0000:00: root bus resource [io 0x0000-0xffff]
>>> [ 0.154270] pci_bus 0000:00: root bus resource [mem 0x01000000-
>> 0x01efffff]
>>> [ 0.154306] pci 0000:00:00.0: [16c3:abcd] type 01 class 0x060400
>>> [ 0.154333] pci 0000:00:00.0: reg 0x10: [mem 0x00000000-0x000fffff]
>>> [ 0.154352] pci 0000:00:00.0: reg 0x38: [mem 0x00000000-0x0000ffff
>> pref]
>>> [ 0.154377] pci 0000:00:00.0: IOMMU is currently not supported for
>> PCI
>>> [ 0.154429] pci 0000:00:00.0: supports D1
>>> [ 0.154440] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
>> D3cold
>>> [ 0.154683] PCI: bus0: Fast back to back transfers disabled
>>> [ 0.154806] PCI: bus1: Fast back to back transfers enabled
>>> [ 0.154884] pci 0000:00:00.0: BAR 0: assigned [mem 0x01000000-
>> 0x010fffff]
>>> [ 0.154903] pci 0000:00:00.0: BAR 6: assigned [mem 0x01100000-
>> 0x0110ffff
>>> pref]
>>> [ 0.154917] pci 0000:00:00.0: PCI bridge to [bus 01]
>>> [ 0.155145] pcieport 0000:00:00.0: Signaling PME through PCIe PME
>> interrupt
>>> [ 0.155161] pcie_pme 0000:00:00.0:pcie01: service driver pcie_pme
>> loaded
>>> [ 0.155279] aer 0000:00:00.0:pcie02: service driver aer loaded
>>> [ 1.188840] ehci-pci: EHCI PCI platform driver
>>> [ 1.232518] ohci-pci: OHCI PCI platform driver
>>>
>>> --
>>> To unsubscribe from this list: send the line "unsubscribe linux-pci"
>> in
>>> the body of a message to majordomo@vger.kernel.org
>>> More majordomo info at http://vger.kernel.org/majordomo-info.html
>>>
>>> .
>>>
>>
>
next prev parent reply other threads:[~2015-07-10 9:36 UTC|newest]
Thread overview: 22+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-07-01 9:43 [PATCH v3 0/5] PCI: hisi: Add PCIe host support for Hisilicon Soc Hip05 Zhou Wang
2015-07-01 9:43 ` [PATCH v3 1/5] ARM/PCI: remove align_resource callback in pcibios_align_resource Zhou Wang
2015-07-02 17:50 ` Liviu Dudau
2015-07-07 5:44 ` Zhou Wang
[not found] ` <559B6721.4080305-C8/M+/jPZTeaMJb+Lgu22Q@public.gmane.org>
2015-07-07 9:22 ` Liviu Dudau
2015-07-17 10:02 ` Gabriele Paoloni
2015-07-21 3:26 ` Zhou Wang
2015-07-01 9:43 ` [PATCH v3 2/5] PCI: designware: Add ARM64 support Zhou Wang
2015-07-01 13:29 ` Gabriele Paoloni
2015-07-01 14:26 ` James Morse
[not found] ` <5593F899.6050306-5wv7dgnIgG8@public.gmane.org>
2015-07-01 16:47 ` Gabriele Paoloni
2015-07-01 17:32 ` James Morse
2015-07-02 1:38 ` Zhou Wang
2015-07-02 7:24 ` Gabriele Paoloni
2015-07-02 17:40 ` James Morse
2015-07-07 3:44 ` Zhou Wang
2015-07-10 8:53 ` Gabriele Paoloni
2015-07-10 9:36 ` Zhou Wang [this message]
2015-07-02 1:16 ` Zhou Wang
2015-07-01 9:43 ` [PATCH v3 3/5] PCI: hisi: Add PCIe host support for Hisilicon Soc Hip05 Zhou Wang
[not found] ` <1435743817-19083-1-git-send-email-wangzhou1-C8/M+/jPZTeaMJb+Lgu22Q@public.gmane.org>
2015-07-01 9:43 ` [PATCH v3 4/5] Documentation: DT: Add Hisilicon PCIe host binding Zhou Wang
2015-07-01 9:43 ` [PATCH v3 5/5] MAINTAINERS: Add pcie-hisi maintainer Zhou Wang
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=559F9231.4080008@hisilicon.com \
--to=wangzhou1@hisilicon.com \
--cc=Liviu.Dudau@arm.com \
--cc=Minghuan.Lian@freescale.com \
--cc=arnd@arndb.de \
--cc=bhelgaas@google.com \
--cc=devicetree@vger.kernel.org \
--cc=gabriele.paoloni@huawei.com \
--cc=james.morse@arm.com \
--cc=jg1.han@samsung.com \
--cc=kishon@ti.com \
--cc=liguozhu@hisilicon.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-pci@vger.kernel.org \
--cc=m-karicheri2@ti.com \
--cc=pratyush.anand@gmail.com \
--cc=qiuzhenfa@hisilicon.com \
--cc=xobs@kosagi.com \
--cc=yuanzhichang@hisilicon.com \
--cc=zhangjukuo@huawei.com \
--cc=zhudacai@hisilicon.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).