forked from Mirrors/opensbi
		
	lib: sbi_pmu: keep overflow interrupt of stopped hpm counter disabled
After the hardware hpm counter is stopped, it should not raise any new interrupt as it is already stopped. So add the hw_counter_disable_irq callback to allow the custom pmu device to control this behavior. Signed-off-by: Inochi Amaoto <inochiama@outlook.com> Reviewed-by: Guo Ren <guoren@kernel.org> Reviewed-by: Anup Patel <anup@brainfault.org> Tested-by: Samuel Holland <samuel@sholland.org>
This commit is contained in:
		
				
					committed by
					
						
						Anup Patel
					
				
			
			
				
	
			
			
			
						parent
						
							c9a296d0ed
						
					
				
				
					commit
					901d3d7bff
				
			@@ -482,6 +482,9 @@ static int pmu_ctr_stop_hw(uint32_t cidx)
 | 
			
		||||
	if (!__test_bit(cidx, &mctr_inhbt)) {
 | 
			
		||||
		__set_bit(cidx, &mctr_inhbt);
 | 
			
		||||
		csr_write(CSR_MCOUNTINHIBIT, mctr_inhbt);
 | 
			
		||||
		if (pmu_dev && pmu_dev->hw_counter_disable_irq) {
 | 
			
		||||
			pmu_dev->hw_counter_disable_irq(cidx);
 | 
			
		||||
		}
 | 
			
		||||
		return 0;
 | 
			
		||||
	} else
 | 
			
		||||
		return SBI_EALREADY_STOPPED;
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user