> > The only generic interface to execute asynchronously in the BH context is > > tasklet; however, it's marked deprecated and has some design flaws. To > > replace tasklets, BH workqueue support was recently added. A BH workqueue > > behaves similarly to regular workqueues except that the queued work items > > are executed in the BH context. > > > > This patch converts drivers/mmc/* from tasklet to BH workqueue. > > > > Based on the work done by Tejun Heo <tj@xxxxxxxxxx> > > > > Tested-by: Christian Loehle <christian.loehle@xxxxxxx> > > Tested-by: Aubin Constans <aubin.constans@xxxxxxxxxxxxx> > > Acked-by: Aubin Constans <aubin.constans@xxxxxxxxxxxxx> > > Acked-by: Michał Mirosław <mirq-linux@xxxxxxxxxxxx> > > Reviewed-by: Christian Loehle <christian.loehle@xxxxxxx> > > Signed-off-by: Allen Pais <allen.lkml@xxxxxxxxx> > > --- > > v2: > > - fixed patch styling issues > > - rename work to bh_work > > > > Link to v1: > > https://lore.kernel.org/all/20240327160314.9982-10-apais@xxxxxxxxxxxxxxxxxxx/ > > > > [SNIP] > > > diff --git a/drivers/mmc/host/sdhci-bcm-kona.c b/drivers/mmc/host/sdhci-bcm-kona.c > > index cb9152c6a65d..9c215db81b2b 100644 > > --- a/drivers/mmc/host/sdhci-bcm-kona.c > > +++ b/drivers/mmc/host/sdhci-bcm-kona.c > > @@ -107,7 +107,7 @@ static void sdhci_bcm_kona_sd_init(struct sdhci_host *host) > > * Software emulation of the SD card insertion/removal. Set insert=1 for insert > > * and insert=0 for removal. The card detection is done by GPIO. For Broadcom > > * IP to function properly the bit 0 of CORESTAT register needs to be set/reset > > - * to generate the CD IRQ handled in sdhci.c which schedules card_tasklet. > > + * to generate the CD IRQ handled in sdhci.c which schedules card_bh_work. > > The comment was stale because sdhci.c has not had a card_tasklet for > a long time. Just drop the " which schedules card_tasklet" > Will do. Thanks. - Allen > > */ > > static int sdhci_bcm_kona_sd_card_emulate(struct sdhci_host *host, int insert) > > { > -- - Allen