lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <fud3htht26ac3ui7pju3h5zyg7o7uk7xvnb4b2icrrblgl23te@qnnc6gjbffjx>
Date: Sun, 19 Oct 2025 11:20:49 +0530
From: Manivannan Sadhasivam <mani@...nel.org>
To: hans.zhang@...tech.com
Cc: bhelgaas@...gle.com, lpieralisi@...nel.org, kw@...ux.com, 
	robh@...nel.org, kwilczynski@...nel.org, krzk+dt@...nel.org, conor+dt@...nel.org, 
	mpillai@...ence.com, fugang.duan@...tech.com, guoyin.chen@...tech.com, 
	peter.chen@...tech.com, cix-kernel-upstream@...tech.com, linux-pci@...r.kernel.org, 
	devicetree@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH v9 00/14] Enhance the PCIe controller driver for next
 generation controllers

On Mon, Sep 01, 2025 at 05:20:38PM +0800, hans.zhang@...tech.com wrote:
> From: Hans Zhang <hans.zhang@...tech.com>
> 
> ---
> Dear Maintainers,
> 
> This series is Cadence's HPA PCIe IP and the Root Port driver of our
> CIX sky1. Please help review. Thank you very much.
> ---
> 
> Enhances the exiting Cadence PCIe controller drivers to support
> HPA (High Performance Architecture) Cadence PCIe controllers.
> 
> The patch set enhances the Cadence PCIe driver for HPA support.
> The header files are separated out for legacy and high performance
> register maps, register address and bit definitions. The driver
> read register and write register functions for HPA take the
> updated offset stored from the platform driver to access the registers.
> As part of refactoring of the code, few new files are added to the
> driver by splitting the existing files.
> This helps SoC vendor who change the address map within PCIe controller
> in their designs. Setting the menuconfig appropriately will allow
> selection between RP and/or EP PCIe controller support. The support
> will include Legacy and HPA for the selected configuration.
> 
> The TI SoC continues to be supported with the changes incorporated.
> 
> The changes address the review comments in the previous patches where
> the need to move away from "ops" pointers used in current implementation
> and separate out the Legacy and HPA driver implementation was stressed.
> 
> The scripts/checkpatch.pl has been run on the patches with and without
> --strict. With the --strict option, 4 checks are generated on 3 patch,
> which can be ignored. There are no code fixes required for these checks.
> All other checks generated by ./scripts/checkpatch.pl --strict can be 
> ignored.
> 

I hope this series is going to be respinned incorporating the comments.

- Mani

> ---
> Changes for v9
> https://patchwork.kernel.org/project/linux-pci/cover/20250819115239.4170604-1-hans.zhang@cixtech.com/
> 
> 	- Fixes the issue of kernel test robot where one variable overflow was flagged
> https://urldefense.com/v3/__https://lore.kernel.org/oe-kbuild-all/202508261955.U9IomdXb-lkp@intel.com/__;!!EHscmS1ygiU1lA!EZnnh6v5bjIDVqDhCnuprUvH9PTNCSANIaNa6wx7Tp3NgGMqsrTwOKz9z8z5fWHkQH3Q8l_S$
> 	- Minor changes that includes adding a flag for RC, removing vendor id and device id from DTS.
>     - Fix comments
> 	- Remove EP platform code by removing patch 0007 in v8 series
>     - Fix comments style for new files
>     - Remove #define from within functions to header file
>   - Modification of the review opinion on CIX SKY1 RC driver (Mani).
> 
> Changes for v8
>   - Fixed the error issue of DT binding. (Rob and Krzysztof)
>   - Optimization of CIX SKY1 Root Port driver. (Bjorn and Krzysztof)
>   - Review comments fixed. (Bjorn and Krzysztof)
>   - All comments related fixes like single line comments, spaces
>         between HPA or LGA, periods in single line, changes proposed
>         in the description, etc are fixed. (Bjorn and Krzysztof)
>   - Patches have been split to separate out code moves from
>     update and fixes.
>   - "cdns_...send_irq.." renamed to "cdns_..raise_irq.."
> 
>   The test log on the Orion O6 board is as follows:
>   root@...-localhost:~# lspci
>   0000:c0:00.0 PCI bridge: Device 1f6c:0001
>   0000:c1:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8126 (rev 01)
>   0001:90:00.0 PCI bridge: Device 1f6c:0001
>   0001:91:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM9A1/PM9A3/980PRO
>   0002:60:00.0 PCI bridge: Device 1f6c:0001
>   0002:61:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8126 (rev 01)
>   0003:00:00.0 PCI bridge: Device 1f6c:0001
>   0003:01:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8852BE PCIe 802.11ax Wireless Network Controller
>   0004:30:00.0 PCI bridge: Device 1f6c:0001
>   0004:31:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8125 2.5GbE Controller (rev 05)
>   root@...-localhost:~#
>   root@...-localhost:~# uname -a
>   Linux cix-localhost 6.17.0-rc2-00043-gb2782ead460c #185 SMP PREEMPT Tue Aug 19 19:35:34 CST 2025 aarch64 GNU/Linux
>   root@...-localhost:~# cat /etc/issue
>   Debian GNU/Linux 12 \n \l
> 
> Changes for v7
> https://patchwork.kernel.org/project/linux-pci/cover/20250813042331.1258272-1-hans.zhang@cixtech.com/
> 
>   - Rebase to v6.17-rc1.
>   - Fixed the error issue of cix,sky1-pcie-host.yaml make dt_binding_check.
>   - CIX SKY1 Root Port driver compilation error issue: Add header
>     file, Kconfig select PCI_ECAM.
> 
> Changes for v6
> https://patchwork.kernel.org/project/linux-pci/cover/20250808072929.4090694-1-hans.zhang@cixtech.com/
> 
>   - The IP level DTS changes for HPA have been removed as the SoC
>     level DTS is added
>   - Virtual FPGA platform is also removed as the CiX SoC support is
>     added
>   - Fix the issue of dt bindings
>   - Modify the order of PCIe node attributes in sky1-orion-o6.dts
>     and delete unnecessary attributes.
>   - Continue to simplify the RC driver.
>   - The patch of the Cix Sky1 platform has been accepted and merged into the linux master branch.
>   https://patchwork.kernel.org/project/linux-arm-kernel/cover/20250721144500.302202-1-peter.chen@cixtech.com/
> 
> Changes for v5
> https://patchwork.kernel.org/project/linux-pci/cover/20250630041601.399921-1-hans.zhang@cixtech.com/
> 
>   - Header and code files separated for library functions(common
>     functions used by both architectures) and Legacy and HPA.
>   - Few new files added as part of refactoring
>   - No checks for "is_hpa" as the functions have been separated
>     out
>   - Review comments from previous patches have been addressed
>   - Add region 0 for ECAM and region 1 for message.
>   - Add CIX sky1 PCIe drivers. Submissions based on the following v9 patches:
>   https://patchwork.kernel.org/project/linux-arm-kernel/cover/20250609031627.1605851-1-peter.chen@cixtech.com/
> 
>   Cix Sky1 base dts review link to show its review status:
>   https://lore.kernel.org/all/20250609031627.1605851-9-peter.chen@cixtech.com/
> 
>   The test log on the Orion O6 board is as follows:
>   root@...-localhost:~# lspci
>   0000:c0:00.0 PCI bridge: Device 1f6c:0001
>   0000:c1:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8126 (rev 01)
>   0001:90:00.0 PCI bridge: Device 1f6c:0001
>   0001:91:00.0 Non-Volatile memory controller: Samsung Electronics Co Ltd NVMe SSD Controller PM9A1/PM9A3/980PRO
>   0002:60:00.0 PCI bridge: Device 1f6c:0001
>   0002:61:00.0 Network controller: Realtek Semiconductor Co., Ltd. RTL8852BE PCIe 802.11ax Wireless Network Controller
>   0003:00:00.0 PCI bridge: Device 1f6c:0001
>   0003:01:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8126 (rev 01)
>   0004:30:00.0 PCI bridge: Device 1f6c:0001
>   0004:31:00.0 Ethernet controller: Realtek Semiconductor Co., Ltd. Device 8126 (rev 01)
>   root@...-localhost:~# uname -a
>   Linux cix-localhost 6.16.0-rc1-00023-gbaa962a95a28 #138 SMP PREEMPT Fri Jun 27 16:43:41 CST 2025 aarch64 GNU/Linux
>   root@...-localhost:~# cat /etc/issue
>   Debian GNU/Linux 12 \n \l
>  
> Changes for v4
> https://patchwork.kernel.org/project/linux-pci/cover/20250424010445.2260090-1-hans.zhang@cixtech.com/
> 
>   - Add header file bitfield.h to pcie-cadence.h
>   - Addressed the following review comments
>           Merged the TI patch as it
>           Removed initialization of struct variables to '0'
> 
> Changes for v3
> https://patchwork.kernel.org/project/linux-pci/patch/20250411103656.2740517-1-hans.zhang@cixtech.com/
> 
>   - Patch version v3 added to the subject
>   - Use HPA tag for architecture descriptions
>   - Remove bug related changes to be submitted later as a separate
>     patch
>   - Two patches merged from the last series to ensure readability to
>     address the review comments
>   - Fix several description related issues, coding style issues and
>     some misleading comments
>   - Remove cpu_addr_fixup() functions
> ---
> 
> Hans Zhang (6):
>   dt-bindings: PCI: Add CIX Sky1 PCIe Root Complex bindings
>   PCI: Add Cix Technology Vendor and Device ID
>   PCI: sky1: Add PCIe host support for CIX Sky1
>   MAINTAINERS: add entry for CIX Sky1 PCIe driver
>   arm64: dts: cix: Add PCIe Root Complex on sky1
>   arm64: dts: cix: Enable PCIe on the Orion O6 board
> 
> Manikandan K Pillai (8):
>   PCI: cadence: Add module support for platform controller driver
>   PCI: cadence: Split PCIe controller header file
>   PCI: cadence: Add register definitions for High Perf Architecture
>     (HPA)
>   PCI: cadence: Add helper functions for supporting High Perf
>     Architecture (HPA)
>   PCI: cadence: Move PCIe EP common functions to a separate file
>   PCI: cadence: Move PCIe RP common functions to a separate file
>   PCI: cadence: Add support for High Perf Architecture (HPA) controller
>   PCI: cadence: Update PCIe platform to use register offsets passed
> 
>  .../bindings/pci/cix,sky1-pcie-host.yaml      |  83 +++
>  MAINTAINERS                                   |   7 +
>  arch/arm64/boot/dts/cix/sky1-orion-o6.dts     |  20 +
>  arch/arm64/boot/dts/cix/sky1.dtsi             | 126 ++++
>  drivers/pci/controller/cadence/Kconfig        |  21 +-
>  drivers/pci/controller/cadence/Makefile       |  12 +-
>  drivers/pci/controller/cadence/pci-sky1.c     | 233 +++++++
>  .../cadence/pcie-cadence-ep-common.c          | 253 ++++++++
>  .../cadence/pcie-cadence-ep-common.h          |  38 ++
>  .../pci/controller/cadence/pcie-cadence-ep.c  | 233 +------
>  .../cadence/pcie-cadence-host-common.c        | 182 ++++++
>  .../cadence/pcie-cadence-host-common.h        |  26 +
>  .../cadence/pcie-cadence-host-hpa.c           | 579 ++++++++++++++++++
>  .../controller/cadence/pcie-cadence-host.c    | 156 +----
>  .../cadence/pcie-cadence-hpa-regs.h           | 192 ++++++
>  .../pci/controller/cadence/pcie-cadence-hpa.c | 205 +++++++
>  .../cadence/pcie-cadence-lga-regs.h           | 230 +++++++
>  .../controller/cadence/pcie-cadence-plat.c    |  20 +-
>  drivers/pci/controller/cadence/pcie-cadence.c |  12 +
>  drivers/pci/controller/cadence/pcie-cadence.h | 413 ++++++-------
>  include/linux/pci_ids.h                       |   3 +
>  21 files changed, 2407 insertions(+), 637 deletions(-)
>  create mode 100644 Documentation/devicetree/bindings/pci/cix,sky1-pcie-host.yaml
>  create mode 100644 drivers/pci/controller/cadence/pci-sky1.c
>  create mode 100644 drivers/pci/controller/cadence/pcie-cadence-ep-common.c
>  create mode 100644 drivers/pci/controller/cadence/pcie-cadence-ep-common.h
>  create mode 100644 drivers/pci/controller/cadence/pcie-cadence-host-common.c
>  create mode 100644 drivers/pci/controller/cadence/pcie-cadence-host-common.h
>  create mode 100644 drivers/pci/controller/cadence/pcie-cadence-host-hpa.c
>  create mode 100644 drivers/pci/controller/cadence/pcie-cadence-hpa-regs.h
>  create mode 100644 drivers/pci/controller/cadence/pcie-cadence-hpa.c
>  create mode 100644 drivers/pci/controller/cadence/pcie-cadence-lga-regs.h
> 
> 
> base-commit: b320789d6883cc00ac78ce83bccbfe7ed58afcf0
> -- 
> 2.49.0
> 

-- 
மணிவண்ணன் சதாசிவம்

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ