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
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
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
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
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
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
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
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
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
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