Re: [PATCH v3 14/24] genirq/gic-v3-mbi: Remove unused wired MSI mechanics

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 14 Jun 2024 11:23:53 +0100,
Shivamurthy Shastri <shivamurthy.shastri@xxxxxxxxxxxxx> wrote:
> 
> From: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> 
> Nothing builds a platform_device MSI domain for wire to MSI on top of
> this. The "regular" users of the platform MSI domain just provide their own
> irq_write_msi_msg() callback.
> 
> Signed-off-by: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> Signed-off-by: Anna-Maria Behnsen <anna-maria@xxxxxxxxxxxxx>
> Signed-off-by: Shivamurthy Shastri <shivamurthy.shastri@xxxxxxxxxxxxx>
> Cc: Thomas Gleixner <tglx@xxxxxxxxxxxxx>
> Cc: Marc Zyngier <maz@xxxxxxxxxx>
> ---
>  drivers/irqchip/irq-gic-v3-mbi.c | 17 +----------------
>  1 file changed, 1 insertion(+), 16 deletions(-)
> 
> diff --git a/drivers/irqchip/irq-gic-v3-mbi.c b/drivers/irqchip/irq-gic-v3-mbi.c
> index dbb8b1efda44..19298cc6c2ee 100644
> --- a/drivers/irqchip/irq-gic-v3-mbi.c
> +++ b/drivers/irqchip/irq-gic-v3-mbi.c
> @@ -199,31 +199,16 @@ static int mbi_allocate_pci_domain(struct irq_domain *nexus_domain,
>  }
>  #endif
>  
> -static void mbi_compose_mbi_msg(struct irq_data *data, struct msi_msg *msg)
> -{
> -	mbi_compose_msi_msg(data, msg);
> -
> -	msg[1].address_hi = upper_32_bits(mbi_phys_base + GICD_CLRSPI_NSR);
> -	msg[1].address_lo = lower_32_bits(mbi_phys_base + GICD_CLRSPI_NSR);
> -	msg[1].data = data->parent_data->hwirq;
> -
> -	iommu_dma_compose_msi_msg(irq_data_get_msi_desc(data), &msg[1]);
> -}
> -
>  /* Platform-MSI specific irqchip */
>  static struct irq_chip mbi_pmsi_irq_chip = {
>  	.name			= "pMSI",
> -	.irq_set_type		= irq_chip_set_type_parent,
> -	.irq_compose_msi_msg	= mbi_compose_mbi_msg,
> -	.flags			= IRQCHIP_SUPPORTS_LEVEL_MSI,
>  };
>  
>  static struct msi_domain_ops mbi_pmsi_ops = {
>  };
>  
>  static struct msi_domain_info mbi_pmsi_domain_info = {
> -	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS |
> -		   MSI_FLAG_LEVEL_CAPABLE),
> +	.flags	= (MSI_FLAG_USE_DEF_DOM_OPS | MSI_FLAG_USE_DEF_CHIP_OPS),
>  	.ops	= &mbi_pmsi_ops,
>  	.chip	= &mbi_pmsi_irq_chip,
>  };

This patch doesn't do what it says. It simply kills any form of level
MSI support for *endpoints*, and has nothing to do with any sort of
"wire to MSI".

What replaces it?

	M.

-- 
Without deviation from the norm, progress is not possible.




[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux