mmc: fsl_esdhc: move 'status' property fixup into a weak function
Move fdt fixup of 'status' property into a weak function. This allows board to define 'status' fdt fixup by themselves. Signed-off-by: Yangbo Lu <yangbo.lu@nxp.com> Reviewed-by: York Sun <york.sun@nxp.com>
This commit is contained in:
		
							parent
							
								
									b595662ab9
								
							
						
					
					
						commit
						fce1e16c55
					
				|  | @ -911,17 +911,26 @@ void mmc_adapter_card_type_ident(void) | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
| #ifdef CONFIG_OF_LIBFDT | #ifdef CONFIG_OF_LIBFDT | ||||||
|  | __weak int esdhc_status_fixup(void *blob, const char *compat) | ||||||
|  | { | ||||||
|  | #ifdef CONFIG_FSL_ESDHC_PIN_MUX | ||||||
|  | 	if (!hwconfig("esdhc")) { | ||||||
|  | 		do_fixup_by_compat(blob, compat, "status", "disabled", | ||||||
|  | 				sizeof("disabled"), 1); | ||||||
|  | 		return 1; | ||||||
|  | 	} | ||||||
|  | #endif | ||||||
|  | 	do_fixup_by_compat(blob, compat, "status", "okay", | ||||||
|  | 			   sizeof("okay"), 1); | ||||||
|  | 	return 0; | ||||||
|  | } | ||||||
|  | 
 | ||||||
| void fdt_fixup_esdhc(void *blob, bd_t *bd) | void fdt_fixup_esdhc(void *blob, bd_t *bd) | ||||||
| { | { | ||||||
| 	const char *compat = "fsl,esdhc"; | 	const char *compat = "fsl,esdhc"; | ||||||
| 
 | 
 | ||||||
| #ifdef CONFIG_FSL_ESDHC_PIN_MUX | 	if (esdhc_status_fixup(blob, compat)) | ||||||
| 	if (!hwconfig("esdhc")) { |  | ||||||
| 		do_fixup_by_compat(blob, compat, "status", "disabled", |  | ||||||
| 				8 + 1, 1); |  | ||||||
| 		return; | 		return; | ||||||
| 	} |  | ||||||
| #endif |  | ||||||
| 
 | 
 | ||||||
| #ifdef CONFIG_FSL_ESDHC_USE_PERIPHERAL_CLK | #ifdef CONFIG_FSL_ESDHC_USE_PERIPHERAL_CLK | ||||||
| 	do_fixup_by_compat_u32(blob, compat, "peripheral-frequency", | 	do_fixup_by_compat_u32(blob, compat, "peripheral-frequency", | ||||||
|  | @ -934,8 +943,6 @@ void fdt_fixup_esdhc(void *blob, bd_t *bd) | ||||||
| 	do_fixup_by_compat_u32(blob, compat, "adapter-type", | 	do_fixup_by_compat_u32(blob, compat, "adapter-type", | ||||||
| 			       (u32)(gd->arch.sdhc_adapter), 1); | 			       (u32)(gd->arch.sdhc_adapter), 1); | ||||||
| #endif | #endif | ||||||
| 	do_fixup_by_compat(blob, compat, "status", "okay", |  | ||||||
| 			   4 + 1, 1); |  | ||||||
| } | } | ||||||
| #endif | #endif | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue