From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.5 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED, USER_AGENT_SANE_2 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 83087C432C0 for ; Tue, 19 Nov 2019 22:30:05 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id 51BDD22449 for ; Tue, 19 Nov 2019 22:30:05 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=lists.infradead.org header.i=@lists.infradead.org header.b="aKsSuzKj" DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 51BDD22449 Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=kernel.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-ID:Subject:To:From:Date:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=jsHVC0ZJWkiaBvt9NxtM9H7VwuD+1NJI7A0zOXf7t6A=; b=aKsSuzKjR/lR0z zTGH5sqmjof2ZUQy4UZ6HbSQklf6qzbhh3OMYpX32JxuWI4N3r5kG/O4U5qN+QE7zRsJSosk2kB4r V2OxsE71YxXsnxIBHOkX8uVRpLAgDrGB9X081ndBNYFpW1aphofXb9IzTHu2rLfSn/laFf6H6hRjM lSmNsFPaVG0mggP9CReURunLOTm0AKKkikm7/0gKY71mwXUHb2bA7f1n9O1GUgvA3d9KcRniGp/aa s4h44KEWXhA0Z+qd1BZDZSF7yFCinh/zVg27UGt29eHq5BWoSao6ZHJcwdVveQnipQs0Tbd4KOdwj NOEGGuTrqNwLQjNF7gzQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.92.3 #3 (Red Hat Linux)) id 1iXC0Z-00071N-Ri; Tue, 19 Nov 2019 22:30:03 +0000 Received: from inca-roads.misterjones.org ([213.251.177.50]) by bombadil.infradead.org with esmtps (Exim 4.92.3 #3 (Red Hat Linux)) id 1iXC0W-0006qI-9O; Tue, 19 Nov 2019 22:30:01 +0000 Received: from 78.163-31-62.static.virginmediabusiness.co.uk ([62.31.163.78] helo=why) by cheepnis.misterjones.org with esmtpsa (TLSv1.2:AES256-GCM-SHA384:256) (Exim 4.80) (envelope-from ) id 1iXC0T-0002Ng-JU; Tue, 19 Nov 2019 23:29:57 +0100 Date: Tue, 19 Nov 2019 22:29:56 +0000 From: Marc Zyngier To: Andreas =?UTF-8?Q?F=C3=A4rber?= Subject: Re: [PATCH v4 2/8] irqchip: Add Realtek RTD1295 mux driver Message-ID: <20191119222956.23665e5d@why> In-Reply-To: References: <20191119021917.15917-1-afaerber@suse.de> <20191119021917.15917-3-afaerber@suse.de> Organization: Approximate X-Mailer: Claws Mail 3.17.4 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 X-SA-Exim-Connect-IP: 62.31.163.78 X-SA-Exim-Rcpt-To: afaerber@suse.de, linux-realtek-soc@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernelrocks@gmail.com, james.tai@realtek.com, tglx@linutronix.de, jason@lakedaemon.net X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on cheepnis.misterjones.org); SAEximRunCond expanded to false X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20191119_143000_471224_694E6ECC X-CRM114-Status: GOOD ( 12.80 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: James Tai , Aleix Roca Nonell , linux-realtek-soc@lists.infradead.org, linux-kernel@vger.kernel.org, Thomas Gleixner , linux-arm-kernel@lists.infradead.org, Jason Cooper Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: base64 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+infradead-linux-arm-kernel=archiver.kernel.org@lists.infradead.org T24gVHVlLCAxOSBOb3YgMjAxOSAyMTo1Njo0OCArMDEwMApBbmRyZWFzIEbDpHJiZXIgPGFmYWVy YmVyQHN1c2UuZGU+IHdyb3RlOgoKPiBBbSAxOS4xMS4xOSB1bSAxMzowMSBzY2hyaWViIE1hcmMg WnluZ2llcjoKPiA+IE9uIDIwMTktMTEtMTkgMDI6MTksIEFuZHJlYXMgRsOkcmJlciB3cm90ZTog IAo+ID4+ICtzdGF0aWMgdm9pZCBydGQxMTk1X211eF9lbmFibGVfaXJxKHN0cnVjdCBpcnFfZGF0 YSAqZGF0YSkKPiA+PiArewo+ID4+ICvCoMKgwqAgc3RydWN0IHJ0ZDExOTVfaXJxX211eF9kYXRh ICptdXhfZGF0YSA9Cj4gPj4gaXJxX2RhdGFfZ2V0X2lycV9jaGlwX2RhdGEoZGF0YSk7Cj4gPj4g K8KgwqDCoCB1bnNpZ25lZCBsb25nIGZsYWdzOwo+ID4+ICvCoMKgwqAgdTMyIG1hc2s7Cj4gPj4g Kwo+ID4+ICvCoMKgwqAgbWFzayA9IG11eF9kYXRhLT5pbmZvLT5pc3JfdG9faW50X2VuX21hc2tb ZGF0YS0+aHdpcnFdOwo+ID4+ICvCoMKgwqAgaWYgKCFtYXNrKQo+ID4+ICvCoMKgwqDCoMKgwqDC oCByZXR1cm47ICAKPiA+IAo+ID4gSG93IGNhbiB0aGlzIGhhcHBlbj8gWW91J3ZlIG1hcHBlZCB0 aGUgaW50ZXJydXB0LCBzbyBpdCBleGlzdHMuCj4gPiBJIGNhbid0IHNlZSBob3cgeW91IGNhbiBk ZWNpZGUgdG8gZmFpbCBzdWNoIGVuYWJsZS4gIAo+IAo+IFRoZSBbVU1TS19dSVNSIGJpdHMgYW5k IHRoZSBTQ1BVX0lOVF9FTiBiaXRzIGFyZSBub3QgKGFsbCkgdGhlIHNhbWUuCj4gCj4gTXkgLi4u X2lzcl90b19zY3B1X2ludF9lbltdIGFycmF5cyBoYXZlIDMyIGVudHJpZXMgZm9yIE8oMSkgbG9v a3VwLCBidXQKPiBhcmUgc3BhcnNlbHkgcG9wdWxhdGVkLiBTbyB0aGVyZSBhcmUgY2lyY3Vtc3Rh bmNlcyBzdWNoIGFzIFdET0dfTk1JIGFzCj4gd2VsbCBhcyByZXNlcnZlZCBiaXRzIHRoYXQgd2Ug Y2Fubm90IGVuYWJsZS4KCkJ1dCB0aGUgeW91IHNob3VsZCBoYXZlIGZhaWxlZCB0aGUgbWFwLiBU aGUgbW9tZW50IHlvdSBhbGxvdyB0aGUKbWFwcGluZyB0byBvY2N1ciwgeW91IGhhdmUgYWNjZXB0 ZWQgdGhlIGNvbnRyYWN0IHRoYXQgdGhpcyBpbnRlcnJ1cHQgaXMKdXNhYmxlLgoKPiBUaGlzIGNo ZWNrIHNob3VsZCBiZQo+IGlkZW50aWNhbCB0byB2MzsgdGhlIGVxdWl2YWxlbnQgbWFzayBjaGVj ayBpbnNpZGUgdGhlIGludGVycnVwdCBoYW5kbGVyCj4gd2FzIGV4dGVuZGVkIHdpdGggIm1hc2sg JiYiIHRvIGRvIHRoZSBzYW1lIGluIHRoaXMgdjQuCgpTcHVyaW91cyBpbnRlcnJ1cHRzIGFyZSBh IGRpZmZlcmVudCBtYXR0ZXIuIFdoYXQgSSdtIG9iamVjdGluZyB0byBoZXJlCmlzIGEgc2ltcGxl IHF1ZXN0aW9uIG9mIGxvZ2ljLCB3aGV0aGVyIG9yIG5vdCB5b3UgYXJlIGFsbG93ZWQgdG8gZmFp bAplbmFibGluZyBhbiBpbnRlcnJ1cHQgdGhhdCB5b3UndmUgb3RoZXJ3aXNlIGFsbG93ZWQgdG8g YmUgcG9wdWxhdGVkLgogCglNLgotLSAKSmF6eiBpcyBub3QgZGVhZC4gSXQganVzdCBzbWVsbHMg ZnVubnkuLi4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f CmxpbnV4LWFybS1rZXJuZWwgbWFpbGluZyBsaXN0CmxpbnV4LWFybS1rZXJuZWxAbGlzdHMuaW5m cmFkZWFkLm9yZwpodHRwOi8vbGlzdHMuaW5mcmFkZWFkLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2xp bnV4LWFybS1rZXJuZWwK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-2.6 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED,USER_AGENT_SANE_2 autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 01066C432C3 for ; Tue, 19 Nov 2019 22:30:02 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id C699D22449 for ; Tue, 19 Nov 2019 22:30:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=default; t=1574202601; bh=uof2dJFEEcUQ1D6TFhVx7qJFmPUWdTGkUmc5EasLIHs=; h=Date:From:To:Cc:Subject:In-Reply-To:References:List-ID:From; b=IXm8ziAnE4W7WJvKKYTw6nuKTjy/BT/OQ3jYqptpWsLC03XpNg/GvWLcoOwK/t8lA VeHRPpUA4uQs5aaErbjrCieZq8nhW7QM1osdtX4YOQ+26QjdlrqNHHNZyYoK621FbU OZSFy4gqp5yzQZVEbNlgtn2nz0j+IThD7S69ix6w= Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727212AbfKSWaA convert rfc822-to-8bit (ORCPT ); Tue, 19 Nov 2019 17:30:00 -0500 Received: from inca-roads.misterjones.org ([213.251.177.50]:41727 "EHLO inca-roads.misterjones.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726196AbfKSWaA (ORCPT ); Tue, 19 Nov 2019 17:30:00 -0500 Received: from 78.163-31-62.static.virginmediabusiness.co.uk ([62.31.163.78] helo=why) by cheepnis.misterjones.org with esmtpsa (TLSv1.2:AES256-GCM-SHA384:256) (Exim 4.80) (envelope-from ) id 1iXC0T-0002Ng-JU; Tue, 19 Nov 2019 23:29:57 +0100 Date: Tue, 19 Nov 2019 22:29:56 +0000 From: Marc Zyngier To: Andreas =?UTF-8?Q?F=C3=A4rber?= Cc: linux-realtek-soc@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Aleix Roca Nonell , James Tai , Thomas Gleixner , Jason Cooper Subject: Re: [PATCH v4 2/8] irqchip: Add Realtek RTD1295 mux driver Message-ID: <20191119222956.23665e5d@why> In-Reply-To: References: <20191119021917.15917-1-afaerber@suse.de> <20191119021917.15917-3-afaerber@suse.de> Organization: Approximate X-Mailer: Claws Mail 3.17.4 (GTK+ 2.24.32; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8BIT X-SA-Exim-Connect-IP: 62.31.163.78 X-SA-Exim-Rcpt-To: afaerber@suse.de, linux-realtek-soc@lists.infradead.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, kernelrocks@gmail.com, james.tai@realtek.com, tglx@linutronix.de, jason@lakedaemon.net X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on cheepnis.misterjones.org); SAEximRunCond expanded to false Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Tue, 19 Nov 2019 21:56:48 +0100 Andreas Färber wrote: > Am 19.11.19 um 13:01 schrieb Marc Zyngier: > > On 2019-11-19 02:19, Andreas Färber wrote: > >> +static void rtd1195_mux_enable_irq(struct irq_data *data) > >> +{ > >> +    struct rtd1195_irq_mux_data *mux_data = > >> irq_data_get_irq_chip_data(data); > >> +    unsigned long flags; > >> +    u32 mask; > >> + > >> +    mask = mux_data->info->isr_to_int_en_mask[data->hwirq]; > >> +    if (!mask) > >> +        return; > > > > How can this happen? You've mapped the interrupt, so it exists. > > I can't see how you can decide to fail such enable. > > The [UMSK_]ISR bits and the SCPU_INT_EN bits are not (all) the same. > > My ..._isr_to_scpu_int_en[] arrays have 32 entries for O(1) lookup, but > are sparsely populated. So there are circumstances such as WDOG_NMI as > well as reserved bits that we cannot enable. But the you should have failed the map. The moment you allow the mapping to occur, you have accepted the contract that this interrupt is usable. > This check should be > identical to v3; the equivalent mask check inside the interrupt handler > was extended with "mask &&" to do the same in this v4. Spurious interrupts are a different matter. What I'm objecting to here is a simple question of logic, whether or not you are allowed to fail enabling an interrupt that you've otherwise allowed to be populated. M. -- Jazz is not dead. It just smells funny...