Am 28.07.2013 21:06, schrieb Javier Martinez Canillas:
On Sun, Jul 28, 2013 at 8:22 PM, Linus Walleij <linus.wall...@linaro.org> wrote:
On Sun, Jul 28, 2013 at 7:33 PM, Javier Martinez Canillas
<martinez.jav...@gmail.com> wrote:

According to Documentation/devicetree/bindings/mmc/mmc.txt:

cd-gpios: Specify GPIOs for card detection, see gpio binding

So it just says that it is a GPIO for card detection and not an IRQ so
this assumption comes from either the omap_hsmmc driver or Alexander'
DTS is missing something like:

                 interrupt-parent = <&gpio6>;
                 interrupts = <16 8>;

What do the values 16 and 8 mean here? GPIO numbers?
And where do I have to place that?

I've now tried the following:

--
&mmc1 {
        vmmc-supply = <&vmmcsd_fixed>;
        status = "okay";
        pinctrl-names = "default";
        pinctrl-0 = <&mmc1_pins>; /* pinmux for GPIO0__6 */
        interrupt-parent = <&gpio0>;
        interrupts = <6>;
        cd-gpios = <&gpio0 6 GPIO_ACTIVE_HIGH>;
        cd-inverted;
};
--
(the gpio which should be used for the IRQ is GPIO0_6)

The result was that the gpio_request() failed with -EBUSY.
Then I've commented out that, because it isn't necessary anymore as the
gpio should be set as input automatically (as I've understood the commit
msg).

The result was

[    1.397100] genirq: Flags mismatch irq 144. 00002003 (mmc0) vs.
00000000 (mmc0)

and request_threaded_irq() returned with -EBUSY.


To stop that discussion about some "non-standard" dts I'm using (I wonder where the standard is), I try to formulate a clear question:

If a driver uses
--
irq = gpio_to_irq(some_gpio_number);
/*
gpio_request();
gpio_direction_input();
*/
request_threaded_irq(irq);
--

How should the dts or the driver be changed that this works with 3.11-rc2?

Regards,

Alexander Holler
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to