Hello Doug, On 08/08/2014 10:54 PM, Doug Anderson wrote: > Hi, >> >> To fix the issue a variation of patch [0] will be posted that moves the IRQ >> pinmux setup from .irq_set_type to the .irq_request_resources function handler. >> That way the pin will be setup as IRQ regardless of the the trigger type [1] >> when someone calls request_[threaded]_irq(). >> >> Only the mentioned patch fixes the issue but Tomasz said that even a call to >> gpio_direction_{input,output} can change the pin configuration so he will post >> another patch that will add a bit mask to samsung_pin_bank to prevent any pinmux >> reconfiguration. > > Would just making a device tree change fix this? AKA for the pin, do: > > samsung,pin-function = <0xf>; > Yes, when configuring the pin as 0xf (GPIO interrupt) instead of 0x0 (GPIO input) the issue is not present indeed. So after Nick answer my question about what I got wrong with the "linux,gpio-keymap" property, I will change the pin function when re-posing the DTS changes for the atmel touchpad. > I have some vague recollection that I set interrupts to pin-function > "0" by default for some reason (assuming they would go to 0xf when > interrupts were enabled). ...but I can't for the life of me remember > if it was a good reason or just seemed like the right thing to do. > It would be great to know if there is a good reason. I see indeed that all pinctrl setup in the Peach Pit/Pi and Snow DTS that involves interrupts are using 0x0 as the pin function. Since as Tomasz explained Samsung SoC makes a difference between GPIO-IRQ and GPIO input I guess that it's better to change those to 0xf instead. What do you think? Regardless of this though I think that both the patch to move the IRQ pinmux setup from .irq_set_type to the .irq_request_resources and the patch to to prevent any pinmux reconfiguration are good improvements to avoid future issues like the one we found here. > -Doug > Best regards, Javier -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html