Re: [PATCH v5 2/2] PCI: microchip: rework reg region handing to support using either instance 1 or 2

Krzysztof Wilczyński
2024-11-02T11:59:22Z

Hello,

> > The PCI host controller on PolarFire SoC has multiple "instances", each
> > with their own bridge and ctrl address spaces. The original binding has
> > an "apb" register region, and it is expected to be set to the base
> > address of the host controllers register space. Defines in the driver
> > were used to compute the addresses of the bridge and ctrl address ranges
> > corresponding to instance1. Some customers want to use instance0 however
> > and that requires changing the defines in the driver, which is clearly
> > not a portable solution.
>
> The subject mentions "instance 1 or 2".
>
> This paragraph implies adding support for "instance0" ("customers want
> to use instance0").
>
> The DT patch suggests that we're adding support for "instance2"
> ("customers want to use instance2").
>
> Both patches suggest that the existing support is for "instance 1".
>
> Maybe what's being added is "instance 2", and this commit log should
> s/instance0/instance 2/ ? And probably s/instance1/instance 1/ so the
> style is consistent?
>
> Is this a "pick one or the other but not both" situation, or does this
> device support two independent PCIe controllers?
>
> I first thought this driver supported a single PCIe controller, and
> you were adding support for a second independent controller.
>
> But the fact that you say "the [singular] host controller on
> PolarFire", and you're not changing mc_host_probe() to call
> pci_host_common_probe() more than once makes me think there is only a
> single PCIe controller, and for some reason you can choose to operate
> it using either register set 1 or register set 2.

Conor, let me know if we need to clarify the commit log per Bjorn's
questions. If so, then I will do it directly on the branch.

Krzysztof