From: Jingoo Han <jg1.han@samsung.com>
Cc: 'Kukjin Kim' <kgene.kim@samsung.com>,
'Bjorn Helgaas' <bhelgaas@google.com>,
linux-samsung-soc@vger.kernel.org, linux-pci@vger.kernel.org,
devicetree-discuss@lists.ozlabs.org,
linux-arm-kernel@lists.infradead.org,
linux-kernel@vger.kernel.org,
'Grant Likely' <grant.likely@secretlab.ca>,
'Andrew Murray' <andrew.murray@arm.com>,
'Thomas Petazzoni' <thomas.petazzoni@free-electrons.com>,
'Thierry Reding' <thierry.reding@avionic-design.de>,
'Jason Gunthorpe' <jgunthorpe@obsidianresearch.com>,
'Surendranath Gurivireddy Balla' <suren.reddy@samsung.com>,
'Siva Reddy Kallam' <siva.kallam@samsung.com>,
'Thomas Abraham' <thomas.abraham@linaro.org>,
'Jingoo Han' <jg1.han@samsung.com>
Subject: Re: [PATCH 6/6] ARM: dts: Add pcie controller node for Samsung EXYNOS5440 SoC
Date: Mon, 08 Apr 2013 18:08:53 +0900 [thread overview]
Message-ID: <000001ce3438$b136e1e0$13a4a5a0$%han@samsung.com> (raw)
In-Reply-To: <00c501ce277c$30e49dc0$92add940$%han@samsung.com>
On Saturday, March 23, 2013 1:09 PM, Jingoo Han wrote:
>
> Exynos5440 has two PCIe controllers which can be used as root complex
> for PCIe interface.
>
> Signed-off-by: Jingoo Han <jg1.han@samsung.com>
> ---
> arch/arm/boot/dts/exynos5440-ssdk5440.dts | 8 +++++++
> arch/arm/boot/dts/exynos5440.dtsi | 32 +++++++++++++++++++++++++++++
> 2 files changed, 40 insertions(+), 0 deletions(-)
>
> diff --git a/arch/arm/boot/dts/exynos5440-ssdk5440.dts b/arch/arm/boot/dts/exynos5440-ssdk5440.dts
> index a21eb4c..746f9fc 100644
> --- a/arch/arm/boot/dts/exynos5440-ssdk5440.dts
> +++ b/arch/arm/boot/dts/exynos5440-ssdk5440.dts
> @@ -34,4 +34,12 @@
> clock-frequency = <50000000>;
> };
> };
> +
> + pcie0@40000000 {
> + reset-gpio = <5>;
> + };
> +
> + pcie1@60000000 {
> + reset-gpio = <22>;
> + };
> };
> diff --git a/arch/arm/boot/dts/exynos5440.dtsi b/arch/arm/boot/dts/exynos5440.dtsi
> index c374a31..41b2d2c 100644
> --- a/arch/arm/boot/dts/exynos5440.dtsi
> +++ b/arch/arm/boot/dts/exynos5440.dtsi
> @@ -178,4 +178,36 @@
> clocks = <&clock 21>;
> clock-names = "rtc";
> };
> +
> + pcie0@40000000 {
> + compatible = "samsung,exynos5440-pcie";
> + reg = <0x40000000 0x4000
> + 0x290000 0x1000
> + 0x270000 0x1000
> + 0x271000 0x40>;
> + interrupts = <0 20 0>, <0 21 0>, <0 22 0>;
> + #address-cells = <3>;
> + #size-cells = <2>;
> + device_type = "pci";
> + bus-range = <0x0 0xf>;
> + ranges = <0x00000800 0 0x40000000 0x40000000 0 0x00200000 /* configuration space */
> + 0x81000000 0 0 0x40200000 0 0x00004000 /* downstream I/O */
> + 0x82000000 0 0 0x40204000 0 0x10000000>; /* non-prefetchable memory */
> + };
> +
> + pcie1@60000000 {
> + compatible = "samsung,exynos5440-pcie";
> + reg = <0x60000000 0x4000
> + 0x2a0000 0x1000
> + 0x272000 0x1000
> + 0x271040 0x40>;
> + interrupts = <0 23 0>, <0 24 0>, <0 25 0>;
> + #address-cells = <3>;
> + #size-cells = <2>;
> + device_type = "pci";
> + bus-range = <0x0 0xf>;
> + ranges = <0x00000800 0 0x60000000 0x60000000 0 0x00200000 /* configuration space */
> + 0x81000000 0 0 0x60200000 0 0x00004000 /* downstream I/O */
> + 0x82000000 0 0 0x60204000 0 0x10000000>; /* non-prefetchable memory */
> + };
Hi Jason,
I have a question.
Now, I am reviewing the Tegra PCIe, Marvell PCIe patchset.
However, in the case of Exynos PCIe,
'downstream I/O' and 'non-prefetchable memory' are different between PCIe0 and PCIe1.
These regions are not shared.
PCIe0:
ranges = <0x00000800 0 0x40000000 0x40000000 0 0x00200000 /* configuration space */
0x81000000 0 0 0x40200000 0 0x00004000 /* downstream I/O */
0x82000000 0 0 0x40204000 0 0x10000000>; /* non-prefetchable memory */
PCIe1:
ranges = <0x00000800 0 0x40000000 0x40000000 0 0x00200000 /* configuration space */
0x81000000 0 0 0x40200000 0 0x00004000 /* downstream I/O */
0x82000000 0 0 0x40204000 0 0x10000000>; /* non-prefetchable memory */
PCIe0 uses 0x40000000~0x5fffffff, PCI1 uses 0x60000000~0x7fffffff.
How can I handle this? :)
The following is right?
+ pcie-controller {
.....
+ ranges = <0x82000000 0 0x40000000 0x40000000 0 0x00200000 /* port 0 registers */
+ 0x82000000 0 0x60000000 0x60000000 0 0x00200000 /* port 1 registers */
+ 0x81000000 0 0 0x40200000 0 0x00004000 /* port 0 downstream I/O */
+ 0x81000000 0 0 0x60200000 0 0x00004000 /* port 1 downstream I/O */
+ 0x82000000 0 0x40204000 0x40204000 0 0x10000000>; /* port 0 non-prefetchable memory */
+ 0x82000000 0 0x40204000 0x60204000 0 0x10000000>; /* port 1 non-prefetchable memory */
+
+ pci@1,0 {
+ device_type = "pci";
+ assigned-addresses = <0x82000800 0 0x40000000 0 0x00200000
+ 0x81000800 0 0x40200000 0 0x00004000
+ 0x81000800 0 0x40204000 0 0x10000000>;
.....
+ pci@2,0 {
+ device_type = "pci";
+ assigned-addresses = <0x82000800 0 0x60000000 0 0x00200000
+ 0x81000800 0 0x60200000 0 0x00004000
+ 0x81000800 0 0x60204000 0 0x10000000>;
Best regards,
Jingoo Han
> };
> --
> 1.7.2.5
next prev parent reply other threads:[~2013-04-08 9:08 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-03-23 4:04 [PATCH 1/6] of/pci: Provide support for parsing PCI DT ranges property Jingoo Han
2013-03-23 4:06 ` [PATCH 3/6] pci: infrastructure to add drivers in drivers/pci/host Jingoo Han
[not found] ` <00c001ce277b$92b26ab0$b8174010$%han-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2013-03-23 4:05 ` [PATCH 2/6] of/pci: Add of_pci_parse_bus_range() function Jingoo Han
2013-03-23 4:07 ` [PATCH 4/6] pci: Add PCIe driver for Samsung Exynos Jingoo Han
2013-03-26 21:33 ` Rob Herring
2013-03-27 1:29 ` Jingoo Han
2013-03-23 4:08 ` [PATCH 5/6] ARM: EXYNOS: Enable PCIe support for Exynos5440 Jingoo Han
2013-03-23 4:09 ` [PATCH 6/6] ARM: dts: Add pcie controller node for Samsung EXYNOS5440 SoC Jingoo Han
2013-03-25 17:04 ` Jason Gunthorpe
[not found] ` <20130325170448.GB16690-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2013-03-27 8:35 ` Jingoo Han
2013-03-27 16:13 ` Jason Gunthorpe
2013-04-08 9:08 ` Jingoo Han [this message]
2013-04-08 16:56 ` Jason Gunthorpe
2013-06-07 9:19 ` Jingoo Han
2013-06-07 11:59 ` Arnd Bergmann
2013-06-07 16:20 ` Jason Gunthorpe
2013-06-07 17:43 ` Arnd Bergmann
2013-06-10 8:38 ` Jingoo Han
2013-06-10 15:22 ` Arnd Bergmann
2013-06-11 6:00 ` Jingoo Han
2013-06-12 15:10 ` Arnd Bergmann
2013-03-23 10:41 ` [PATCH 1/6] of/pci: Provide support for parsing PCI DT ranges property Russell King - ARM Linux
2013-03-23 13:37 ` Thomas Petazzoni
2013-03-25 10:21 ` Andrew Murray
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='000001ce3438$b136e1e0$13a4a5a0$%han@samsung.com' \
--to=jg1.han@samsung.com \
--cc=andrew.murray@arm.com \
--cc=bhelgaas@google.com \
--cc=devicetree-discuss@lists.ozlabs.org \
--cc=grant.likely@secretlab.ca \
--cc=jgunthorpe@obsidianresearch.com \
--cc=kgene.kim@samsung.com \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linux-samsung-soc@vger.kernel.org \
--cc=siva.kallam@samsung.com \
--cc=suren.reddy@samsung.com \
--cc=thierry.reding@avionic-design.de \
--cc=thomas.abraham@linaro.org \
--cc=thomas.petazzoni@free-electrons.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).