[PATCH v4 2/9] dt-bindings: PCI: Add ASPEED PCIe RC support
Jacky Chou
jacky_chou at aspeedtech.com
Wed Oct 29 16:43:08 AEDT 2025
Thank you for your reply.
> > + The ASPEED PCIe Root Complex controller provides PCI Express Root
> > +Complex
> > + functionality for ASPEED SoCs, such as the AST2600 and AST2700.
> > + This controller enables connectivity to PCIe endpoint devices,
> > +supporting
> > + memory and I/O windows, MSI and legacy interrupts, and integration
> > +with
> > + the SoC's clock, reset, and pinctrl subsystems. On AST2600, the
> > +PCIe Root
> > + Port device number is always 8.
>
> s/legacy/INTx/
>
Agreed.
> > +properties:
> > + compatible:
> > + enum:
> > + - aspeed,ast2600-pcie
> > + - aspeed,ast2700-pcie
> > +
> > + reg:
> > + maxItems: 1
> > +
> > + ranges:
> > + minItems: 2
> > + maxItems: 2
> > +
> > + interrupts:
> > + maxItems: 1
> > + description: IntX and MSI interrupt
>
> s/IntX/INTx/
>
Agreed.
> > + pcie0: pcie at 1e770000 {
> > + compatible = "aspeed,ast2600-pcie";
> > + device_type = "pci";
> > + reg = <0x1e770000 0x100>;
> > + #address-cells = <3>;
> > + #size-cells = <2>;
> > + interrupts = <GIC_SPI 168 IRQ_TYPE_LEVEL_HIGH>;
> > + bus-range = <0x00 0xff>;
> > +
> > + ranges = <0x01000000 0x0 0x00018000 0x00018000 0x0
> 0x00008000
> > + 0x02000000 0x0 0x60000000 0x60000000 0x0
> 0x20000000>;
> > +
> > + resets = <&syscon ASPEED_RESET_H2X>;
> > + reset-names = "h2x";
> > + pinctrl-0 = <&pinctrl_pcierc1_default>;
> > + pinctrl-names = "default";
> > +
> > + #interrupt-cells = <1>;
> > + msi-controller;
> > +
> > + aspeed,ahbc = <&ahbc>;
> > +
> > + interrupt-map-mask = <0 0 0 7>;
> > + interrupt-map = <0 0 0 1 &pcie_intc0 0>,
> > + <0 0 0 2 &pcie_intc0 1>,
> > + <0 0 0 3 &pcie_intc0 2>,
> > + <0 0 0 4 &pcie_intc0 3>;
> > + legacy-interrupt-controller {
> > + interrupt-controller;
> > + #address-cells = <0>;
> > + #interrupt-cells = <1>;
> > + };
>
> IIUC, Rob says there's no need for a separate interrupt-controller stanza and it
> can be directly in the host bridge [1].
>
> I think that does make interrupt-map a little more verbose because the parent
> unit address will use the host bridge #address-cells (3) instead of the interrupt
> controller #address-cells (0), e.g., this from [2]:
>
> pcie at 10e40000 {
> compatible = "renesas,r9a08g045-pcie";
> #address-cells = <3>;
> #interrupt-cells = <1>;
> interrupt-map = <0 0 0 1 &pcie 0 0 0 0>, /* INTA */
> <0 0 0 2 &pcie 0 0 0 1>, /* INTB */
> <0 0 0 3 &pcie 0 0 0 2>, /* INTC */
> <0 0 0 4 &pcie 0 0 0 3>; /* INTD */
>
> [1]
> https://lore.kernel.org/linux-pci/20250509204905.GA4080349-robh@kernel.or
> g/
> [2]
> https://lore.kernel.org/linux-pci/20251007133657.390523-2-claudiu.beznea.uj
> @bp.renesas.com/
Thank you for your information.
I will modify this part in next version.
Thanks,
Jacky
More information about the openbmc
mailing list