|
|
Log in / Subscribe / Register

riscv: sophgo Add PCIe support to Sophgo SG2044 SoC

From:  Inochi Amaoto <inochiama-AT-gmail.com>
To:  Lorenzo Pieralisi <lpieralisi-AT-kernel.org>, Krzysztof WilczyƄski <kw-AT-linux.com>, Manivannan Sadhasivam <manivannan.sadhasivam-AT-linaro.org>, Rob Herring <robh-AT-kernel.org>, Bjorn Helgaas <bhelgaas-AT-google.com>, Krzysztof Kozlowski <krzk+dt-AT-kernel.org>, Conor Dooley <conor+dt-AT-kernel.org>, Chen Wang <unicorn_wang-AT-outlook.com>, Inochi Amaoto <inochiama-AT-gmail.com>, Paul Walmsley <paul.walmsley-AT-sifive.com>, Palmer Dabbelt <palmer-AT-dabbelt.com>, Albert Ou <aou-AT-eecs.berkeley.edu>, Johan Hovold <johan+linaro-AT-kernel.org>, Shashank Babu Chinta Venkata <quic_schintav-AT-quicinc.com>, Niklas Cassel <cassel-AT-kernel.org>
Subject:  [PATCH 0/2] riscv: sophgo Add PCIe support to Sophgo SG2044 SoC
Date:  Tue, 04 Mar 2025 15:12:36 +0800
Message-ID:  <20250304071239.352486-1-inochiama@gmail.com>
Cc:  linux-pci-AT-vger.kernel.org, devicetree-AT-vger.kernel.org, sophgo-AT-lists.linux.dev, linux-kernel-AT-vger.kernel.org, linux-riscv-AT-lists.infradead.org, Yixun Lan <dlan-AT-gentoo.org>, Longbin Li <looong.bin-AT-gmail.com>
Archive-link:  Article

Sophgo's SG2044 SoC uses Synopsys Designware PCIe core
to implement RC mode.

For legacy interrupt, the PCIe controller on SG2044 implement
its own legacy interrupt controller. For MSI/MSI-X, it use an
external interrupt controller to handle.

The external MSI interrupt controller patch can be found on [1].
As SG2044 needs a mirror change to support the way to send MSI
message and different irq number.

[1] https://lore.kernel.org/all/20250303111648.1337543-1-inoc...

Changed from v1:
- https://lore.kernel.org/all/20250221013758.370936-1-inoch...
1. patch 1: remove dma-coherent property
2. patch 2: remove unused reset
3. patch 2: fix Kconfig menu title and reorder the entry
4. patch 2: use FIELD_GET/FIELD_PREP to simplify the code.
5. patch 2: rename the irq handle function to match the irq_chip name

Inochi Amaoto (2):
  dt-bindings: pci: Add Sophgo SG2044 PCIe host
  PCI: sophgo-dwc: Add Sophgo SG2044 PCIe driver

 .../bindings/pci/sophgo,sg2044-pcie.yaml      | 122 ++++++++
 drivers/pci/controller/dwc/Kconfig            |  10 +
 drivers/pci/controller/dwc/Makefile           |   1 +
 drivers/pci/controller/dwc/pcie-dw-sophgo.c   | 270 ++++++++++++++++++
 4 files changed, 403 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/pci/sophgo,sg2044-pcie.yaml
 create mode 100644 drivers/pci/controller/dwc/pcie-dw-sophgo.c

--
2.48.1




Copyright © 2025, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds