linux-gpio.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v5 00/11] Add suspend to ram support for PCIe on J7200
@ 2024-04-16 13:29 Thomas Richard
  2024-04-16 13:29 ` [PATCH v5 01/11] gpio: pca953x: move suspend()/resume() to suspend_noirq()/resume_noirq() Thomas Richard
                   ` (10 more replies)
  0 siblings, 11 replies; 24+ messages in thread
From: Thomas Richard @ 2024-04-16 13:29 UTC (permalink / raw)
  To: Linus Walleij, Bartosz Golaszewski, Tony Lindgren, Aaro Koskinen,
	Janusz Krzysztofik, Vignesh R, Andi Shyti, Peter Rosin,
	Lorenzo Pieralisi, Krzysztof Wilczyński, Rob Herring,
	Bjorn Helgaas, Siddharth Vadapalli
  Cc: linux-gpio, linux-kernel, linux-omap, linux-i2c, linux-pci,
	linux-arm-kernel, gregory.clement, theo.lebrun, thomas.petazzoni,
	u-kumar1, Thomas Richard, Bartosz Golaszewski, Andy Shevchenko,
	Wolfram Sang, Francesco Dolcini

This adds suspend to ram support for the PCIe (RC mode) on J7200 platform.

In this 5th iteration, the series was rebased on Linux 6.9-rc1.

The PHY patches were moved to a dedicated series.

The patch for the pinctrl-single driver was removed, as it was already
applied to the pinctrl tree.

Regards,

Thomas

Signed-off-by: Thomas Richard <thomas.richard@bootlin.com>
---
Changes in v5:
- all: series rebased on Linux 6.9-rc1
- pinctrl-single: patch removed (already applied to the pinctrl tree)
- phy: patches moved to a dedicated series.
- pci: add T_PERST_CLK_US macro.
- pci-j721e: update the comments about T_PERST_CLK_US.
- Link to v4: https://lore.kernel.org/r/20240102-j7200-pcie-s2r-v4-0-6f1f53390c85@bootlin.com

Changes in v4:
- all: use SoB/Co-developed-by for patches initially developed by Théo
  Lebrun.
- pinctrl-single: squash the two commits.
- i2c-omap: fix line lenghts of the comment in omap_i2c_suspend().
- mux: mux_chip_resume() return 0 or at the first error.
- phy-j721e-wiz: clean code around dev_err_probe().
- phy-j721e-wiz: use REF_CLK_100MHZ macros.
- pci: fix subject line for all PCI patches.
- pci-cadence: use fsleep() instead of usleep_range().
- pci-cadence: remove cdns_torrent_clk_cleanup() call in
  cdns_torrent_phy_resume_noirq().
- pci-j721e: add a patch to use dev_err_probe() instead of dev_err() in the probe().
- pci-j721e: fix unordered header files.
- pci-j721e: remove some log spammers.
- pci-j721e: add a missing clock disable in j721e_pcie_resume_noirq().
- pci-j721e: simplify the patch "Add reset GPIO to struct j721e_pcie"
- Link to v3: https://lore.kernel.org/r/20240102-j7200-pcie-s2r-v3-0-5c2e4a3fac1f@bootlin.com

Changes in v3:
- pinctrl-single: split patch in two parts, a first patch to remove the
  dead code, a second to move suspend()/resume() callbacks to noirq.
- i2c-omap: add a comments above the suspend_noirq() callback.
- mux: now mux_chip_resume() try to restores all muxes, then return 0 if
  all is ok or the first failure.
- mmio: fix commit message.
- phy-j721e-wiz: add a patch to use dev_err_probe() instead of dev_err() in
  the wiz_clock_init() function.
- phy-j721e-wiz: remove probe boolean for the wiz_clock_init(), rename the
  function to wiz_clock_probe(), extract hardware configuration part in a
  new function wiz_clock_init().
- phy-cadence-torrent: use dev_err_probe() and fix commit messages
- pcie-cadence-host: remove probe boolean for the cdns_pcie_host_setup()
  function and extract the link setup part in a new function
  cdns_pcie_host_link_setup().
- pcie-cadence-host: make cdns_pcie_host_init() global.
- pci-j721e: use the cdns_pcie_host_link_setup() cdns_pcie_host_init()
  functions in the resume_noirq() callback.
- Link to v2: https://lore.kernel.org/r/20240102-j7200-pcie-s2r-v2-0-8e4f7d228ec2@bootlin.com

Changes in v2:
- all: fix commits messages.
- all: use DEFINE_NOIRQ_DEV_PM_OPS and pm_sleep_ptr macros.
- all: remove useless #ifdef CONFIG_PM.
- pinctrl-single: drop dead code
- mux: add mux_chip_resume() function in mux core.
- mmio: resume sequence is now a call to mux_chip_resume().
- phy-cadence-torrent: fix typo in resume sequence (reset_control_assert()
  instead of reset_control_put()).
- phy-cadence-torrent: use PHY instead of phy.
- pci-j721e: do not shadow cdns_pcie_host_setup return code in resume
  sequence.
- pci-j721e: drop dead code.
- Link to v1: https://lore.kernel.org/r/20240102-j7200-pcie-s2r-v1-0-84e55da52400@bootlin.com

---
Thomas Richard (8):
      gpio: pca953x: move suspend()/resume() to suspend_noirq()/resume_noirq()
      i2c: omap: wakeup the controller during suspend() callback
      mux: add mux_chip_resume() function
      PCI: cadence: Extract link setup sequence from cdns_pcie_host_setup()
      PCI: cadence: Set cdns_pcie_host_init() global
      PCI: j721e: Use dev_err_probe() in the probe() function
      PCI: Add T_PERST_CLK_US macro
      PCI: j721e: Use T_PERST_CLK_US macro

Théo Lebrun (3):
      mux: mmio: add resume support
      PCI: j721e: Add reset GPIO to struct j721e_pcie
      PCI: j721e: Add suspend and resume support

 drivers/gpio/gpio-pca953x.c                        |   7 +-
 drivers/i2c/busses/i2c-omap.c                      |  22 ++++
 drivers/mux/core.c                                 |  29 +++++
 drivers/mux/mmio.c                                 |  12 ++
 drivers/pci/controller/cadence/pci-j721e.c         | 121 ++++++++++++++++++---
 drivers/pci/controller/cadence/pcie-cadence-host.c |  44 +++++---
 drivers/pci/controller/cadence/pcie-cadence.h      |  12 ++
 drivers/pci/pci.h                                  |   3 +
 include/linux/mux/driver.h                         |   1 +
 9 files changed, 214 insertions(+), 37 deletions(-)
---
base-commit: 3d31103a742d8c94924848dc0fb5e2ce6b701932
change-id: 20240102-j7200-pcie-s2r-ecb1a979e357

Best regards,
-- 
Thomas Richard <thomas.richard@bootlin.com>


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

end of thread, other threads:[~2024-05-15  7:05 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-04-16 13:29 [PATCH v5 00/11] Add suspend to ram support for PCIe on J7200 Thomas Richard
2024-04-16 13:29 ` [PATCH v5 01/11] gpio: pca953x: move suspend()/resume() to suspend_noirq()/resume_noirq() Thomas Richard
2024-04-23  9:42   ` Geert Uytterhoeven
2024-04-23 10:34     ` Andy Shevchenko
2024-04-23 10:53       ` Thomas Richard
2024-04-23 15:31         ` Geert Uytterhoeven
2024-04-16 13:29 ` [PATCH v5 02/11] i2c: omap: wakeup the controller during suspend() callback Thomas Richard
2024-04-19  8:47   ` Andi Shyti
2024-04-22  9:40     ` Thomas Richard
2024-04-22 19:44       ` Bjorn Helgaas
2024-04-24 10:24         ` Thomas Richard
2024-04-16 13:29 ` [PATCH v5 03/11] mux: add mux_chip_resume() function Thomas Richard
2024-04-16 13:29 ` [PATCH v5 04/11] mux: mmio: add resume support Thomas Richard
2024-04-16 13:29 ` [PATCH v5 05/11] PCI: cadence: Extract link setup sequence from cdns_pcie_host_setup() Thomas Richard
2024-04-16 14:16   ` Dan Carpenter
2024-04-16 16:01     ` Thomas Richard
2024-05-14 13:15     ` Thomas Richard
2024-05-15  7:05       ` Dan Carpenter
2024-04-16 13:29 ` [PATCH v5 06/11] PCI: cadence: Set cdns_pcie_host_init() global Thomas Richard
2024-04-16 13:29 ` [PATCH v5 07/11] PCI: j721e: Use dev_err_probe() in the probe() function Thomas Richard
2024-04-16 13:29 ` [PATCH v5 08/11] PCI: j721e: Add reset GPIO to struct j721e_pcie Thomas Richard
2024-04-16 13:29 ` [PATCH v5 09/11] PCI: Add T_PERST_CLK_US macro Thomas Richard
2024-04-16 13:29 ` [PATCH v5 10/11] PCI: j721e: Use " Thomas Richard
2024-04-16 13:30 ` [PATCH v5 11/11] PCI: j721e: Add suspend and resume support Thomas Richard

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