[PATCH v2 1/4] PCI: rcar-gen4: Configure AXIINTC if iMSI-RX not used
Marek Vasut
marek.vasut at mailbox.org
Wed Jul 1 13:43:41 PDT 2026
On 6/30/26 8:04 PM, Geert Uytterhoeven wrote:
Hello Geert,
>> +static int rcar_gen4_pcie_host_msi_addr(struct dw_pcie_rp *pp, u32 *msi_addr)
>> +{
>> + struct dw_pcie *dw = to_dw_pcie_from_pp(pp);
>> + struct device_node *msi_node = NULL;
>> + struct device *dev = dw->dev;
>> + struct resource res;
>> + u64 addr;
>> + int ret;
>> +
>> + /*
>> + * Either the "msi-parent" or the "msi-map" phandle needs to exist
>> + * to obtain the MSI node.
>> + */
>> + of_msi_xlate(dev, &msi_node, 0);
>> + if (!msi_node)
>> + return -ENODEV;
>
> This is not backwards-compatible with existing DTBs.
> I noticed because PCIe is broken on Gray Hawk Single with R-Car V4M
> after this series. Indeed, "[PATCH v2 4/4] arm64: dts: renesas:
> r8a779g0: Add GICv3 ITS and update PCIe nodes" only covers R-Car V4H,
> but not R-Car S4-8 and R-Car V4M.
Thank you for spotting this, and, this code is not supposed to be
reached. It turns out, pp->use_imsi_rx is not assigned yet in the .init
callback. I hope this is addressed in V3 with a new patch:
[PATCH v3 1/5] PCI: dwc: Determine whether iMSI is used before calling .init
More information about the linux-arm-kernel
mailing list