[U-Boot] [PATCH 1/3] spl: mmc: fix switch statement
Max Krummenacher
max.oss.09 at gmail.com
Sat Oct 15 21:18:18 CEST 2016
Hi Marek
Am Samstag, den 15.10.2016, 19:29 +0200 schrieb Marek Vasut:
> On 10/15/2016 07:10 PM, Max Krummenacher wrote:
> > If CONFIG_SPL_LIBCOMMON_SUPPORT is not defined there is a lone case
> > statement
> > at the end of the switch leading to a compile error.
> > Remove the offending case statement.
> >
> > > common/spl/spl_mmc.c:339:7: error: label at end of compound
> > > statement
> >
> > Signed-off-by: Max Krummenacher <max.krummenacher at toradex.com>
> > ---
> >
> > common/spl/spl_mmc.c | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/common/spl/spl_mmc.c b/common/spl/spl_mmc.c
> > index c674e61..367b4e4 100644
> > --- a/common/spl/spl_mmc.c
> > +++ b/common/spl/spl_mmc.c
> > @@ -342,7 +342,6 @@ static int spl_mmc_load_image(struct
> > spl_image_info *spl_image,
> > return err;
> >
> > break;
> > - case MMCSD_MODE_UNDEFINED:
>
> This patch is wrong -- in case CONFIG_SPL_LIBCOMMON_SUPPORT is
> enabled
> and mode is MMCSD_MODE_UNDEFINED, the message in the puts() below
> would
> be printed. After applying this change, the message won't be printed
I disagree.
With CONFIG_SPL_LIBCOMMON_SUPPORT we had something like this:
switch(bar) {
...
case foo:
default:
put("bla\n");
}
as 'case foo:' falls through into 'default:' removing the specific case
does not change anything.
Regards
Max
> The fix is probably something like:
>
> case foo:
> default:
> #ifdef CONFIG_BAR
> puts();
> #endif
> break;
>
> > #ifdef CONFIG_SPL_LIBCOMMON_SUPPORT
> > default:
> > puts("spl: mmc: wrong boot mode\n");
> >
>
More information about the U-Boot
mailing list