PCI: cleanup Function Level Reset
This patch enhances the FLR functions:
  1) remove disable_irq() so the shared IRQ won't be disabled.
  2) replace the 1s wait with 100, 200 and 400ms wait intervals
     for the Pending Transaction.
  3) replace mdelay() with msleep().
  4) add might_sleep().
  5) lock the device to prevent PM suspend from accessing the CSRs
     during the reset.
  6) coding style fixes.
Reviewed-by: Kenji Kaneshige <kaneshige.kenji@jp.fujitsu.com>
Signed-off-by: Yu Zhao <yu.zhao@intel.com>
Signed-off-by: Jesse Barnes <jbarnes@virtuousgeek.org>
	
	
This commit is contained in:
		
					parent
					
						
							
								c465def6bf
							
						
					
				
			
			
				commit
				
					
						8c1c699fec
					
				
			
		
					 3 changed files with 84 additions and 82 deletions
				
			
		| 
						 | 
				
			
			@ -702,8 +702,8 @@ int pcix_get_mmrbc(struct pci_dev *dev);
 | 
			
		|||
int pcix_set_mmrbc(struct pci_dev *dev, int mmrbc);
 | 
			
		||||
int pcie_get_readrq(struct pci_dev *dev);
 | 
			
		||||
int pcie_set_readrq(struct pci_dev *dev, int rq);
 | 
			
		||||
int __pci_reset_function(struct pci_dev *dev);
 | 
			
		||||
int pci_reset_function(struct pci_dev *dev);
 | 
			
		||||
int pci_execute_reset_function(struct pci_dev *dev);
 | 
			
		||||
void pci_update_resource(struct pci_dev *dev, int resno);
 | 
			
		||||
int __must_check pci_assign_resource(struct pci_dev *dev, int i);
 | 
			
		||||
int pci_select_bars(struct pci_dev *dev, unsigned long flags);
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue