[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140422115123.GO30677@intel.com>
Date: Tue, 22 Apr 2014 14:51:23 +0300
From: Mika Westerberg <mika.westerberg@...ux.intel.com>
To: Jin Yao <yao.jin@...ux.intel.com>
Cc: linus.walleij@...aro.org, alan@...ux.intel.com,
mathias.nyman@...el.com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH] pinctrl-baytrail: fix for irq descriptor conflict on
ASUS T100TA
On Wed, Apr 16, 2014 at 08:05:59PM +0800, Jin Yao wrote:
> A crash is triggered on the ASUS T100TA Baytrail-T because of a irq
> descriptor conflict. There are two gpio triggered acpi events in this
> device, GPIO 6 and 18. These gpios are translated to irqs by calling
> gpio_to_irq which in turn will call irq_create_mapping(vg->domain, offset).
> irq_create_mapping will take care of allocating the irq descriptor, taking
> the first available number starting from the given value (6 in our case).
> The 0-15 are already reserved by legacy ISA code, so it gets the first
> free irq descriptor which is number 16. The i915 driver also uses irq 16,
> it loads later than gpio and crashes in probe.
>
> The bug is reported here:
> https://bugzilla.kernel.org/show_bug.cgi?id=68291
>
> The rootcause we know now is a low level irq issue. It needs a long term
> solution to fix the issue in irq system.
>
> This patch changes the Baytrail GPIO driver to avoid the irq descriptor
> conflict. It still uses the irq domain to allocate irq descriptor but start
> from a predefined irq base number (256) to avoid the conflict.
>
> Signed-off-by: Jin Yao <yao.jin@...ux.intel.com>
I'm getting following warnings when compiling this:
drivers/pinctrl/pinctrl-baytrail.c: In function ‘byt_gpio_probe’:
drivers/pinctrl/pinctrl-baytrail.c:512:4: warning: passing argument 3 of
‘kstrtol’ from incompatible pointer type [enabled by default]
ret = kstrtol(range->name, 10, &i);
^
In file included from drivers/pinctrl/pinctrl-baytrail.c:22:0:
include/linux/kernel.h:301:32: note: expected ‘long int *’ but argument is
of type ‘int *’
static inline int __must_check kstrtol(const char *s, unsigned int base, long *res)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists