On Fri, Mar 17, 2017 at 09:25:32AM +0000, Jon Hunter wrote: > Commit a8e326a911d3 ("mmc: tegra: implement module external clock change") > implemented the SDHCI 'set_clock' handler for Tegra in order to change > the module clock for the Tegra SDHCI controller by using the common > clock framework API clk_set_rate(). The problem is the clk_set_rate() > may sleep and the 'set_clock' handler is always called from within the > context of a spinlock. Hence, occasionally, 'scheduling while atomic' > errors are seen. Fix this by moving the setting of the module clock to > the new 'set_parent_clock' handler which is not called from within the > context of a spinlock. > > Fixes: a8e326a911d3 ("mmc: tegra: implement module external clock change") > > Signed-off-by: Jon Hunter <jonathanh@xxxxxxxxxx> > --- > > Changes since V1: > - None > > drivers/mmc/host/sdhci-tegra.c | 15 ++++++++++++--- > 1 file changed, 12 insertions(+), 3 deletions(-) Reviewed-by: Thierry Reding <treding@xxxxxxxxxx>
Attachment:
signature.asc
Description: PGP signature