forked from Mirrors/opensbi
		
	lib: utils/irqchip: Use sbi_domain_root_add_memrange() for APLIC
The sbi_domain_root_add_memrange() should be preferred for creating multiple memregions over a range. Update APLIC driver to use sbi_domain_root_add_memrange() instead of explicitly registering memregions. Signed-off-by: Anup Patel <apatel@ventanamicro.com> Reviewed-by: Samuel Holland <samuel.holland@sifive.com>
This commit is contained in:
		@@ -169,7 +169,6 @@ int aplic_cold_irqchip_init(struct aplic_data *aplic)
 | 
			
		||||
{
 | 
			
		||||
	int rc;
 | 
			
		||||
	u32 i, j, tmp;
 | 
			
		||||
	struct sbi_domain_memregion reg;
 | 
			
		||||
	struct aplic_delegate_data *deleg;
 | 
			
		||||
	u32 first_deleg_irq, last_deleg_irq;
 | 
			
		||||
 | 
			
		||||
@@ -268,12 +267,10 @@ int aplic_cold_irqchip_init(struct aplic_data *aplic)
 | 
			
		||||
	    ((first_deleg_irq < last_deleg_irq) &&
 | 
			
		||||
	    (last_deleg_irq == aplic->num_source) &&
 | 
			
		||||
	    (first_deleg_irq == 1))) {
 | 
			
		||||
		sbi_domain_memregion_init(aplic->addr, aplic->size,
 | 
			
		||||
					  (SBI_DOMAIN_MEMREGION_MMIO |
 | 
			
		||||
					   SBI_DOMAIN_MEMREGION_M_READABLE |
 | 
			
		||||
					   SBI_DOMAIN_MEMREGION_M_WRITABLE),
 | 
			
		||||
					  ®);
 | 
			
		||||
		rc = sbi_domain_root_add_memregion(®);
 | 
			
		||||
		rc = sbi_domain_root_add_memrange(aplic->addr, aplic->size, PAGE_SIZE,
 | 
			
		||||
						  SBI_DOMAIN_MEMREGION_MMIO |
 | 
			
		||||
						  SBI_DOMAIN_MEMREGION_M_READABLE |
 | 
			
		||||
						  SBI_DOMAIN_MEMREGION_M_WRITABLE);
 | 
			
		||||
		if (rc)
 | 
			
		||||
			return rc;
 | 
			
		||||
	}
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user