forked from Mirrors/opensbi
		
	lib: sbi: Improve get_feature_str() implementation and usage
We do following improvements for get_feature_str(): 1. We should return "none" from get_feature_str() no features available instead of sbi_boot_prints() explicitly handling failure. 2. We don't need to return failure (just like misa_xlen()) because we are returning "none" for no features and we are truncating output when space is not available. 3. Based on 1 and 2, the sbi_boot_prints() can be further simplified. 4. No need for two char[] in sbi_boot_prints() Signed-off-by: Anup Patel <anup.patel@wdc.com> Reviewed-by: Atish Patra <atish.patra@wdc.com>
This commit is contained in:
		@@ -43,7 +43,7 @@ int  sbi_hart_pmp_check_addr(struct sbi_scratch *scratch, unsigned long daddr,
 | 
			
		||||
			     unsigned long attr);
 | 
			
		||||
bool sbi_hart_has_feature(u32 hartid, unsigned long feature);
 | 
			
		||||
unsigned long sbi_hart_get_features(u32 hartid);
 | 
			
		||||
int sbi_hart_get_features_str(u32 hartid, char *features_str, int nfstr);
 | 
			
		||||
void sbi_hart_get_features_str(u32 hartid, char *features_str, int nfstr);
 | 
			
		||||
 | 
			
		||||
void __attribute__((noreturn)) sbi_hart_hang(void);
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
@@ -244,10 +244,9 @@ u32 sbi_platform_hart_index(const struct sbi_platform *plat, u32 hartid);
 | 
			
		||||
 *		       updated
 | 
			
		||||
 * @param nfstr length of the features_str. The feature string will be truncated
 | 
			
		||||
 *		if nfstr is not long enough.
 | 
			
		||||
 * @return the features value currently set for the given platform
 | 
			
		||||
 */
 | 
			
		||||
int sbi_platform_get_features_str(const struct sbi_platform *plat,
 | 
			
		||||
				  char *features_str, int nfstr);
 | 
			
		||||
void sbi_platform_get_features_str(const struct sbi_platform *plat,
 | 
			
		||||
				   char *features_str, int nfstr);
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * Get name of the platform
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user