From: Jeremy Jongepier <jeremy@autostatic.com>
To: linux-rt-users@vger.kernel.org
Subject: Re: Searching a Bug on Raspberry Pi
Date: Thu, 04 Jul 2013 12:45:16 +0200 [thread overview]
Message-ID: <51D5523C.3060605@autostatic.com> (raw)
In-Reply-To: <51CFB71F.5090401@schorsch-tech.de>
[-- Attachment #1: Type: text/plain, Size: 788 bytes --]
On 06/30/2013 06:42 AM, Georg Gast wrote:
> Hi Tom,
>
> the problem occurs even if i set enable_llm=0. The while loop is now not
> touched and the rpi deadlocks too.
>
> As far as i understand it, the sdhci.c is the base for all sdhci card
> readers and the sdhci-*.c implement the ops for the specific hardware.
>
> My problem is, that i dont have an other sdhci card reader here. It wont
> be possible to boot from, but i could try to read from it on a rt
> kernel. If i compile the sdhci_bcm2708 as a module, i could not get a
> device info from the rpi reader. Maybe an other reader works, then the
> real problem sits in sdhci_bcm2708.c (or at bad luck, it shows an bigger
> problem in sdhci.c).
>
> Georg
>
Here's a quick and dirty hack to get things going.
Regards,
Jeremy
[-- Attachment #2: sdhci.c.diff --]
[-- Type: text/x-patch, Size: 1092 bytes --]
--- linux/drivers/mmc/host/sdhci.c 2013-07-03 11:54:06.306455988 +0200
+++ linux-rt/drivers/mmc/host/sdhci.c 2013-07-03 16:49:33.298601044 +0200
@@ -162,9 +162,17 @@
preempt_schedule();
}
spin_lock_irqsave(&host->lock,*flags);
+#ifdef CONFIG_PREEMPT_RT_FULL
+ disable_irq_nosync(host->irq);
+#else
disable_irq(host->irq);
+#endif
if(host->second_irq)
+#ifdef CONFIG_PREEMPT_RT_FULL
+ disable_irq_nosync(host->second_irq);
+#else
disable_irq(host->second_irq);
+#endif
local_irq_enable();
}
else
@@ -1834,7 +1842,11 @@
host = mmc_priv(mmc);
sdhci_runtime_pm_get(host);
+#ifdef CONFIG_PREEMPT_RT_FULL
+ disable_irq_nosync(host->irq);
+#else
disable_irq(host->irq);
+#endif
spin_lock(&host->lock);
ctrl = sdhci_readw(host, SDHCI_HOST_CONTROL2);
@@ -1935,7 +1947,11 @@
wait_event_interruptible_timeout(host->buf_ready_int,
(host->tuning_done == 1),
msecs_to_jiffies(50));
+#ifdef CONFIG_PREEMPT_RT_FULL
+ disable_irq_nosync(host->irq);
+#else
disable_irq(host->irq);
+#endif
spin_lock(&host->lock);
if (!host->tuning_done) {
next prev parent reply other threads:[~2013-07-04 10:45 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-06-29 20:14 Searching a Bug on Raspberry Pi Georg Gast
[not found] ` <CAFSh4Uz7B8L5Y0nsp1bW4pgPkyqHtXDSM0R-PiRLZQfd+URFYw@mail.gmail.com>
2013-06-30 4:42 ` Georg Gast
2013-07-04 10:45 ` Jeremy Jongepier [this message]
-- strict thread matches above, loose matches on Subject: below --
2013-06-29 18:28 Georg Gast
2013-07-04 12:14 ` Kirill Tkhai
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=51D5523C.3060605@autostatic.com \
--to=jeremy@autostatic.com \
--cc=linux-rt-users@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox