2014-10-24 17:53:14

by Karicheri, Muralidharan

[permalink] [raw]
Subject: [PATCH 0/4] Enable PCI controller for Keystone SoCs

Now that Keystone PCI driver is merged to v3.18, this patch series
add build options and DTS bindings to enable the driver for Keystone SoCs.

CC : Santosh Shilimkar <[email protected]>
CC : Greg Kroah-Hartman <[email protected]>
CC : Rob Herring <[email protected]>
CC : Pawel Moll <[email protected]>
CC : Mark Rutland <[email protected]>
CC : Ian Campbell <[email protected]>
CC : Kumar Gala <[email protected]>
CC : Russell King <[email protected]>
CC : [email protected]

Murali Karicheri (4):
ARM: keystone: add pcie related options
ARM: keystone: defconfig: add options to enable PCI controller
ARM: keystone: dts: add DT bindings for PCI controller for port 0
ARM: keystone: dts: add DT bindings for PCI controller for port 1

arch/arm/boot/dts/k2e.dtsi | 45 +++++++++++++++++++++++++++++++++++
arch/arm/boot/dts/keystone.dtsi | 45 +++++++++++++++++++++++++++++++++++
arch/arm/configs/keystone_defconfig | 3 +++
arch/arm/mach-keystone/Kconfig | 2 ++
4 files changed, 95 insertions(+)

--
1.7.9.5


2014-10-24 17:52:04

by Karicheri, Muralidharan

[permalink] [raw]
Subject: [PATCH 2/4] ARM: keystone: defconfig: add options to enable PCI controller

Signed-off-by: Murali Karicheri <[email protected]>
CC : Santosh Shilimkar <[email protected]>
CC : Russell King <[email protected]>
CC : Greg Kroah-Hartman <[email protected]>
---
arch/arm/configs/keystone_defconfig | 3 +++
1 file changed, 3 insertions(+)

diff --git a/arch/arm/configs/keystone_defconfig b/arch/arm/configs/keystone_defconfig
index 932ae40..40d3e9d 100644
--- a/arch/arm/configs/keystone_defconfig
+++ b/arch/arm/configs/keystone_defconfig
@@ -20,6 +20,9 @@ CONFIG_MODULE_FORCE_UNLOAD=y
CONFIG_MODVERSIONS=y
CONFIG_ARCH_KEYSTONE=y
CONFIG_ARM_LPAE=y
+CONFIG_PCI=y
+CONFIG_PCI_MSI=y
+CONFIG_PCI_KEYSTONE=y
CONFIG_SMP=y
CONFIG_PREEMPT=y
CONFIG_AEABI=y
--
1.7.9.5

2014-10-24 17:52:06

by Karicheri, Muralidharan

[permalink] [raw]
Subject: [PATCH 4/4] ARM: keystone: dts: add DT bindings for PCI controller for port 1

K2E SoC has a second PCI port based on Synopsis Designware PCIe h/w.
Add DT bindings to support PCI controller for port 1 for this SoC.

Signed-off-by: Murali Karicheri <[email protected]>
CC : Santosh Shilimkar <[email protected]>
CC : Rob Herring <[email protected]>
CC : Pawel Moll <[email protected]>
CC : Mark Rutland <[email protected]>
CC : Ian Campbell <[email protected]>
CC : Kumar Gala <[email protected]>
CC : Russell King <[email protected]>
CC : [email protected]
---
arch/arm/boot/dts/k2e.dtsi | 45 ++++++++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

diff --git a/arch/arm/boot/dts/k2e.dtsi b/arch/arm/boot/dts/k2e.dtsi
index c358b4b..e60d128 100644
--- a/arch/arm/boot/dts/k2e.dtsi
+++ b/arch/arm/boot/dts/k2e.dtsi
@@ -85,6 +85,51 @@
#gpio-cells = <2>;
gpio,syscon-dev = <&devctrl 0x240>;
};
+
+ pcie@21020000 {
+ compatible = "ti,keystone-pcie","snps,dw-pcie";
+ clocks = <&clkpcie1>;
+ clock-names = "pcie";
+ #address-cells = <3>;
+ #size-cells = <2>;
+ reg = <0x21021000 0x2000>, <0x21020000 0x1000>, <0x02620128 4>;
+ ranges = <0x81000000 0 0 0x23260000 0x4000 0x4000
+ 0x82000000 0 0x60000000 0x60000000 0 0x10000000>;
+
+ device_type = "pci";
+ num-lanes = <2>;
+
+ #interrupt-cells = <1>;
+ interrupt-map-mask = <0 0 0 7>;
+ interrupt-map = <0 0 0 1 &pcie_intc1 0>, // INT A
+ <0 0 0 2 &pcie_intc1 1>, // INT B
+ <0 0 0 3 &pcie_intc1 2>, // INT C
+ <0 0 0 4 &pcie_intc1 3>; // INT D
+
+ pcie_msi_intc1: msi-interrupt-controller {
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 377 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 378 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 379 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 380 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 381 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 382 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 383 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 384 IRQ_TYPE_EDGE_RISING>;
+ };
+
+ pcie_intc1: legacy-interrupt-controller {
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 373 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 374 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 375 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 376 IRQ_TYPE_EDGE_RISING>;
+ };
+ };
};
};

--
1.7.9.5

2014-10-24 17:52:02

by Karicheri, Muralidharan

[permalink] [raw]
Subject: [PATCH 1/4] ARM: keystone: add pcie related options

Now that Keystone PCI controller is merged, add pcie related options
by default for keystone architecture so that driver can be enabled in
the build.

Signed-off-by: Murali Karicheri <[email protected]>
CC : Russell King <[email protected]>
CC : Santosh Shilimkar <[email protected]>
---
arch/arm/mach-keystone/Kconfig | 2 ++
1 file changed, 2 insertions(+)

diff --git a/arch/arm/mach-keystone/Kconfig b/arch/arm/mach-keystone/Kconfig
index 98a156a..ea955f6db 100644
--- a/arch/arm/mach-keystone/Kconfig
+++ b/arch/arm/mach-keystone/Kconfig
@@ -9,6 +9,8 @@ config ARCH_KEYSTONE
select COMMON_CLK_KEYSTONE
select ARCH_SUPPORTS_BIG_ENDIAN
select ZONE_DMA if ARM_LPAE
+ select MIGHT_HAVE_PCI
+ select PCI_DOMAINS if PCI
help
Support for boards based on the Texas Instruments Keystone family of
SoCs.
--
1.7.9.5

2014-10-24 17:52:00

by Karicheri, Muralidharan

[permalink] [raw]
Subject: [PATCH 3/4] ARM: keystone: dts: add DT bindings for PCI controller for port 0

Add common DT bindings to support Port 0 Root Complex on all of the
K2 SoCs that has Synopsis Designware based pcie h/w.

Signed-off-by: Murali Karicheri <[email protected]>
CC : Santosh Shilimkar <[email protected]>
CC : Rob Herring <[email protected]>
CC : Pawel Moll <[email protected]>
CC : Mark Rutland <[email protected]>
CC : Ian Campbell <[email protected]>
CC : Kumar Gala <[email protected]>
CC : Russell King <[email protected]>
CC : [email protected]
---
arch/arm/boot/dts/keystone.dtsi | 45 +++++++++++++++++++++++++++++++++++++++
1 file changed, 45 insertions(+)

diff --git a/arch/arm/boot/dts/keystone.dtsi b/arch/arm/boot/dts/keystone.dtsi
index 5d3e83f..87b2daa 100644
--- a/arch/arm/boot/dts/keystone.dtsi
+++ b/arch/arm/boot/dts/keystone.dtsi
@@ -285,5 +285,50 @@
#interrupt-cells = <1>;
ti,syscon-dev = <&devctrl 0x2a0>;
};
+
+ pcie@21800000 {
+ compatible = "ti,keystone-pcie", "snps,dw-pcie";
+ clocks = <&clkpcie>;
+ clock-names = "pcie";
+ #address-cells = <3>;
+ #size-cells = <2>;
+ reg = <0x21801000 0x2000>, <0x21800000 0x1000>, <0x02620128 4>;
+ ranges = <0x81000000 0 0 0x23250000 0 0x4000
+ 0x82000000 0 0x50000000 0x50000000 0 0x10000000>;
+
+ device_type = "pci";
+ num-lanes = <2>;
+
+ #interrupt-cells = <1>;
+ interrupt-map-mask = <0 0 0 7>;
+ interrupt-map = <0 0 0 1 &pcie_intc0 0>, // INT A
+ <0 0 0 2 &pcie_intc0 1>, // INT B
+ <0 0 0 3 &pcie_intc0 2>, // INT C
+ <0 0 0 4 &pcie_intc0 3>; // INT D
+
+ pcie_msi_intc0: msi-interrupt-controller {
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 30 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 31 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 32 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 33 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 34 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 35 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 36 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 37 IRQ_TYPE_EDGE_RISING>;
+ };
+
+ pcie_intc0: legacy-interrupt-controller {
+ interrupt-controller;
+ #interrupt-cells = <1>;
+ interrupt-parent = <&gic>;
+ interrupts = <GIC_SPI 26 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 27 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 28 IRQ_TYPE_EDGE_RISING>,
+ <GIC_SPI 29 IRQ_TYPE_EDGE_RISING>;
+ };
+ };
};
};
--
1.7.9.5

2014-10-28 16:07:18

by Karicheri, Muralidharan

[permalink] [raw]
Subject: Re: [PATCH 0/4] Enable PCI controller for Keystone SoCs

On 10/24/2014 01:51 PM, Murali Karicheri wrote:
> Now that Keystone PCI driver is merged to v3.18, this patch series
> add build options and DTS bindings to enable the driver for Keystone SoCs.
>
> CC : Santosh Shilimkar<[email protected]>
> CC : Greg Kroah-Hartman<[email protected]>
> CC : Rob Herring<[email protected]>
> CC : Pawel Moll<[email protected]>
> CC : Mark Rutland<[email protected]>
> CC : Ian Campbell<[email protected]>
> CC : Kumar Gala<[email protected]>
> CC : Russell King<[email protected]>
> CC : [email protected]
>
> Murali Karicheri (4):
> ARM: keystone: add pcie related options
> ARM: keystone: defconfig: add options to enable PCI controller
> ARM: keystone: dts: add DT bindings for PCI controller for port 0
> ARM: keystone: dts: add DT bindings for PCI controller for port 1
>
> arch/arm/boot/dts/k2e.dtsi | 45 +++++++++++++++++++++++++++++++++++
> arch/arm/boot/dts/keystone.dtsi | 45 +++++++++++++++++++++++++++++++++++
> arch/arm/configs/keystone_defconfig | 3 +++
> arch/arm/mach-keystone/Kconfig | 2 ++
> 4 files changed, 95 insertions(+)
>
Santosh,

Could you review this and apply to your tree for merge by end of this
week if this looks good and there are no comments?

--
Murali Karicheri
Linux Kernel, Texas Instruments

2014-10-28 16:08:12

by Karicheri, Muralidharan

[permalink] [raw]
Subject: Re: [PATCH 0/4] Enable PCI controller for Keystone SoCs

On 10/28/2014 12:06 PM, Murali Karicheri wrote:
> On 10/24/2014 01:51 PM, Murali Karicheri wrote:
>> Now that Keystone PCI driver is merged to v3.18, this patch series
>> add build options and DTS bindings to enable the driver for Keystone
>> SoCs.
>>
>> CC : Santosh Shilimkar<[email protected]>
>> CC : Greg Kroah-Hartman<[email protected]>
>> CC : Rob Herring<[email protected]>
>> CC : Pawel Moll<[email protected]>
>> CC : Mark Rutland<[email protected]>
>> CC : Ian Campbell<[email protected]>
>> CC : Kumar Gala<[email protected]>
>> CC : Russell King<[email protected]>
>> CC : [email protected]
>>
>> Murali Karicheri (4):
>> ARM: keystone: add pcie related options
>> ARM: keystone: defconfig: add options to enable PCI controller
>> ARM: keystone: dts: add DT bindings for PCI controller for port 0
>> ARM: keystone: dts: add DT bindings for PCI controller for port 1
>>
>> arch/arm/boot/dts/k2e.dtsi | 45 +++++++++++++++++++++++++++++++++++
>> arch/arm/boot/dts/keystone.dtsi | 45 +++++++++++++++++++++++++++++++++++
>> arch/arm/configs/keystone_defconfig | 3 +++
>> arch/arm/mach-keystone/Kconfig | 2 ++
>> 4 files changed, 95 insertions(+)
>>
> Santosh,
>
> Could you review this and apply to your tree for merge by end of this
> week if this looks good and there are no comments?
>
Adding Santosh's personal email ID

--
Murali Karicheri
Linux Kernel, Texas Instruments

2014-10-28 16:32:34

by Santosh Shilimkar

[permalink] [raw]
Subject: Re: [PATCH 0/4] Enable PCI controller for Keystone SoCs



On 10/28/2014 09:07 AM, Murali Karicheri wrote:
> On 10/28/2014 12:06 PM, Murali Karicheri wrote:
>> On 10/24/2014 01:51 PM, Murali Karicheri wrote:
>>> Now that Keystone PCI driver is merged to v3.18, this patch series
>>> add build options and DTS bindings to enable the driver for Keystone
>>> SoCs.
>>>
>>> CC : Santosh Shilimkar<[email protected]>
>>> CC : Greg Kroah-Hartman<[email protected]>
>>> CC : Rob Herring<[email protected]>
>>> CC : Pawel Moll<[email protected]>
>>> CC : Mark Rutland<[email protected]>
>>> CC : Ian Campbell<[email protected]>
>>> CC : Kumar Gala<[email protected]>
>>> CC : Russell King<[email protected]>
>>> CC : [email protected]
>>>
>>> Murali Karicheri (4):
>>> ARM: keystone: add pcie related options
>>> ARM: keystone: defconfig: add options to enable PCI controller
>>> ARM: keystone: dts: add DT bindings for PCI controller for port 0
>>> ARM: keystone: dts: add DT bindings for PCI controller for port 1
>>>
>>> arch/arm/boot/dts/k2e.dtsi | 45 +++++++++++++++++++++++++++++++++++
>>> arch/arm/boot/dts/keystone.dtsi | 45 +++++++++++++++++++++++++++++++++++
>>> arch/arm/configs/keystone_defconfig | 3 +++
>>> arch/arm/mach-keystone/Kconfig | 2 ++
>>> 4 files changed, 95 insertions(+)
>>>
>> Santosh,
>>
>> Could you review this and apply to your tree for merge by end of this
>> week if this looks good and there are no comments?
>>
> Adding Santosh's personal email ID
>
Just use the listed kernel.org id while posting patches which needs
my attention. Please repost the series again so that I have all the
patches.

Also what happened with the PCIE notifier related series ?
If you have already proposed something, please loop me on the thread.

Thanks and Regards,
Santosh

2014-10-29 15:03:17

by Karicheri, Muralidharan

[permalink] [raw]
Subject: Re: [PATCH 0/4] Enable PCI controller for Keystone SoCs

On 10/28/2014 12:33 PM, Santosh Shilimkar wrote:
>
>
> On 10/28/2014 09:07 AM, Murali Karicheri wrote:
>> On 10/28/2014 12:06 PM, Murali Karicheri wrote:
>>> On 10/24/2014 01:51 PM, Murali Karicheri wrote:
>>>> Now that Keystone PCI driver is merged to v3.18, this patch series
>>>> add build options and DTS bindings to enable the driver for Keystone
>>>> SoCs.
>>>>
>>>> CC : Santosh Shilimkar<[email protected]>
>>>> CC : Greg Kroah-Hartman<[email protected]>
>>>> CC : Rob Herring<[email protected]>
>>>> CC : Pawel Moll<[email protected]>
>>>> CC : Mark Rutland<[email protected]>
>>>> CC : Ian Campbell<[email protected]>
>>>> CC : Kumar Gala<[email protected]>
>>>> CC : Russell King<[email protected]>
>>>> CC : [email protected]
>>>>
>>>> Murali Karicheri (4):
>>>> ARM: keystone: add pcie related options
>>>> ARM: keystone: defconfig: add options to enable PCI controller
>>>> ARM: keystone: dts: add DT bindings for PCI controller for port 0
>>>> ARM: keystone: dts: add DT bindings for PCI controller for port 1
>>>>
>>>> arch/arm/boot/dts/k2e.dtsi | 45 +++++++++++++++++++++++++++++++++++
>>>> arch/arm/boot/dts/keystone.dtsi | 45
>>>> +++++++++++++++++++++++++++++++++++
>>>> arch/arm/configs/keystone_defconfig | 3 +++
>>>> arch/arm/mach-keystone/Kconfig | 2 ++
>>>> 4 files changed, 95 insertions(+)
>>>>
>>> Santosh,
>>>
>>> Could you review this and apply to your tree for merge by end of this
>>> week if this looks good and there are no comments?
>>>
>> Adding Santosh's personal email ID
>>
> Just use the listed kernel.org id while posting patches which needs
> my attention. Please repost the series again so that I have all the
> patches.
Will do
>
> Also what happened with the PCIE notifier related series ?
> If you have already proposed something, please loop me on the thread.
>
That is work in progress. I have got something working, but dma-ranges
are also used in a different
way by the PCI sub systems on Power PC and require more thought on how
this can be done cleanly.
I am investigating this currently.
> Thanks and Regards,
> Santosh


--
Murali Karicheri
Linux Kernel, Texas Instruments

2014-10-29 18:55:26

by Santosh Shilimkar

[permalink] [raw]
Subject: Re: [PATCH 0/4] Enable PCI controller for Keystone SoCs



On 10/29/2014 08:02 AM, Murali Karicheri wrote:
> On 10/28/2014 12:33 PM, Santosh Shilimkar wrote:
>>
>>
>> On 10/28/2014 09:07 AM, Murali Karicheri wrote:
>>> On 10/28/2014 12:06 PM, Murali Karicheri wrote:
>>>> On 10/24/2014 01:51 PM, Murali Karicheri wrote:
>>>>> Now that Keystone PCI driver is merged to v3.18, this patch series
>>>>> add build options and DTS bindings to enable the driver for Keystone
>>>>> SoCs.
>>>>>
>>>>> CC : Santosh Shilimkar<[email protected]>
>>>>> CC : Greg Kroah-Hartman<[email protected]>
>>>>> CC : Rob Herring<[email protected]>
>>>>> CC : Pawel Moll<[email protected]>
>>>>> CC : Mark Rutland<[email protected]>
>>>>> CC : Ian Campbell<[email protected]>
>>>>> CC : Kumar Gala<[email protected]>
>>>>> CC : Russell King<[email protected]>
>>>>> CC : [email protected]
>>>>>
>>>>> Murali Karicheri (4):
>>>>> ARM: keystone: add pcie related options
>>>>> ARM: keystone: defconfig: add options to enable PCI controller
>>>>> ARM: keystone: dts: add DT bindings for PCI controller for port 0
>>>>> ARM: keystone: dts: add DT bindings for PCI controller for port 1
>>>>>
>>>>> arch/arm/boot/dts/k2e.dtsi | 45 +++++++++++++++++++++++++++++++++++
>>>>> arch/arm/boot/dts/keystone.dtsi | 45
>>>>> +++++++++++++++++++++++++++++++++++
>>>>> arch/arm/configs/keystone_defconfig | 3 +++
>>>>> arch/arm/mach-keystone/Kconfig | 2 ++
>>>>> 4 files changed, 95 insertions(+)
>>>>>
>>>> Santosh,
>>>>
>>>> Could you review this and apply to your tree for merge by end of this
>>>> week if this looks good and there are no comments?
>>>>
>>> Adding Santosh's personal email ID
>>>
>> Just use the listed kernel.org id while posting patches which needs
>> my attention. Please repost the series again so that I have all the
>> patches.
> Will do
>>
>> Also what happened with the PCIE notifier related series ?
>> If you have already proposed something, please loop me on the thread.
>>
> That is work in progress. I have got something working, but dma-ranges
> are also used in a different
> way by the PCI sub systems on Power PC and require more thought on how
> this can be done cleanly.
> I am investigating this currently.
'
Ok. Thanks for the note.

Regards,
Santosh