linux-pci.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling
@ 2021-06-25 10:48 Michal Simek
  2021-06-25 10:48 ` [PATCH v3 1/2] dt-bindings: pci: xilinx-nwl: Document optional clock property Michal Simek
                   ` (3 more replies)
  0 siblings, 4 replies; 6+ messages in thread
From: Michal Simek @ 2021-06-25 10:48 UTC (permalink / raw)
  To: linux-kernel, monstr, michal.simek, git, bharat.kumar.gogada, kw
  Cc: Bjorn Helgaas, Lorenzo Pieralisi, Marc Zyngier,
	Ravi Kiran Gummaluri, Rob Herring, Rob Herring, devicetree,
	linux-arm-kernel, linux-pci

Hi,

this small series add support for enabling PCIe reference clock by driver.

Thanks,
Michal

Changes in v3:
- use PCIe instead of pcie
- add stable cc
- update commit message - reported by Krzysztof

Changes in v2:
- new patch in this series because I found that it has never been sent
- Update commit message - reported by Krzysztof
- Check return value from clk_prepare_enable() - reported by Krzysztof

Hyun Kwon (1):
  PCI: xilinx-nwl: Enable the clock through CCF

Michal Simek (1):
  dt-bindings: pci: xilinx-nwl: Document optional clock property

 .../devicetree/bindings/pci/xilinx-nwl-pcie.txt      |  1 +
 drivers/pci/controller/pcie-xilinx-nwl.c             | 12 ++++++++++++
 2 files changed, 13 insertions(+)

-- 
2.32.0


^ permalink raw reply	[flat|nested] 6+ messages in thread

* [PATCH v3 1/2] dt-bindings: pci: xilinx-nwl: Document optional clock property
  2021-06-25 10:48 [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling Michal Simek
@ 2021-06-25 10:48 ` Michal Simek
  2021-07-14 19:47   ` Rob Herring
  2021-06-25 10:48 ` [PATCH v3 2/2] PCI: xilinx-nwl: Enable the clock through CCF Michal Simek
                   ` (2 subsequent siblings)
  3 siblings, 1 reply; 6+ messages in thread
From: Michal Simek @ 2021-06-25 10:48 UTC (permalink / raw)
  To: linux-kernel, monstr, michal.simek, git, bharat.kumar.gogada, kw
  Cc: Bjorn Helgaas, Rob Herring, devicetree, linux-arm-kernel, linux-pci

Clock property hasn't been documented in binding document but it is used
for quite a long time where clock was specified by commit 9c8a47b484ed
("arm64: dts: xilinx: Add the clock nodes for zynqmp").

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---

(no changes since v2)

Changes in v2:
- new patch in this series because I found that it has never been sent

Bharat: Can you please start to work on converting it to yaml?

---
 Documentation/devicetree/bindings/pci/xilinx-nwl-pcie.txt | 1 +
 1 file changed, 1 insertion(+)

diff --git a/Documentation/devicetree/bindings/pci/xilinx-nwl-pcie.txt b/Documentation/devicetree/bindings/pci/xilinx-nwl-pcie.txt
index 2d677e90a7e2..f56f8c58c5d9 100644
--- a/Documentation/devicetree/bindings/pci/xilinx-nwl-pcie.txt
+++ b/Documentation/devicetree/bindings/pci/xilinx-nwl-pcie.txt
@@ -35,6 +35,7 @@ Required properties:
 
 Optional properties:
 - dma-coherent: present if DMA operations are coherent
+- clocks: Input clock specifier. Refer to common clock bindings
 
 Example:
 ++++++++
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* [PATCH v3 2/2] PCI: xilinx-nwl: Enable the clock through CCF
  2021-06-25 10:48 [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling Michal Simek
  2021-06-25 10:48 ` [PATCH v3 1/2] dt-bindings: pci: xilinx-nwl: Document optional clock property Michal Simek
@ 2021-06-25 10:48 ` Michal Simek
  2021-08-06 10:28 ` [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling Michal Simek
  2021-08-13 14:40 ` Lorenzo Pieralisi
  3 siblings, 0 replies; 6+ messages in thread
From: Michal Simek @ 2021-06-25 10:48 UTC (permalink / raw)
  To: linux-kernel, monstr, michal.simek, git, bharat.kumar.gogada, kw
  Cc: Hyun Kwon, stable, Bjorn Helgaas, Lorenzo Pieralisi,
	Marc Zyngier, Ravi Kiran Gummaluri, Rob Herring,
	linux-arm-kernel, linux-pci

From: Hyun Kwon <hyun.kwon@xilinx.com>

Enable PCIe reference clock. There is no remove function that's why
this should be enough for simple operation.
Normally this clock is enabled by default by firmware but there are
usecases where this clock should be enabled by driver itself.
It is also good that PCIe clock is recorded in a clock framework.

Fixes: ab597d35ef11 ("PCI: xilinx-nwl: Add support for Xilinx NWL PCIe Host Controller")
Cc: stable@vger.kernel.org
Signed-off-by: Hyun Kwon <hyun.kwon@xilinx.com>
Signed-off-by: Bharat Kumar Gogada <bharat.kumar.gogada@xilinx.com>
Signed-off-by: Michal Simek <michal.simek@xilinx.com>
---

Changes in v3:
- use PCIe instead of pcie
- add stable cc
- update commit message - reported by Krzysztof

Changes in v2:
- Update commit message - reported by Krzysztof
- Check return value from clk_prepare_enable() - reported by Krzysztof

 drivers/pci/controller/pcie-xilinx-nwl.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/drivers/pci/controller/pcie-xilinx-nwl.c b/drivers/pci/controller/pcie-xilinx-nwl.c
index 8689311c5ef6..1c3d5b87ef20 100644
--- a/drivers/pci/controller/pcie-xilinx-nwl.c
+++ b/drivers/pci/controller/pcie-xilinx-nwl.c
@@ -6,6 +6,7 @@
  * (C) Copyright 2014 - 2015, Xilinx, Inc.
  */
 
+#include <linux/clk.h>
 #include <linux/delay.h>
 #include <linux/interrupt.h>
 #include <linux/irq.h>
@@ -169,6 +170,7 @@ struct nwl_pcie {
 	u8 last_busno;
 	struct nwl_msi msi;
 	struct irq_domain *legacy_irq_domain;
+	struct clk *clk;
 	raw_spinlock_t leg_mask_lock;
 };
 
@@ -823,6 +825,16 @@ static int nwl_pcie_probe(struct platform_device *pdev)
 		return err;
 	}
 
+	pcie->clk = devm_clk_get(dev, NULL);
+	if (IS_ERR(pcie->clk))
+		return PTR_ERR(pcie->clk);
+
+	err = clk_prepare_enable(pcie->clk);
+	if (err) {
+		dev_err(dev, "can't enable PCIe ref clock\n");
+		return err;
+	}
+
 	err = nwl_pcie_bridge_init(pcie);
 	if (err) {
 		dev_err(dev, "HW Initialization failed\n");
-- 
2.32.0


^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 1/2] dt-bindings: pci: xilinx-nwl: Document optional clock property
  2021-06-25 10:48 ` [PATCH v3 1/2] dt-bindings: pci: xilinx-nwl: Document optional clock property Michal Simek
@ 2021-07-14 19:47   ` Rob Herring
  0 siblings, 0 replies; 6+ messages in thread
From: Rob Herring @ 2021-07-14 19:47 UTC (permalink / raw)
  To: Michal Simek
  Cc: git, monstr, linux-kernel, linux-arm-kernel, Bjorn Helgaas,
	devicetree, linux-pci, kw, bharat.kumar.gogada, Rob Herring

On Fri, 25 Jun 2021 12:48:22 +0200, Michal Simek wrote:
> Clock property hasn't been documented in binding document but it is used
> for quite a long time where clock was specified by commit 9c8a47b484ed
> ("arm64: dts: xilinx: Add the clock nodes for zynqmp").
> 
> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
> ---
> 
> (no changes since v2)
> 
> Changes in v2:
> - new patch in this series because I found that it has never been sent
> 
> Bharat: Can you please start to work on converting it to yaml?
> 
> ---
>  Documentation/devicetree/bindings/pci/xilinx-nwl-pcie.txt | 1 +
>  1 file changed, 1 insertion(+)
> 

Acked-by: Rob Herring <robh@kernel.org>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling
  2021-06-25 10:48 [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling Michal Simek
  2021-06-25 10:48 ` [PATCH v3 1/2] dt-bindings: pci: xilinx-nwl: Document optional clock property Michal Simek
  2021-06-25 10:48 ` [PATCH v3 2/2] PCI: xilinx-nwl: Enable the clock through CCF Michal Simek
@ 2021-08-06 10:28 ` Michal Simek
  2021-08-13 14:40 ` Lorenzo Pieralisi
  3 siblings, 0 replies; 6+ messages in thread
From: Michal Simek @ 2021-08-06 10:28 UTC (permalink / raw)
  To: LKML, Michal Simek, git, Bharat Kumar Gogada, Krzysztof Wilczyński
  Cc: Bjorn Helgaas, Lorenzo Pieralisi, Marc Zyngier,
	Ravi Kiran Gummaluri, Rob Herring, Rob Herring, DTML, linux-arm,
	linux-pci

Hi Bjorn and Krzysztof,

pá 25. 6. 2021 v 12:48 odesílatel Michal Simek <michal.simek@xilinx.com> napsal:
>
> Hi,
>
> this small series add support for enabling PCIe reference clock by driver.
>
> Thanks,
> Michal
>
> Changes in v3:
> - use PCIe instead of pcie
> - add stable cc
> - update commit message - reported by Krzysztof
>
> Changes in v2:
> - new patch in this series because I found that it has never been sent
> - Update commit message - reported by Krzysztof
> - Check return value from clk_prepare_enable() - reported by Krzysztof
>
> Hyun Kwon (1):
>   PCI: xilinx-nwl: Enable the clock through CCF
>
> Michal Simek (1):
>   dt-bindings: pci: xilinx-nwl: Document optional clock property
>
>  .../devicetree/bindings/pci/xilinx-nwl-pcie.txt      |  1 +
>  drivers/pci/controller/pcie-xilinx-nwl.c             | 12 ++++++++++++
>  2 files changed, 13 insertions(+)
>
> --
> 2.32.0
>

Can you please take a look at this series?

Thanks,
Michal

-- 
Michal Simek, Ing. (M.Eng), OpenPGP -> KeyID: FE3D1F91
w: www.monstr.eu p: +42-0-721842854
Maintainer of Linux kernel - Xilinx Microblaze
Maintainer of Linux kernel - Xilinx Zynq ARM and ZynqMP ARM64 SoCs
U-Boot custodian - Xilinx Microblaze/Zynq/ZynqMP/Versal SoCs

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling
  2021-06-25 10:48 [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling Michal Simek
                   ` (2 preceding siblings ...)
  2021-08-06 10:28 ` [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling Michal Simek
@ 2021-08-13 14:40 ` Lorenzo Pieralisi
  3 siblings, 0 replies; 6+ messages in thread
From: Lorenzo Pieralisi @ 2021-08-13 14:40 UTC (permalink / raw)
  To: kw, Michal Simek, git, bharat.kumar.gogada, monstr, linux-kernel
  Cc: Lorenzo Pieralisi, linux-arm-kernel, Rob Herring, linux-pci,
	Ravi Kiran Gummaluri, Marc Zyngier, Rob Herring, Bjorn Helgaas,
	devicetree

On Fri, 25 Jun 2021 12:48:21 +0200, Michal Simek wrote:
> this small series add support for enabling PCIe reference clock by driver.
> 
> Thanks,
> Michal
> 
> Changes in v3:
> - use PCIe instead of pcie
> - add stable cc
> - update commit message - reported by Krzysztof
> 
> [...]

Applied to pci/xilinx-nwl, thanks!

[1/2] dt-bindings: pci: xilinx-nwl: Document optional clock property
      https://git.kernel.org/lpieralisi/pci/c/4d79e36718
[2/2] PCI: xilinx-nwl: Enable the clock through CCF
      https://git.kernel.org/lpieralisi/pci/c/de0a01f529

Thanks,
Lorenzo

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2021-08-13 14:40 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-25 10:48 [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling Michal Simek
2021-06-25 10:48 ` [PATCH v3 1/2] dt-bindings: pci: xilinx-nwl: Document optional clock property Michal Simek
2021-07-14 19:47   ` Rob Herring
2021-06-25 10:48 ` [PATCH v3 2/2] PCI: xilinx-nwl: Enable the clock through CCF Michal Simek
2021-08-06 10:28 ` [PATCH v3 0/2] PCI: xilinx-nwl: Add clock handling Michal Simek
2021-08-13 14:40 ` Lorenzo Pieralisi

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