[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