Received: by 2002:a05:6358:7058:b0:131:369:b2a3 with SMTP id 24csp2208294rwp; Fri, 14 Jul 2023 02:32:11 -0700 (PDT) X-Google-Smtp-Source: APBJJlHB2LseHhwJB1imSFkQQ2nEKFZGd836SH9UJJIJ1jMgUuX6FcO4V94gA261pHwiz0UCd01J X-Received: by 2002:a05:6512:5c9:b0:4f9:6535:a56 with SMTP id o9-20020a05651205c900b004f965350a56mr3037779lfo.26.1689327130783; Fri, 14 Jul 2023 02:32:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1689327130; cv=none; d=google.com; s=arc-20160816; b=K27Gn6K5XL+77V3fZMsdIsN+d+zFeMz0NdICSgy2edP1X8NMjx/wg3zYQSl91M06V4 clm1xZxucXgw4BlSUsxcMBI28qTh+9QQmFsS5F/Fwkpfyqn5EC71ZwSUfz33/6M+4kNe hQADWWH5hXpiuNUgLHqQxRB1bQvMOCX9zv1zb8gzseF41Qx6uqn0VrK6DySHt/16/oTR pvGT9e9YWSPzK1YqjBxk2opsA064sDNGJxxia5FmeW6tas2C9zrAYYjJNqSjedptCTkr R/+V+R/0jcOsa+et+OfbtN4aou++OJOhC25AXlzalvD0vwlb0CRjPjgpMjXjXnOTnDNY P5vw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:subject:cc:to:from:message-id :date:dkim-signature; bh=Z0jU1D1e3BxJ0u6DXVeDnToWRhiHmep8/VeTI4pH3/A=; fh=bQ4mVXHrSEInpfSkqcvo02kfqvZZEjo4mPNssESnMS4=; b=k+//P2D0+UuaQ2Kw9Y+f04/ntj396ZZDDBlEHlkIUbYpH7656v6wZoQRCS6Z5bIr6M gtPHH3ntTVUVv5pHC15CHQ/Y3YO4LANARV2lsY+0YsdbIycTydUtu2tXu7WN7Q/s5A8w y//ILQnEFb8cX090cdE/lMffUiPqfR4O8yg406cB5fNcbXVt9qwo7fLZ5wkW4iMCH9mO NYnWilm0qbZVtB8Dy4Qf3IcPdoin4WJS+UGs1NxdYopSIZ8H5NKeYwgzH4VTKbKf6mz6 XSh+kIEG60bx3rZfJSW/umR6A0BLH6zlUI3U/mwXh/ncWXv/Qu0iOHGl6Y6MO4IDS15S olSQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=USKyd0Gv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id bc8-20020a056402204800b0051e03cd3ad6si9012097edb.302.2023.07.14.02.31.47; Fri, 14 Jul 2023 02:32:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=USKyd0Gv; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S235677AbjGNJBt (ORCPT + 99 others); Fri, 14 Jul 2023 05:01:49 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37054 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S235531AbjGNJBZ (ORCPT ); Fri, 14 Jul 2023 05:01:25 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [139.178.84.217]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 125282D50; Fri, 14 Jul 2023 02:01:08 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 9763661C9C; Fri, 14 Jul 2023 09:01:07 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id E9B80C433C9; Fri, 14 Jul 2023 09:01:06 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1689325267; bh=9aSAz0aIfqYogVI+EirWrWSKc2FYSWjc3BKCTzLQWpw=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=USKyd0GvPzCSuQlVqgFlqHoATTWs5ikOi6rE7AXKALSgoXtE3VPNdPqYy94D3yDUY wWBkyRkDAt8o0FrdbciWzvFotlESKSoAYEV3zr2EwzfcGO4vHQbox4mutEeiyDZGc7 qRRMdWboihnBZcXxFTTmyauK1x2CRoCGBCv5HTfoBZkm3jtzTp3mtQ2329P/CCsI29 6iTEcTpouaNbGIz2cd0hhrYl7Nn36JvcIfOT3XvcpVvY9QKgo8erOeGEbLY10lDA4D 2ipw50FfytpZXl0yaha690JCFzMEEIsNTYXcIwUgCxcTq915okX0P29MSqFHN61k+D 2MXZQmZbQpjVg== Received: from sofa.misterjones.org ([185.219.108.64] helo=goblin-girl.misterjones.org) by disco-boy.misterjones.org with esmtpsa (TLS1.3) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1qKEfg-00D3IW-EV; Fri, 14 Jul 2023 10:01:04 +0100 Date: Fri, 14 Jul 2023 10:01:04 +0100 Message-ID: <86jzv2vpdb.wl-maz@kernel.org> From: Marc Zyngier To: Saravana Kannan , Anup Patel Cc: Palmer Dabbelt , Paul Walmsley , Thomas Gleixner , Rob Herring , Krzysztof Kozlowski , Atish Patra , Andrew Jones , Sunil V L , Conor Dooley , Anup Patel , linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: Re: [PATCH v5 7/9] irqchip: Add RISC-V advanced PLIC driver In-Reply-To: References: <20230710094321.1378351-1-apatel@ventanamicro.com> <20230710094321.1378351-8-apatel@ventanamicro.com> User-Agent: Wanderlust/2.15.9 (Almost Unreal) SEMI-EPG/1.14.7 (Harue) FLIM-LB/1.14.9 (=?UTF-8?B?R29qxY0=?=) APEL-LB/10.8 EasyPG/1.0.0 Emacs/28.2 (aarch64-unknown-linux-gnu) MULE/6.0 (HANACHIRUSATO) MIME-Version: 1.0 (generated by SEMI-EPG 1.14.7 - "Harue") Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable X-SA-Exim-Connect-IP: 185.219.108.64 X-SA-Exim-Rcpt-To: saravanak@google.com, apatel@ventanamicro.com, palmer@dabbelt.com, paul.walmsley@sifive.com, tglx@linutronix.de, robh+dt@kernel.org, krzysztof.kozlowski+dt@linaro.org, atishp@atishpatra.org, ajones@ventanamicro.com, sunilvl@ventanamicro.com, conor@kernel.org, anup@brainfault.org, linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org X-SA-Exim-Mail-From: maz@kernel.org X-SA-Exim-Scanned: No (on disco-boy.misterjones.org); SAEximRunCond expanded to false X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, RCVD_IN_DNSWL_BLOCKED,SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Anup, On Fri, 14 Jul 2023 00:56:22 +0100, Saravana Kannan wrote: >=20 > On Mon, Jul 10, 2023 at 2:44=E2=80=AFAM Anup Patel wrote: > > > > The RISC-V advanced interrupt architecture (AIA) specification defines > > a new interrupt controller for managing wired interrupts on a RISC-V > > platform. This new interrupt controller is referred to as advanced > > platform-level interrupt controller (APLIC) which can forward wired > > interrupts to CPUs (or HARTs) as local interrupts OR as message > > signaled interrupts. > > (For more details refer https://github.com/riscv/riscv-aia) > > > > This patch adds an irqchip driver for RISC-V APLIC found on RISC-V > > platforms. > > > > Signed-off-by: Anup Patel [...] > > +static int __init aplic_dt_init(struct device_node *node, > > + struct device_node *parent) > > +{ > > + /* > > + * The APLIC platform driver needs to be probed early > > + * so for device tree: > > + * > > + * 1) Set the FWNODE_FLAG_BEST_EFFORT flag in fwnode which > > + * provides a hint to the device driver core to probe the > > + * platform driver early. > > + * 2) Clear the OF_POPULATED flag in device_node because > > + * of_irq_init() sets it which prevents creation of > > + * platform device. > > + */ > > + node->fwnode.flags |=3D FWNODE_FLAG_BEST_EFFORT; >=20 > Please stop spamming us with broken patches. Already told you this is > not an option. >=20 > Nack. What puzzles me here is that *no other arch* requires this sort of hack. What is so special about the APLIC that it requires it? I see nothing in this patch that even hints at it, despite the "discussion" in the last round. The rules are simple: - either the APLIC is so fundamental to the system that it has to be initialised super early, much like the GIC on arm64, at which point it cannot be a platform device, and the story is pretty simple. - or it isn't that fundamental, and it can be probed as a platform device using the dependency infrastructure that is already used by multiple other interrupt controller drivers, without any need to mess with internal flags. Again, this should be simple enough. If these rules don't apply to your stuff, please explain what is so different. And I mean actually explain the issue. Which isn't telling us "it doesn't work without it". Because as things stand, there is no way I will even consider taking this ugly mix of probing methods. In any case, reposting the same stuff ad nauseam is only going to result in this series being ignored, which I don't think is what you want. Thanks, M. --=20 Without deviation from the norm, progress is not possible.