
-----Original Message----- From: york sun Sent: Friday, January 13, 2017 1:09 AM To: Y.B. Lu; u-boot@lists.denx.de Subject: Re: [v3, 1/3] mmc: fsl_esdhc: move 'status' property fixup into a weak function
On 01/11/2017 05:42 PM, Y.B. Lu wrote:
Hi York,
Any comments on this patchset? Thanks a lot.
You didn't CC me for this set. I didn't notice them in the list. See comment below.
Best regards, Yangbo Lu
-----Original Message----- From: Yangbo Lu [mailto:yangbo.lu@nxp.com] Sent: Thursday, December 08, 2016 11:42 AM To: u-boot@lists.denx.de Cc: york sun; Y.B. Lu Subject: [v3, 1/3] 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
Changes for v2:
- None
Changes for v3:
- None
drivers/mmc/fsl_esdhc.c | 21 ++++++++++++++------- 1 file changed, 14 insertions(+), 7 deletions(-)
diff --git a/drivers/mmc/fsl_esdhc.c b/drivers/mmc/fsl_esdhc.c index 9796d39..68de04e 100644 --- a/drivers/mmc/fsl_esdhc.c +++ b/drivers/mmc/fsl_esdhc.c @@ -908,17 +908,26 @@ void mmc_adapter_card_type_ident(void) #endif
#ifdef CONFIG_OF_LIBFDT -void fdt_fixup_esdhc(void *blob, bd_t *bd) +__weak int esdhc_status_fixup(void *blob, const char *compat) {
- const char *compat = "fsl,esdhc";
#ifdef CONFIG_FSL_ESDHC_PIN_MUX if (!hwconfig("esdhc")) { do_fixup_by_compat(blob, compat, "status", "disabled",
8 + 1, 1);
return;
sizeof("disabled"), 1);
return 1;
What's your intention for the non-zero return? It is not considered an error, is it?
[Lu Yangbo-B47093] I intend to get non-zero return when there is no esdhc with 'okay' status. Then the following fixup could be dropped.
} #endif
- do_fixup_by_compat(blob, compat, "status", "okay",
sizeof("okay"), 1);
- return 0;
+}
+void fdt_fixup_esdhc(void *blob, bd_t *bd) {
- const char *compat = "fsl,esdhc";
- if (esdhc_status_fixup(blob, compat))
return;
With non-zero return, following code will be skipped. This is the same as code flow before this change. What are you going to do with the new board-level function?
[Lu Yangbo-B47093] As I said, if we 'disabled' the status, the following fixup could be dropped. The new board-level function is for some specific boards which have some hardware issue of esdhc. We need to check board hardware in board-level function first and decide to enable it or not.
Review comment continues on other patches in this set.
York