lkml.org 
[lkml]   [2021]   [Sep]   [19]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH v3 00/10] PCI: Add support for Apple M1
Thanks for giving this another push, the changes look great. The series
is

Tested-by: Alyssa Rosenzweig <alyssa@rosenzweig.io>

On Mon, Sep 13, 2021 at 07:25:40PM +0100, Marc Zyngier wrote:
> I have resumed my earlier effort to bring the Apple-M1 into the world
> of living by equipping it with a PCIe controller driver. Huge thanks
> to Alyssa Rosenzweig for kicking it into shape and providing the first
> two versions of this series.
>
> Much has changed since v2[2]. Mark Kettenis is doing a great job with
> the binding [0], so I have dropped that from the series, and strictly
> focused on the Linux side of thing. I am now using this binding as is,
> with the exception of a single line change, which I believe is a fix
> [1].
>
> Supporting the per-port interrupt controller has brought in a couple
> of fixes for the core DT code. Also, some work has gone into dealing
> with excluding the MSI page from the IOVA range, as well as
> programming the RID-to-SID mapper.
>
> Overall, the driver is now much cleaner and most probably feature
> complete when it comes to supporting internal devices (although I
> haven't investigated things like power management). TB support is
> another story, and will require some more hacking.
>
> This of course still depends on the clock and pinctrl drivers that are
> otherwise in flight, and will affect this driver one way or another.
> I have pushed a branch with all the dependencies (and more) at [3].
>
> * From v2 [2]:
> - Refactor DT parsing to match the new version of the binding
> - Add support for INTx and port-private interrupts
> - Signal link-up/down using interrupts
> - Export of_phandle_args_to_fwspec
> - Fix generic parsing of interrupt map
> - Rationalise port setup (data structure, self discovery)
> - Tell DART to exclude MSI doorbell from the IOVA mappings
> - Get rid of the setup bypass if the link was found up on boot
> - Prevent the module from being removed
> - Program the RID-to-SID mapper on device discovery
> - Rebased on 5.15-rc1
>
> [0] https://lore.kernel.org/r/20210827171534.62380-1-mark.kettenis@xs4all.nl
> [1] https://lore.kernel.org/r/871r5tcwhp.wl-maz@kernel.org
> [2] https://lore.kernel.org/r/20210816031621.240268-1-alyssa@rosenzweig.io
> [3] https://git.kernel.org/pub/scm/linux/kernel/git/maz/arm-platforms.git/log/?h=hack/m1-pcie-v3
>
> Alyssa Rosenzweig (2):
> PCI: apple: Add initial hardware bring-up
> PCI: apple: Set up reference clocks when probing
>
> Marc Zyngier (8):
> irqdomain: Make of_phandle_args_to_fwspec generally available
> of/irq: Allow matching of an interrupt-map local to an interrupt
> controller
> PCI: of: Allow matching of an interrupt-map local to a pci device
> PCI: apple: Add INTx and per-port interrupt support
> arm64: apple: t8103: Add root port interrupt routing
> PCI: apple: Implement MSI support
> iommu/dart: Exclude MSI doorbell from PCIe device IOVA range
> PCI: apple: Configure RID to SID mapper on device addition
>
> MAINTAINERS | 7 +
> arch/arm64/boot/dts/apple/t8103.dtsi | 33 +-
> drivers/iommu/apple-dart.c | 25 +
> drivers/of/irq.c | 17 +-
> drivers/pci/controller/Kconfig | 17 +
> drivers/pci/controller/Makefile | 1 +
> drivers/pci/controller/pcie-apple.c | 818 +++++++++++++++++++++++++++
> drivers/pci/of.c | 10 +-
> include/linux/irqdomain.h | 4 +
> kernel/irq/irqdomain.c | 6 +-
> 10 files changed, 925 insertions(+), 13 deletions(-)
> create mode 100644 drivers/pci/controller/pcie-apple.c
>
> --
> 2.30.2
>

\
 
 \ /
  Last update: 2021-09-19 14:02    [W:0.157 / U:1.552 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site