From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754554AbbHQJkU (ORCPT ); Mon, 17 Aug 2015 05:40:20 -0400 Received: from bear.ext.ti.com ([192.94.94.41]:49952 "EHLO bear.ext.ti.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751331AbbHQJkT (ORCPT ); Mon, 17 Aug 2015 05:40:19 -0400 Message-ID: <55D1ABF8.1070809@ti.com> Date: Mon, 17 Aug 2015 12:40:08 +0300 From: Grygorii Strashko User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:31.0) Gecko/20100101 Thunderbird/31.8.0 MIME-Version: 1.0 To: Linus Walleij CC: Alexandre Courbot , Linux-OMAP , "linux-gpio@vger.kernel.org" , Sekhar Nori , "linux-kernel@vger.kernel.org" , Geert Uytterhoeven , Roger Quadros Subject: Re: [PATCH] gpiolib: irqchip: use different lockdep class for each gpio irqchip References: <1439477919-24356-1-git-send-email-grygorii.strashko@ti.com> In-Reply-To: Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 08/14/2015 03:34 PM, Linus Walleij wrote: > On Thu, Aug 13, 2015 at 4:58 PM, Grygorii Strashko > wrote: > >> Since IRQ chip helpers were introduced drivers lose ability to >> register separate lockdep classes for each registered GPIO IRQ >> chip and the gpiolib now is using shared lockdep class for >> all GPIO IRQ chips (gpiochip_irq_lock_class). >> As result, lockdep will produce warning when there are min two >> stacked GPIO chips and all of them are interrupt controllers. >> >> HW configuration which generates lockdep warning (TI dra7-evm): > (...) >> >> Cc: Geert Uytterhoeven >> Cc: Roger Quadros >> Reported-by: Roger Quadros >> Signed-off-by: Grygorii Strashko > > Ah, I see... > > >> * implies that if the chip supports IRQs, these IRQs need to be threaded >> * as the chip access may sleep when e.g. reading out the IRQ status >> * registers. >> + * @exported: flags if the gpiochip is exported for use from sysfs. Private. >> * @irq_not_threaded: flag must be set if @can_sleep is set but the >> * IRQs don't need to be threaded >> * >> @@ -126,6 +128,7 @@ struct gpio_chip { >> irq_flow_handler_t irq_handler; >> unsigned int irq_default_type; >> int irq_parent; >> + struct lock_class_key *lock_key; > > There is something weird with the kerneldoc. It is documenting something > else but not documenting the new member. > Sorry, for that. There are no kerneldocs for any of GPIO IRQ chip's specific fields, Do you prefer me to add doc for "lock_key" or all of them? -- regards, -grygorii