[PATCH RFC net-next 5/5] net: ionic: Set msi_addr_mask to IONIC_ADDR_LEN-bit everywhere

Creeley, Brett bcreeley at amd.com
Wed Jan 7 05:37:50 AEDT 2026



On 12/23/2025 7:10 PM, Vivian Wang wrote:
> Caution: This message originated from an External Source. Use proper caution when opening attachments, clicking links, or responding.
>
>
> The code was originally written using no_64bit_msi, which restricts the
> device to 32-bit MSI addresses.
>
> Since msi_addr_mask is introduced, use DMA_BIT_MASK(IONIC_ADDR_LEN)
> instead of DMA_BIT_MASK(32) here for msi_addr_mask, describing the
> restriction more precisely and allowing these devices to work on
> platforms with MSI doorbell address above 32-bit space, as long as it is
> within the hardware's addressable space.
>
> Also remove #ifdef CONFIG_PPC64 wrapped around it, since this is a
> hardware restriction and not a platform one.
>
> Signed-off-by: Vivian Wang <wangruikang at iscas.ac.cn>
>
> ---
>
> RFC because net-next is closed
>
> pensando maintainers: I don't know if this is the actual restriction,
> and do not have any Pensando device to test this. Please help with
> checking this.  Thanks.
> ---
>   drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c | 4 +---
>   1 file changed, 1 insertion(+), 3 deletions(-)
>
> diff --git a/drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c b/drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c
> index 0671deae9a28..16133537c535 100644
> --- a/drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c
> +++ b/drivers/net/ethernet/pensando/ionic/ionic_bus_pci.c
> @@ -329,10 +329,8 @@ static int ionic_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
>                  goto err_out;
>          }
>
> -#ifdef CONFIG_PPC64
>          /* Ensure MSI/MSI-X interrupts lie within addressable physical memory */
> -       pdev->msi_addr_mask = DMA_BIT_MASK(32);
> -#endif
> +       pdev->msi_addr_mask = DMA_BIT_MASK(IONIC_ADDR_LEN);

I'm not sure that our device has MSI address limitations. I am getting 
an answer to this locally, but we might only be limited in the DMA 
address space.

I will get back on this as quickly as possible.

Thanks,

Brett
>
>          err = ionic_setup_one(ionic);
>          if (err)
>
> --
> 2.51.2
>



More information about the Linuxppc-dev mailing list