forked from Mirrors/opensbi
		
	lib: sbi: Override domain boot HART when coldboot HART assigned to it
If coldboot HART is assigned to a domain then we should use coldboot HART as the boot HART of the domain. This allows coldboot HART to continue boot sequence even when it is assigned to some non-root domain. Signed-off-by: Anup Patel <anup.patel@wdc.com> Reviewed-by: Alistair Francis <alistair.francis@wdc.com> Reviewed-by: Atish Patra <atish.patra@wdc.com>
This commit is contained in:
		@@ -395,6 +395,17 @@ int sbi_domain_finalize(struct sbi_scratch *scratch, u32 cold_hartid)
 | 
			
		||||
						&tdom->assigned_harts);
 | 
			
		||||
			hartid_to_domain_table[i] = dom;
 | 
			
		||||
			sbi_hartmask_set_hart(i, &dom->assigned_harts);
 | 
			
		||||
 | 
			
		||||
			/*
 | 
			
		||||
			 * If cold boot HART is assigned to this domain then
 | 
			
		||||
			 * override boot HART of this domain.
 | 
			
		||||
			 */
 | 
			
		||||
			if (i == cold_hartid &&
 | 
			
		||||
			    dom->boot_hartid != cold_hartid) {
 | 
			
		||||
				sbi_printf("Domain%d Boot HARTID forced to"
 | 
			
		||||
					   " %d\n", dom->index, cold_hartid);
 | 
			
		||||
				dom->boot_hartid = cold_hartid;
 | 
			
		||||
			}
 | 
			
		||||
		}
 | 
			
		||||
	}
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user