linux-mmc.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Dmitry Lifshitz <lifshitz@compulab.co.il>
To: Balaji T K <balajitk@ti.com>
Cc: Andreas Fenkart <afenkart@gmail.com>,
	Tony Lindgren <tony@atomide.com>, Chris Ball <chris@printf.net>,
	Grant Likely <grant.likely@secretlab.ca>,
	Felipe Balbi <balbi@ti.com>,
	zonque@gmail.com, galak@codeaurora.org,
	linux-doc@vger.kernel.org, linux-mmc@vger.kernel.org,
	linux-omap@vger.kernel.org
Subject: Re: [PATCH v9 resend 1/3] mmc: omap_hsmmc: Enable SDIO interrupt
Date: Mon, 24 Mar 2014 11:30:43 +0200	[thread overview]
Message-ID: <532FFB43.5020408@compulab.co.il> (raw)
In-Reply-To: <532C6489.4050307@ti.com>

Hi,

I've tested the branch omap_hsmmc_sdio_irq_devm_cleanup on custom OMAP5 
based board.
We have mwifiex connected to MMC3.

I used two approaches:

* Using dat1 line as GPIO with dynamic remuxing
* Using separate GPIO connected to dat1 with static mux settings

Both works just fine. Thanks Andreas for a great solution.

I have just one issue - how to define GPIO IRQ using DT in OMAP5 case.
As a temporary hack for testing I used a fixed GPIO number and 
gpio_to_irq() call in omap_hsmmc_configure_wake_irq().

OMAP5 MMC3 has the following DT entry (omap5.dtsi):

                 mmc3: mmc@480ad000 {
                         compatible = "ti,omap4-hsmmc";
                         reg = <0x480ad000 0x400>;
                         interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>;
                         ti,hwmods = "mmc3";
                         ti,needs-special-reset;
                         dmas = <&sdma 77>, <&sdma 78>;
                         dma-names = "tx", "rx";
                 };

What should be by board MMC3 setup?

Something like this?

&mmc3 {
         pinctrl-names = "default", "active", "idle";
         pinctrl-0 = <&mmc3_pins>;
         pinctrl-1 = <&mmc3_pins>;
         pinctrl-2 = <&mmc3_cirq_pin>;

         interrupts = <GIC_SPI 94 IRQ_TYPE_LEVEL_HIGH>,
                             <????????>;

         vmmc-supply = <&ldo2_reg>;
         bus-width = <4>;
         ti,non-removable;
};

I tried to specify the second interrupt as (wlsdio_data1 / gpio5_131):

<&gpio5 3 IRQ_TYPE_NONE>

but it fails:

[    2.275777] ------------[ cut here ]------------
[    2.280604] WARNING: CPU: 1 PID: 6 at 
/home/lifshitz/workroot/OMAP5-eewiki/omap5-kernel/kernel/irq/manage.c:1418 
request_threaded_irq+0x11c/0x12c()
[    2.294414] Modules linked in:
[    2.297611] CPU: 1 PID: 6 Comm: kworker/u4:0 Tainted: G W    
3.14.0-rc4-cm-t54-test-suit+ #30
[    2.307165] Workqueue: deferwq deferred_probe_work_func
[    2.312629] [<c001597c>] (unwind_backtrace) from [<c001283c>] 
(show_stack+0x10/0x14)
[    2.320739] [<c001283c>] (show_stack) from [<c06494dc>] 
(dump_stack+0x70/0x88)
[    2.328294] [<c06494dc>] (dump_stack) from [<c003a520>] 
(warn_slowpath_common+0x70/0x88)
[    2.336761] [<c003a520>] (warn_slowpath_common) from [<c003a554>] 
(warn_slowpath_null+0x1c/0x24)
[    2.345940] [<c003a554>] (warn_slowpath_null) from [<c0083ce4>] 
(request_threaded_irq+0x11c/0x12c)
[    2.355312] [<c0083ce4>] (request_threaded_irq) from [<c0085964>] 
(devm_request_threaded_irq+0x5c/0x90)
[    2.361973] mmc1: host does not support reading read-only switch. 
assuming write-enable.
[    2.362020] mmc1: new SDHC card at address e624
[    2.362331] mmcblk1: mmc1:e624 SU08G 7.40 GiB
[    2.368152]  mmcblk1: p1 p2
[    2.385850] [<c0085964>] (devm_request_threaded_irq) from 
[<c047d958>] (omap_hsmmc_configure_wake_irq+0x7c/0xfc)
[    2.393150] usb 1-2: New USB device found, idVendor=0424, idProduct=3503
[    2.393156] usb 1-2: New USB device strings: Mfr=0, Product=0, 
SerialNumber=0
[    2.393674] hub 1-2:1.0: USB hub found
[    2.393769] hub 1-2:1.0: 3 ports detected
[    2.419038] [<c047d958>] (omap_hsmmc_configure_wake_irq) from 
[<c047ea28>] (omap_hsmmc_probe+0x5b4/0x854)
[    2.429052] [<c047ea28>] (omap_hsmmc_probe) from [<c0359ec0>] 
(platform_drv_probe+0x18/0x48)
[    2.437879] [<c0359ec0>] (platform_drv_probe) from [<c03580c8>] 
(really_probe+0x80/0x208)
[    2.446427] [<c03580c8>] (really_probe) from [<c0358360>] 
(driver_probe_device+0x30/0x48)
[    2.454976] [<c0358360>] (driver_probe_device) from [<c0356a58>] 
(bus_for_each_drv+0x5c/0x88)
[    2.463891] [<c0356a58>] (bus_for_each_drv) from [<c03582f4>] 
(device_attach+0x80/0xa0)
[    2.472247] [<c03582f4>] (device_attach) from [<c03577b4>] 
(bus_probe_device+0x84/0xa8)
[    2.480617] [<c03577b4>] (bus_probe_device) from [<c0357bb8>] 
(deferred_probe_work_func+0x68/0x98)
[    2.489987] [<c0357bb8>] (deferred_probe_work_func) from [<c00533c0>] 
(process_one_work+0x150/0x41c)
[    2.499542] [<c00533c0>] (process_one_work) from [<c0053d10>] 
(worker_thread+0xf4/0x31c)
[    2.508011] [<c0053d10>] (worker_thread) from [<c0059994>] 
(kthread+0xd4/0xe8)
[    2.512785] usb 1-3: new high-speed USB device number 3 using ehci-omap
[    2.522474] [<c0059994>] (kthread) from [<c000e878>] 
(ret_from_fork+0x14/0x3c)
[    2.530023] ---[ end trace 8d60f1d3adba88d7 ]---


Regards,

Dmitry

On 03/21/2014 06:10 PM, Balaji T K wrote:
> On Friday 21 March 2014 05:50 PM, Andreas Fenkart wrote:
>
> Thanks Andreas for the patch series
>
> I rebased against latest mmc-next, made few changes to your patch.
> I have hosted your series along with devm cleanups on a branch[1] for 
> testing
> [1]
> git://git.ti.com/~balajitk/ti-linux-kernel/omap-hsmmc.git 
> omap_hsmmc_sdio_irq_devm_cleanup
>
> Can you please test on your platform and provide feedback.
>
> Details about the changes below.


  reply	other threads:[~2014-03-24  9:31 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-03-21 12:20 [PATCH v9 resend 0/3] mmc: omap_hsmmc: Enable SDIO IRQ Andreas Fenkart
2014-03-21 12:20 ` [PATCH v9 resend 1/3] mmc: omap_hsmmc: Enable SDIO interrupt Andreas Fenkart
2014-03-21 16:10   ` Balaji T K
2014-03-24  9:30     ` Dmitry Lifshitz [this message]
2014-04-18 16:46       ` Tony Lindgren
2014-03-21 16:17   ` [PATCH 0/9] mmc: omap_hsmmc: convert to use devm_* and enable sdio irq Balaji T K
2014-03-21 16:17     ` [PATCH 1/9] mmc: omap_hsmmc: use devm_clk_get Balaji T K
2014-03-21 16:17     ` [PATCH 2/9] mmc: omap_hsmmc: use devm_request_irq Balaji T K
2014-03-21 16:17     ` [PATCH 3/9] mmc: omap_hsmmc: use devm_request_threaded_irq Balaji T K
2014-03-21 16:17     ` [PATCH 4/9] mmc: omap_hsmmc: use devm_request_mem_region Balaji T K
2014-03-21 16:18       ` Felipe Balbi
2014-03-21 16:27         ` Balaji T K
2014-03-21 16:30           ` Felipe Balbi
2014-03-21 16:17     ` [PATCH 5/9] mmc: omap_hsmmc: use devm_ioremap Balaji T K
2014-03-21 16:17     ` [PATCH 6/9] mmc: omap_hsmmc: Enable SDIO interrupt Balaji T K
2014-03-24 12:43       ` Ulf Hansson
2014-03-24 14:59         ` Andreas Fenkart
2014-03-24 16:02           ` Ulf Hansson
2014-03-24 16:34             ` Andreas Fenkart
2014-03-25  8:07               ` Ulf Hansson
2014-03-25 15:19                 ` Balaji T K
2014-03-30 22:43                   ` Andreas Fenkart
2014-03-21 16:17     ` [PATCH 7/9] mmc: omap_hsmmc: Pin remux workaround to support SDIO interrupt on AM335x Balaji T K
2014-03-21 16:17     ` [PATCH 8/9] mmc: omap_hsmmc: Extend debugfs for SDIO IRQ, GPIO and pinmux Balaji T K
2014-03-21 16:17     ` [PATCH 9/9] mmc: omap_hsmmc: enable wakeup event for sdio Balaji T K
2014-05-02 15:33       ` Balaji T K
2014-03-21 12:20 ` [PATCH v9 resend 2/3] mmc: omap_hsmmc: Pin remux workaround to support SDIO interrupt on AM335x Andreas Fenkart
2014-03-21 12:20 ` [PATCH v9 resend 3/3] mmc: omap_hsmmc: Extend debugfs for SDIO IRQ, GPIO and pinmux Andreas Fenkart

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=532FFB43.5020408@compulab.co.il \
    --to=lifshitz@compulab.co.il \
    --cc=afenkart@gmail.com \
    --cc=balajitk@ti.com \
    --cc=balbi@ti.com \
    --cc=chris@printf.net \
    --cc=galak@codeaurora.org \
    --cc=grant.likely@secretlab.ca \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-mmc@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=tony@atomide.com \
    --cc=zonque@gmail.com \
    /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;
as well as URLs for NNTP newsgroup(s).