linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v8 00/11] Add support for Hikey 970 PCIe
@ 2021-07-30  9:50 Mauro Carvalho Chehab
  2021-07-30  9:50 ` [PATCH v8 01/11] phy: HiSilicon: Add driver for Kirin 970 PCIe PHY Mauro Carvalho Chehab
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: Mauro Carvalho Chehab @ 2021-07-30  9:50 UTC (permalink / raw)
  To: Vinod Koul, Bjorn Helgaas, Rob Herring
  Cc: Mauro Carvalho Chehab, Krzysztof Wilczyński, Binghui Wang,
	Xiaowei Song, linux-kernel, linux-pci, linux-phy

On this version, the DT bindings were split on a separate patch series:
	https://lore.kernel.org/lkml/cover.1627637448.git.mchehab+huawei@kernel.org/

The patches here should apply cleanly on the top of v5.14-rc1.

patch1 contains a PHY for Kirin 970 PCIe.

The remaining patches add support for Kirin 970 at the pcie-kirin driver, and
add the needed logic to compile it as module and to allow to dynamically
remove the driver in runtime.

Tested on HiKey970:

  # lspci -D -PP
  0000:00:00.0 PCI bridge: Huawei Technologies Co., Ltd. Device 3670 (rev 01)
  0000:00:00.0/01:00.0 PCI bridge: PLX Technology, Inc. PEX 8606 6 Lane, 6 Port PCI Express Gen 2 (5.0 GT/s) Switch (rev ba)
  0000:00:00.0/01:00.0/02:01.0 PCI bridge: PLX Technology, Inc. PEX 8606 6 Lane, 6 Port PCI Express Gen 2 (5.0 GT/s) Switch (rev ba)
  0000:00:00.0/01:00.0/02:04.0 PCI bridge: PLX Technology, Inc. PEX 8606 6 Lane, 6 Port PCI Express Gen 2 (5.0 GT/s) Switch (rev ba)
  0000:00:00.0/01:00.0/02:05.0 PCI bridge: PLX Technology, Inc. PEX 8606 6 Lane, 6 Port PCI Express Gen 2 (5.0 GT/s) Switch (rev ba)
  0000:00:00.0/01:00.0/02:07.0 PCI bridge: PLX Technology, Inc. PEX 8606 6 Lane, 6 Port PCI Express Gen 2 (5.0 GT/s) Switch (rev ba)
  0000:00:00.0/01:00.0/02:09.0 PCI bridge: PLX Technology, Inc. PEX 8606 6 Lane, 6 Port PCI Express Gen 2 (5.0 GT/s) Switch (rev ba)
  0000:00:00.0/01:00.0/02:01.0/03:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd Device a809
  0000:00:00.0/01:00.0/02:07.0/06:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 07)

Tested on HiKey960:

  # lspci -D 
  0000:00:00.0 PCI bridge: Huawei Technologies Co., Ltd. Device 3660 (rev 01)

---

v8:
- Changed the drivers to follow the DT schema under discussions with
  Rob;
- Added patches to fix powerof logic and to allow unloading the driver.

v7:
- Moved kirin_pcie_match to be closer to the probe function;
- Improved patch description for:
	"PCI: kirin: add support for a PHY layer"
- Added missing MODULE_*() macros on both PCI and PHY drivers;
- Fixed a warning at hisilicon,phy-hi3670-pcie.yaml reported by
  Rob Herring's bot.

v6:
- Use an alternative approach, in order to keep the Kirin 960 PHY internal to 
  the driver, in order to not break the DT schema. The PHY-specific code
  were made self-contained at pcie-kirin, in order to make easier to split
  it in the future, if needed.

v5:
- added "static" to hi3670_pcie_get_eyeparam() declaration on patch 6/8

v4:

- dropped the DTS patch, as it depends on a PMIC-related patch series;
- minor changes at the patch description;
- HiKey and HiSilicon are now using the preferred CamelCase format.

Mauro Carvalho Chehab (11):
  phy: HiSilicon: Add driver for Kirin 970 PCIe PHY
  PCI: kirin: Reorganize the PHY logic inside the driver
  PCI: kirin: Add support for a PHY layer
  PCI: kirin: Use regmap for APB registers
  PCI: kirin: Add support for bridge slot DT schema
  PCI: kirin: Add Kirin 970 compatible
  PCI: kirin: Add MODULE_* macros
  PCI: kirin: Allow building it as a module
  PCI: kirin: Add power_off support for Kirin 960 PHY
  PCI: kirin: fix poweroff sequence
  PCI: kirin: Allow removing the driver

 drivers/pci/controller/dwc/Kconfig      |   2 +-
 drivers/pci/controller/dwc/pcie-kirin.c | 647 ++++++++++++++-----
 drivers/phy/hisilicon/Kconfig           |  10 +
 drivers/phy/hisilicon/Makefile          |   1 +
 drivers/phy/hisilicon/phy-hi3670-pcie.c | 799 ++++++++++++++++++++++++
 5 files changed, 1311 insertions(+), 148 deletions(-)
 create mode 100644 drivers/phy/hisilicon/phy-hi3670-pcie.c

-- 
2.31.1



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

end of thread, other threads:[~2021-08-01 16:55 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-30  9:50 [PATCH v8 00/11] Add support for Hikey 970 PCIe Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 01/11] phy: HiSilicon: Add driver for Kirin 970 PCIe PHY Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 02/11] PCI: kirin: Reorganize the PHY logic inside the driver Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 03/11] PCI: kirin: Add support for a PHY layer Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 04/11] PCI: kirin: Use regmap for APB registers Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 05/11] PCI: kirin: Add support for bridge slot DT schema Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 06/11] PCI: kirin: Add Kirin 970 compatible Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 07/11] PCI: kirin: Add MODULE_* macros Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 08/11] PCI: kirin: Allow building it as a module Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 09/11] PCI: kirin: Add power_off support for Kirin 960 PHY Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 10/11] PCI: kirin: fix poweroff sequence Mauro Carvalho Chehab
2021-07-30  9:50 ` [PATCH v8 11/11] PCI: kirin: Allow removing the driver Mauro Carvalho Chehab
2021-08-01 16:55 ` [PATCH v8 00/11] Add support for Hikey 970 PCIe Mauro Carvalho Chehab

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