mirror of
				git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
				synced 2025-10-31 08:44:41 +00:00 
			
		
		
		
	msi: Introduce default_[teardown|setup]_msi_irqs with fallback.
Introduce an override for the arch_[teardown|setup]_msi_irqs that can be utilized to fallback to the default arch_* code. If a platform wants to utilize the code paths defined in driver/pci/msi.c it has to define HAVE_DEFAULT_MSI_TEARDOWN_IRQS or HAVE_DEFAULT_MSI_SETUP_IRQS. Otherwise the old mechanism of over-ridding the arch_* works fine. Signed-off-by: Konrad Rzeszutek Wilk <konrad.wilk@oracle.com> Cc: x86@kernel.org
This commit is contained in:
		
							parent
							
								
									7c94def89a
								
							
						
					
					
						commit
						1525bf0d8f
					
				
					 1 changed files with 12 additions and 2 deletions
				
			
		|  | @ -35,7 +35,12 @@ int arch_msi_check_device(struct pci_dev *dev, int nvec, int type) | |||
| #endif | ||||
| 
 | ||||
| #ifndef arch_setup_msi_irqs | ||||
| int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) | ||||
| # define arch_setup_msi_irqs default_setup_msi_irqs | ||||
| # define HAVE_DEFAULT_MSI_SETUP_IRQS | ||||
| #endif | ||||
| 
 | ||||
| #ifdef HAVE_DEFAULT_MSI_SETUP_IRQS | ||||
| int default_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) | ||||
| { | ||||
| 	struct msi_desc *entry; | ||||
| 	int ret; | ||||
|  | @ -60,7 +65,12 @@ int arch_setup_msi_irqs(struct pci_dev *dev, int nvec, int type) | |||
| #endif | ||||
| 
 | ||||
| #ifndef arch_teardown_msi_irqs | ||||
| void arch_teardown_msi_irqs(struct pci_dev *dev) | ||||
| # define arch_teardown_msi_irqs default_teardown_msi_irqs | ||||
| # define HAVE_DEFAULT_MSI_TEARDOWN_IRQS | ||||
| #endif | ||||
| 
 | ||||
| #ifdef HAVE_DEFAULT_MSI_TEARDOWN_IRQS | ||||
| void default_teardown_msi_irqs(struct pci_dev *dev) | ||||
| { | ||||
| 	struct msi_desc *entry; | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
	Add table
		
		Reference in a new issue
	
	 Thomas Gleixner
						Thomas Gleixner