[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <038801d76984$f672b0b0$e3581210$@m2i.co.kr>
Date: Fri, 25 Jun 2021 14:43:01 +0900
From: "Kwon Tae-young" <tykwon@....co.kr>
To: "'Ulf Hansson'" <ulf.hansson@...aro.org>
Cc: "'linux-mmc'" <linux-mmc@...r.kernel.org>,
"'Linux Kernel Mailing List'" <linux-kernel@...r.kernel.org>
Subject: RE: [PATCH] mmc: core: Added support for LED trigger only when SD card is connected
> > diff --git a/drivers/mmc/core/core.c b/drivers/mmc/core/core.c index
> > f194940c5974..b3156f6c5cfa 100644
> > --- a/drivers/mmc/core/core.c
> > +++ b/drivers/mmc/core/core.c
> > @@ -352,7 +352,11 @@ int mmc_start_request(struct mmc_host *host,
> struct mmc_request *mrq)
> > if (err)
> > return err;
> >
> > - led_trigger_event(host->led, LED_FULL);
> > + if (host->ops->get_cd)
>
> No, this is not the right thing to do. Invoking the ->get_cd() callback,
> for every request is suboptimal and would likely have effects on
> performance.
>
> Moreover, I wonder how big an issue it is to use the led here. If the
> card is being removed, the request will fail anyway, so the led should
> soon stop flashing anyway, right?
Thanks for the feedback.
When I think about it, it seems that an error should be returned from the mmc_card_removed() function when the SD card is removed.
However, in my current board, no error is returned from mmc_card_removed().
I'm guessing it's because of the NULL in the mmc_sd_remove() function in drivers/mmc/core/sd.c , but I'm not sure.
I think it was clumsy because I was a newbie unfamiliar with mmc drivers. :)
I'll take a closer look.
Regards,
Kwon
Powered by blists - more mailing lists