Received: by 2002:a05:7412:8d10:b0:f3:1519:9f41 with SMTP id bj16csp5204572rdb; Wed, 13 Dec 2023 01:50:43 -0800 (PST) X-Google-Smtp-Source: AGHT+IGsOR3mpUHKXIa+1BprMu/RNn/l0tIyCIzYdgMQWF0Rr2GjRkzIQYcQxrwnpIUc5l7b0NaI X-Received: by 2002:a05:6e02:198a:b0:35f:7212:a059 with SMTP id g10-20020a056e02198a00b0035f7212a059mr850156ilf.94.1702461042913; Wed, 13 Dec 2023 01:50:42 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1702461042; cv=none; d=google.com; s=arc-20160816; b=TAknXRyvE6ezB25YX8dn2deoAgJOGFzX6eVbbcYVFcwRA+vWw89H73zUb5nLaUbyQD RQ+OR8slyq5dZJf9IaaWib7cQd5kymvZBRVc9yIBln2G5aH/4Wm9KROGl6l2ridhFy3D xzz11AK+n0YZVLlgw7hRbuZS0qn4X4gjiwtCQ3Hvk8oXKygQfwR2MMa72WhIUtGjIfr8 hJIIGqmQpD60ZUQoMLzjzKBTrr296l1HfrE/V+KC6UsC7Q6TX1d9aznRWqmm15Gh+F70 B+7nsXOKcQIqsCdMnwkT4iUxqZznN6NzYqNOfG5r/SVlN/MJf83dAodNEBNUsMaATWB8 Zfxg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=aYFhyit5z7EHedvoesb69p2FlMwHoHEHwbzqODF1jt0=; fh=fPOM0qMwOVM+EThLToRM6IhB27HrQzIPXkBOD5SQzr8=; b=hqexaio92/SsOH0MBfypnm3CLYNOgnSfVwfZSZ4VGP0ptlWXGaLo8MVJuAqDczBxtJ dGYzmzY2nt9NLjSH+Thdvc1N4vMYAPHZ8KlZonMMzh4eGH/RtNypD1i9wBFMA50QL/3p xkRRQuRL6ZjKRj6jGEq/UkcO/aeDwM+vLkjlzgdjksz+JVEoUsILy/4QN/tO34NfwYu+ KO7RTJcx92qklAjje9+g+L2kN0EtSpUBe9GNagureW6BvQkwzlNU6Lfl9vpIqE/fRWt5 eoXQIwVJWZNRnAx0hXuMHQUlNdh4Rwexa0G/moiWllPNGrcVqOJLDr9ASzzAZFpUSGy4 Wcrg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=tNqiqIuu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 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 groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id k4-20020a6568c4000000b005c69246e16fsi9057018pgt.357.2023.12.13.01.50.42 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 13 Dec 2023 01:50:42 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=tNqiqIuu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id E9EA280BB237; Wed, 13 Dec 2023 01:50:39 -0800 (PST) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.11 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233195AbjLMJu0 (ORCPT + 99 others); Wed, 13 Dec 2023 04:50:26 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52526 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233114AbjLMJuY (ORCPT ); Wed, 13 Dec 2023 04:50:24 -0500 Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 689BA83 for ; Wed, 13 Dec 2023 01:50:31 -0800 (PST) Received: by smtp.kernel.org (Postfix) with ESMTPSA id B1C46C433C7; Wed, 13 Dec 2023 09:50:26 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1702461031; bh=7DWDqmvfQ6nJsElv9hLPoTLEDMdZHlAdcpM0hp4Wl3o=; h=Date:From:To:Cc:Subject:References:In-Reply-To:From; b=tNqiqIuuG60sCKBzvWTT6UwePqHRX79kUeOw+oj7LuGFMAiuVRtA+yNaDyfRKB7SK yUh0v0GOfQ3ZbwlNQjEcsGbRWLiD3Apj3UHLfrh0CqMx6qtPN5eG+WQ8R8FIhJW2qg k0l5yQ9Lq/rPQ3cey6Z0ssPoaMp7e27byTaJfVO2ejX+K/xnOcf4walGzRbKtPT8UN Q7eL53y3p3Hp9rXQ09Wod3nliL1fp8BxaWYNm60bn1WahzbVZWBPCXq6/hm9jhFSHO iwX3rspvFyRciMQ5965HSfknOzuNLuP5ZuraONnCc8dkvIFFVfuXx01tLu30T4N8JA LV6Gt9N/rOG4Q== Date: Wed, 13 Dec 2023 10:50:23 +0100 From: Lorenzo Pieralisi To: Minda Chen Cc: Conor Dooley , Krzysztof =?utf-8?Q?Wilczy=C5=84ski?= , Rob Herring , Bjorn Helgaas , Daire McNamara , Emil Renner Berthing , Krzysztof Kozlowski , devicetree@vger.kernel.org, linux-kernel@vger.kernel.org, linux-riscv@lists.infradead.org, linux-pci@vger.kernel.org, Paul Walmsley , Palmer Dabbelt , Albert Ou , Philipp Zabel , Mason Huo , Leyfoon Tan , Kevin Xie Subject: Re: [PATCH v12 15/21] PCI: microchip: Add event IRQ domain ops to struct plda_event Message-ID: References: <20231206105839.25805-1-minda.chen@starfivetech.com> <20231206105839.25805-16-minda.chen@starfivetech.com> <9523aa6b-55a8-4e6a-a3ba-45d9b1dacc77@starfivetech.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <9523aa6b-55a8-4e6a-a3ba-45d9b1dacc77@starfivetech.com> X-Spam-Status: No, score=-1.2 required=5.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Wed, 13 Dec 2023 01:50:40 -0800 (PST) On Wed, Dec 13, 2023 at 04:15:39PM +0800, Minda Chen wrote: > > > On 2023/12/12 19:19, Lorenzo Pieralisi wrote: > > On Wed, Dec 06, 2023 at 06:58:33PM +0800, Minda Chen wrote: > >> For lack of an MSI controller, The new added PCIe interrupts have to be > >> added to global interrupt event field. PolarFire event domain ops can not > >> be re-used. > > > > I don't understand what this means, please explain and I will > > add it to the commit log. > > > Sorry. > Microchip Polarfire PCIe adds 11 PCIe interrupts to PCIe global event domain.(Total 28 PCIe interrupts) > The microchip event domain and event irqchip will handle these interrupts. > But PLDA host contain 13 fixed PCIe interrupts. PLDA codes just process these > 13 interrupts. Microchip the event irq codes are quite different and can't be used by PLDA codes. > So add an event domain field support microchip and other vendor who just using the PLDA interrupts. > >> PLDA event domain ops instances will be implemented in later patch. > > > > Future patches don't exist, each commit log is a logical change > > that must make sense on its own, I will remove this sentence. > > > > Lorenzo > > OK, Thanks. > > >> Signed-off-by: Minda Chen > >> Acked-by: Conor Dooley I am sorry folks but I still don't get what this patch is supposed to do. To start with it looks like a preparation patch (it does not have any net effect), that's not OK since it has to be merged with the patches that actually apply significant changes on top of this. Then I need an explanation of what the problem is and what is the code actually changing in irqdomain/irqchip specific terms. I can't merge it as-is because I don't understand what it changes and it is not clear by reading the commit log. Thanks, Lorenzo > >> --- > >> drivers/pci/controller/plda/pcie-microchip-host.c | 6 ++++-- > >> drivers/pci/controller/plda/pcie-plda.h | 1 + > >> 2 files changed, 5 insertions(+), 2 deletions(-) > >> > >> diff --git a/drivers/pci/controller/plda/pcie-microchip-host.c b/drivers/pci/controller/plda/pcie-microchip-host.c > >> index f5e7da242aec..e6dcc572b65b 100644 > >> --- a/drivers/pci/controller/plda/pcie-microchip-host.c > >> +++ b/drivers/pci/controller/plda/pcie-microchip-host.c > >> @@ -821,13 +821,15 @@ static const struct plda_event_ops mc_event_ops = { > >> }; > >> > >> static const struct plda_event mc_event = { > >> + .domain_ops = &mc_event_domain_ops, > >> .event_ops = &mc_event_ops, > >> .request_event_irq = mc_request_event_irq, > >> .intx_event = EVENT_LOCAL_PM_MSI_INT_INTX, > >> .msi_event = EVENT_LOCAL_PM_MSI_INT_MSI, > >> }; > >> > >> -static int plda_pcie_init_irq_domains(struct plda_pcie_rp *port) > >> +static int plda_pcie_init_irq_domains(struct plda_pcie_rp *port, > >> + const struct irq_domain_ops *ops) > >> { > >> struct device *dev = port->dev; > >> struct device_node *node = dev->of_node; > >> @@ -941,7 +943,7 @@ static int plda_init_interrupts(struct platform_device *pdev, > >> return -EINVAL; > >> } > >> > >> - ret = plda_pcie_init_irq_domains(port); > >> + ret = plda_pcie_init_irq_domains(port, event->domain_ops); > >> if (ret) { > >> dev_err(dev, "failed creating IRQ domains\n"); > >> return ret; > >> diff --git a/drivers/pci/controller/plda/pcie-plda.h b/drivers/pci/controller/plda/pcie-plda.h > >> index df1729095952..820ea16855b5 100644 > >> --- a/drivers/pci/controller/plda/pcie-plda.h > >> +++ b/drivers/pci/controller/plda/pcie-plda.h > >> @@ -129,6 +129,7 @@ struct plda_pcie_rp { > >> }; > >> > >> struct plda_event { > >> + const struct irq_domain_ops *domain_ops; > >> const struct plda_event_ops *event_ops; > >> int (*request_event_irq)(struct plda_pcie_rp *pcie, > >> int event_irq, int event); > >> -- > >> 2.17.1 > >>