Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1751521AbdFFKuI (ORCPT ); Tue, 6 Jun 2017 06:50:08 -0400 Received: from smtp.codeaurora.org ([198.145.29.96]:47858 "EHLO smtp.codeaurora.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751388AbdFFKuH (ORCPT ); Tue, 6 Jun 2017 06:50:07 -0400 MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII; format=flowed Content-Transfer-Encoding: 7bit Date: Tue, 06 Jun 2017 16:20:06 +0530 From: kgunda@codeaurora.org To: Stephen Boyd Cc: Abhijeet Dharmapurikar , Subbaraman Narayanamurthy , Christophe JAILLET , David Collins , linux-kernel@vger.kernel.org, linux-arm-msm@vger.kernel.org, adharmap@quicinc.com, aghayal@qti.qualcomm.com, linux-arm-msm-owner@vger.kernel.org Subject: Re: [PATCH V1 05/15] spmi: pmic-arb: cleanup unrequested irqs In-Reply-To: <20170531015753.GW20170@codeaurora.org> References: <1496147943-25822-1-git-send-email-kgunda@codeaurora.org> <1496147943-25822-6-git-send-email-kgunda@codeaurora.org> <20170531015753.GW20170@codeaurora.org> Message-ID: <67dbf9dd211f4a8703e1076ba0818044@codeaurora.org> User-Agent: Roundcube Webmail/1.2.5 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1450 Lines: 30 On 2017-05-31 07:27, Stephen Boyd wrote: > On 05/30, Kiran Gunda wrote: >> From: Abhijeet Dharmapurikar >> >> We see a unmapped irqs trigger right around bootup. This could >> likely be because the bootloader exited leaving the interrupts >> in an unknown or unhandled state. Ack and mask the interrupt >> if one is found. A request_irq later will unmask it and also >> setup proper mapping structures. > > Do we have systems where this is causing an interrupt storm due > to a level high interrupt or something? Just plain acking and > masking irqs at boot if we don't have an irq descriptor created > yet doesn't sound like a good idea, because we'll lose all > interrupts that happen before this driver probes? > Yes. There were instances of an interrupt storm without this patch. There is an RT_STATUS register in the peripheral address space which maintains the real time state and can be read by the client driver before it registers for the irq. Few client drivers such as charger already doing this. >> >> Also the current driver ensures that no read/write transaction >> is in progress while it makes changes to the interrupt regions. >> This is not necessary because read/writes over spmi and arbiter >> interrupt control are independent operations. Hence, remove the >> synchronized accesses to interrupt region. > > That's another patch for this paragraph. This patch is already pulled in to Greg's tree.