Message ID | 20230509063431.1203367-1-a-verma1@ti.com |
---|---|
State | New |
Headers |
Return-Path: <linux-kernel-owner@vger.kernel.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:b0ea:0:b0:3b6:4342:cba0 with SMTP id b10csp2665133vqo; Mon, 8 May 2023 23:39:27 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ491yvtmVzw08jIoSRuwGzZ3CdOmxD+8ogKMnZAUuVls4dgJLoD5jCqNUNaOt9aF8WvAArk X-Received: by 2002:a05:6a20:258c:b0:f5:c6d5:adf5 with SMTP id k12-20020a056a20258c00b000f5c6d5adf5mr16945716pzd.40.1683614367376; Mon, 08 May 2023 23:39:27 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1683614367; cv=none; d=google.com; s=arc-20160816; b=PIJlLA0j7dOzecxpBLRERgBaZmjmz5950QxI2nXvOQN27+YpBkfpEmgivo5Zgd5vx9 benqsKoOgqVilPmwMsefAzgla4WnttqGxVtNrBeoieOBORKoqjFuwujXuKiqGAW3IAHb e4L7ESpAnRWIX9LK/4z1QLSZhK+GhiynRNF9/8zNjLvsVIhrCJiOH3bDhMZtiRMo8qak M7/pRUeQi174AOnvaG+wRbwE7d5O643CuIKAM2OqpemcLAgyriVyfON6BdHMoIdDd5QS HVAzbc0FciZPd6Dhh4GzALuBjKWD0/+oRdOu7NmJ21z3vY8xd51RRGVSOrGl9MH8r0sF Rdag== 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 :message-id:date:subject:cc:to:from:dkim-signature; bh=64hSoi+eRsccCXoBM3ThtnciX4raj/19dY5XXHek6OY=; b=VEu+Oia2Yuo9DHcSODLIEtc57mBmBPiy1HptYFF0R0BoKwI24lqnnq+B8aAdthmAAS MUxNkCzcvhTxI+TVW2XJZ7jn1xSutRlQnQXAwRa+w5o7ENf3d1DVcuQjLg/RCdpycB35 npeIWqOf0zow39gJnBJ9YlGM/4K6yUAwDJDITBr45OTIyDX+vbmGTn9MhPRS6Mqwaog8 XeZFus4yPlBWnJwO8jCYyTIRetwJOM1yi5RSVn5edRRcKa9oijwV/UGVnBc1iAgLed4b DMMed8UMwNYYBCfQsVlH2gecFvUs3NfrEfV5OWo64sQ2Os0ksjkwskdbNrhunYy+sXIG p3iA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ti.com header.s=ti-com-17Q1 header.b=cFYhwyTk; 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=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id p37-20020a635b25000000b005250385bfdbsi840579pgb.549.2023.05.08.23.39.13; Mon, 08 May 2023 23:39:27 -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=@ti.com header.s=ti-com-17Q1 header.b=cFYhwyTk; 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=QUARANTINE sp=NONE dis=NONE) header.from=ti.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234771AbjEIGfV (ORCPT <rfc822;jeantsuru.cumc.mandola@gmail.com> + 99 others); Tue, 9 May 2023 02:35:21 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40996 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229672AbjEIGfU (ORCPT <rfc822;linux-kernel@vger.kernel.org>); Tue, 9 May 2023 02:35:20 -0400 Received: from lelv0143.ext.ti.com (lelv0143.ext.ti.com [198.47.23.248]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 40D6D59D5 for <linux-kernel@vger.kernel.org>; Mon, 8 May 2023 23:35:18 -0700 (PDT) Received: from fllv0035.itg.ti.com ([10.64.41.0]) by lelv0143.ext.ti.com (8.15.2/8.15.2) with ESMTP id 3496YX1m111033; Tue, 9 May 2023 01:34:33 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1683614073; bh=64hSoi+eRsccCXoBM3ThtnciX4raj/19dY5XXHek6OY=; h=From:To:CC:Subject:Date; b=cFYhwyTkJ85IVpSf2NEgo6ju1kWY0MQV9GPnj7x1qTqB1y/61p7SeEZVwgkU1g1a+ nAZILkJWUH+2JqEqkQRlibKcIyk2AgbcNoBvCWC3XZBR0qhOo/SjGhXK2K7K1fO9dC 4ahCSkbupjL0TZAkwBJgpXhBxrGfCCXAjBRqv294= Received: from DFLE102.ent.ti.com (dfle102.ent.ti.com [10.64.6.23]) by fllv0035.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 3496YXmr128508 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Tue, 9 May 2023 01:34:33 -0500 Received: from DFLE113.ent.ti.com (10.64.6.34) by DFLE102.ent.ti.com (10.64.6.23) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23; Tue, 9 May 2023 01:34:33 -0500 Received: from fllv0039.itg.ti.com (10.64.41.19) by DFLE113.ent.ti.com (10.64.6.34) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.23 via Frontend Transport; Tue, 9 May 2023 01:34:33 -0500 Received: from localhost (ileaxei01-snat.itg.ti.com [10.180.69.5]) by fllv0039.itg.ti.com (8.15.2/8.15.2) with ESMTP id 3496YWRB123740; Tue, 9 May 2023 01:34:32 -0500 From: Achal Verma <a-verma1@ti.com> To: Catalin Marinas <catalin.marinas@arm.com>, Will Deacon <will@kernel.org>, Bjorn Andersson <quic_bjorande@quicinc.com>, Arnd Bergmann <arnd@arndb.de>, Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>, Geert Uytterhoeven <geert+renesas@glider.be>, Konrad Dybcio <konrad.dybcio@linaro.org>, "N_colas F . R . A . Prado" <nfraprado@collabora.com>, Mark Brown <broonie@kernel.org>, Rafa_ Mi_ecki <rafal@milecki.pl>, Vignesh Raghavendra <vigneshr@ti.com>, Nishanth Menon <nm@ti.com>, Milind Parab <mparab@cadence.com>, Swapnil Kashinath Jakhade <sjakhade@cadence.com> CC: <linux-arm-kernel@lists.infradead.org>, <linux-kernel@vger.kernel.org>, Achal Verma <a-verma1@ti.com> Subject: [PATCH] arm64: defconfig: enable PCIe controller on TI platforms Date: Tue, 9 May 2023 12:04:31 +0530 Message-ID: <20230509063431.1203367-1-a-verma1@ti.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Content-Type: text/plain X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_PASS,SPF_PASS,T_SCC_BODY_TEXT_LINE,UPPERCASE_50_75, URIBL_BLOCKED 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: <linux-kernel.vger.kernel.org> X-Mailing-List: linux-kernel@vger.kernel.org X-getmail-retrieved-from-mailbox: =?utf-8?q?INBOX?= X-GMAIL-THRID: =?utf-8?q?1765397618973889745?= X-GMAIL-MSGID: =?utf-8?q?1765397618973889745?= |
Series |
arm64: defconfig: enable PCIe controller on TI platforms
|
|
Commit Message
Achal Verma
May 9, 2023, 6:34 a.m. UTC
Enable PCIe controller and serdes drivers to enable PCIe functionality.
* Enable Cadence serdes phy and wrapper driver.
* Enable Cadence PCIe controller driver.
Signed-off-by: Achal Verma <a-verma1@ti.com>
---
arch/arm64/configs/defconfig | 15 +++++++++++----
1 file changed, 11 insertions(+), 4 deletions(-)
Comments
On 09/05/2023 08:34, Achal Verma wrote: > Enable PCIe controller and serdes drivers to enable PCIe functionality. > * Enable Cadence serdes phy and wrapper driver. > * Enable Cadence PCIe controller driver. Why? IOW, which boards needs it? > > Signed-off-by: Achal Verma <a-verma1@ti.com> > --- > arch/arm64/configs/defconfig | 15 +++++++++++---- > 1 file changed, 11 insertions(+), 4 deletions(-) > > diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig > index a24609e14d50..ff187dd585c2 100644 > --- a/arch/arm64/configs/defconfig > +++ b/arch/arm64/configs/defconfig > @@ -230,9 +230,16 @@ CONFIG_PCIE_HISI_STB=y > CONFIG_PCIE_TEGRA194_HOST=m > CONFIG_PCIE_VISCONTI_HOST=y > CONFIG_PCIE_LAYERSCAPE_GEN4=y > +CONFIG_PCIE_CADENCE=y =m > +CONFIG_PCIE_CADENCE_HOST=y > +CONFIG_PCIE_CADENCE_EP=y > +CONFIG_PCI_J721E=y =m > +CONFIG_PCI_J721E_HOST=y > +CONFIG_PCI_J721E_EP=y > CONFIG_PCI_ENDPOINT=y > CONFIG_PCI_ENDPOINT_CONFIGFS=y > CONFIG_PCI_EPF_TEST=m > +CONFIG_PCI_EPF_NTB=m > CONFIG_DEVTMPFS=y > CONFIG_DEVTMPFS_MOUNT=y > CONFIG_FW_LOADER_USER_HELPER=y > @@ -1330,8 +1337,8 @@ CONFIG_RESET_TI_SCI=y > CONFIG_PHY_XGENE=y > CONFIG_PHY_CAN_TRANSCEIVER=m > CONFIG_PHY_SUN4I_USB=y > -CONFIG_PHY_CADENCE_TORRENT=m > -CONFIG_PHY_CADENCE_SIERRA=m > +CONFIG_PHY_CADENCE_TORRENT=y > +CONFIG_PHY_CADENCE_SIERRA=y Why? Commit msg does not explain it. > CONFIG_PHY_MIXEL_MIPI_DPHY=m > CONFIG_PHY_FSL_IMX8M_PCIE=y > CONFIG_PHY_HI6220_USB=y > @@ -1363,8 +1370,8 @@ CONFIG_PHY_SAMSUNG_UFS=y > CONFIG_PHY_UNIPHIER_USB2=y > CONFIG_PHY_UNIPHIER_USB3=y > CONFIG_PHY_TEGRA_XUSB=y > -CONFIG_PHY_AM654_SERDES=m > -CONFIG_PHY_J721E_WIZ=m > +CONFIG_PHY_AM654_SERDES=y > +CONFIG_PHY_J721E_WIZ=y Why? > CONFIG_ARM_CCI_PMU=m > CONFIG_ARM_CCN=m > CONFIG_ARM_CMN=m Best regards, Krzysztof
Hi Achal, On 09/05/23 12:09, Krzysztof Kozlowski wrote: > On 09/05/2023 08:34, Achal Verma wrote: >> Enable PCIe controller and serdes drivers to enable PCIe functionality. >> * Enable Cadence serdes phy and wrapper driver. >> * Enable Cadence PCIe controller driver. > > Why? IOW, which boards needs it? >> >> Signed-off-by: Achal Verma <a-verma1@ti.com> >> --- >> arch/arm64/configs/defconfig | 15 +++++++++++---- >> 1 file changed, 11 insertions(+), 4 deletions(-) >> >> diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig >> index a24609e14d50..ff187dd585c2 100644 >> --- a/arch/arm64/configs/defconfig >> +++ b/arch/arm64/configs/defconfig >> @@ -230,9 +230,16 @@ CONFIG_PCIE_HISI_STB=y >> CONFIG_PCIE_TEGRA194_HOST=m >> CONFIG_PCIE_VISCONTI_HOST=y >> CONFIG_PCIE_LAYERSCAPE_GEN4=y >> +CONFIG_PCIE_CADENCE=y > > =m > >> +CONFIG_PCIE_CADENCE_HOST=y >> +CONFIG_PCIE_CADENCE_EP=y >> +CONFIG_PCI_J721E=y > > =m Also, see [0] for history. We really want these to be modules unless its necessary for bootup. You may want to revive [1] and get it to mainline [0] https://lore.kernel.org/linux-arm-kernel/CAK8P3a2VSBvOn1o+q1PYZaQ6LS9U4cz+DZGuDbisHkwNs2dAAw@mail.gmail.com/ [1] https://lore.kernel.org/linux-arm-kernel/20230110153805.GA1505901@bhelgaas/ [...]
On Tue, May 9, 2023, at 10:08, Vignesh Raghavendra wrote: > Also, see [0] for history. We really want these to be > modules unless its necessary for bootup. > > You may want to revive [1] and get it to mainline > > [0] > https://lore.kernel.org/linux-arm-kernel/CAK8P3a2VSBvOn1o+q1PYZaQ6LS9U4cz+DZGuDbisHkwNs2dAAw@mail.gmail.com/ > [1] > https://lore.kernel.org/linux-arm-kernel/20230110153805.GA1505901@bhelgaas/ Agreed, that seems simple enough. Ideally these should even be removable modules, not just single-load but unremovable. Doing that may require changes to the cadence PCIe host code if that does not support unloading yet (I have not checked), but should not require any changes to the core PCIe host code that supports loadable/removable modules. Arnd
Hello, On 5/9/2023 1:58 PM, Arnd Bergmann wrote: > On Tue, May 9, 2023, at 10:08, Vignesh Raghavendra wrote: > >> Also, see [0] for history. We really want these to be >> modules unless its necessary for bootup. >> >> You may want to revive [1] and get it to mainline >> >> [0] >> https://lore.kernel.org/linux-arm-kernel/CAK8P3a2VSBvOn1o+q1PYZaQ6LS9U4cz+DZGuDbisHkwNs2dAAw@mail.gmail.com/ >> [1] >> https://lore.kernel.org/linux-arm-kernel/20230110153805.GA1505901@bhelgaas/ > > Agreed, that seems simple enough. Ideally these should even > be removable modules, not just single-load but unremovable. > > Doing that may require changes to the cadence PCIe host > code if that does not support unloading yet (I have not > checked), but should not require any changes to the core > PCIe host code that supports loadable/removable modules. > > Arnd So, my understanding is that following change is expected +CONFIG_PCIE_CADENCE=m +CONFIG_PCIE_CADENCE_HOST=m +CONFIG_PCIE_CADENCE_EP=m +CONFIG_PCI_J721E=m +CONFIG_PCI_J721E_HOST=m +CONFIG_PCI_J721E_EP=m +CONFIG_PCI_EPF_NTB=m I also want to inform that pci_j721e.c is a single file with both host and EP functionality, last attempt to build it as modules depending on host or EP selected failed because of symbols dependency. Refactoring of pci_j721e.c into common, host and EP specific files could work similar to the Cadence driver, So I will follow this way and push the changes. Please let me know if there are concerns. Thanks, Achal Verma
On 09/05/2023 11:19, Verma, Achal wrote: > > Hello, > On 5/9/2023 1:58 PM, Arnd Bergmann wrote: >> On Tue, May 9, 2023, at 10:08, Vignesh Raghavendra wrote: >> >>> Also, see [0] for history. We really want these to be >>> modules unless its necessary for bootup. >>> >>> You may want to revive [1] and get it to mainline >>> >>> [0] >>> https://lore.kernel.org/linux-arm-kernel/CAK8P3a2VSBvOn1o+q1PYZaQ6LS9U4cz+DZGuDbisHkwNs2dAAw@mail.gmail.com/ >>> [1] >>> https://lore.kernel.org/linux-arm-kernel/20230110153805.GA1505901@bhelgaas/ >> >> Agreed, that seems simple enough. Ideally these should even >> be removable modules, not just single-load but unremovable. >> >> Doing that may require changes to the cadence PCIe host >> code if that does not support unloading yet (I have not >> checked), but should not require any changes to the core >> PCIe host code that supports loadable/removable modules. >> >> Arnd > So, my understanding is that following change is expected > +CONFIG_PCIE_CADENCE=m > +CONFIG_PCIE_CADENCE_HOST=m > +CONFIG_PCIE_CADENCE_EP=m > +CONFIG_PCI_J721E=m > +CONFIG_PCI_J721E_HOST=m > +CONFIG_PCI_J721E_EP=m > +CONFIG_PCI_EPF_NTB=m > > I also want to inform that pci_j721e.c is a single file with both host > and EP functionality, last attempt to build it as modules depending on > host or EP selected failed because of symbols dependency. > Refactoring of pci_j721e.c into common, host and EP specific files could > work similar to the Cadence driver, So I will follow this way and push > the changes. > > Please let me know if there are concerns. Aren't HOST and EP just customizing main module? Best regards, Krzysztof
On 5/9/2023 3:01 PM, Krzysztof Kozlowski wrote: > On 09/05/2023 11:19, Verma, Achal wrote: >> >> Hello, >> On 5/9/2023 1:58 PM, Arnd Bergmann wrote: >>> On Tue, May 9, 2023, at 10:08, Vignesh Raghavendra wrote: >>> >>>> Also, see [0] for history. We really want these to be >>>> modules unless its necessary for bootup. >>>> >>>> You may want to revive [1] and get it to mainline >>>> >>>> [0] >>>> https://lore.kernel.org/linux-arm-kernel/CAK8P3a2VSBvOn1o+q1PYZaQ6LS9U4cz+DZGuDbisHkwNs2dAAw@mail.gmail.com/ >>>> [1] >>>> https://lore.kernel.org/linux-arm-kernel/20230110153805.GA1505901@bhelgaas/ >>> >>> Agreed, that seems simple enough. Ideally these should even >>> be removable modules, not just single-load but unremovable. >>> >>> Doing that may require changes to the cadence PCIe host >>> code if that does not support unloading yet (I have not >>> checked), but should not require any changes to the core >>> PCIe host code that supports loadable/removable modules. >>> >>> Arnd >> So, my understanding is that following change is expected >> +CONFIG_PCIE_CADENCE=m >> +CONFIG_PCIE_CADENCE_HOST=m >> +CONFIG_PCIE_CADENCE_EP=m >> +CONFIG_PCI_J721E=m >> +CONFIG_PCI_J721E_HOST=m >> +CONFIG_PCI_J721E_EP=m >> +CONFIG_PCI_EPF_NTB=m >> >> I also want to inform that pci_j721e.c is a single file with both host >> and EP functionality, last attempt to build it as modules depending on >> host or EP selected failed because of symbols dependency. >> Refactoring of pci_j721e.c into common, host and EP specific files could >> work similar to the Cadence driver, So I will follow this way and push >> the changes. >> >> Please let me know if there are concerns. > > Aren't HOST and EP just customizing main module? Current pci-j721e driver is composed of host specific and endpoint specific code encapsulated in switch case and shared required common code, last attempt of putting endpoint and host specific code inside EP and HOST CONFIGS respectively failed (also reported by kernel test bot) when tried with different combinations of Y/M/N along with CADENCE driver on which pci-j721e depends, So only way is to break main module into common, host and endpoint files. > > Best regards, > Krzysztof >
diff --git a/arch/arm64/configs/defconfig b/arch/arm64/configs/defconfig index a24609e14d50..ff187dd585c2 100644 --- a/arch/arm64/configs/defconfig +++ b/arch/arm64/configs/defconfig @@ -230,9 +230,16 @@ CONFIG_PCIE_HISI_STB=y CONFIG_PCIE_TEGRA194_HOST=m CONFIG_PCIE_VISCONTI_HOST=y CONFIG_PCIE_LAYERSCAPE_GEN4=y +CONFIG_PCIE_CADENCE=y +CONFIG_PCIE_CADENCE_HOST=y +CONFIG_PCIE_CADENCE_EP=y +CONFIG_PCI_J721E=y +CONFIG_PCI_J721E_HOST=y +CONFIG_PCI_J721E_EP=y CONFIG_PCI_ENDPOINT=y CONFIG_PCI_ENDPOINT_CONFIGFS=y CONFIG_PCI_EPF_TEST=m +CONFIG_PCI_EPF_NTB=m CONFIG_DEVTMPFS=y CONFIG_DEVTMPFS_MOUNT=y CONFIG_FW_LOADER_USER_HELPER=y @@ -1330,8 +1337,8 @@ CONFIG_RESET_TI_SCI=y CONFIG_PHY_XGENE=y CONFIG_PHY_CAN_TRANSCEIVER=m CONFIG_PHY_SUN4I_USB=y -CONFIG_PHY_CADENCE_TORRENT=m -CONFIG_PHY_CADENCE_SIERRA=m +CONFIG_PHY_CADENCE_TORRENT=y +CONFIG_PHY_CADENCE_SIERRA=y CONFIG_PHY_MIXEL_MIPI_DPHY=m CONFIG_PHY_FSL_IMX8M_PCIE=y CONFIG_PHY_HI6220_USB=y @@ -1363,8 +1370,8 @@ CONFIG_PHY_SAMSUNG_UFS=y CONFIG_PHY_UNIPHIER_USB2=y CONFIG_PHY_UNIPHIER_USB3=y CONFIG_PHY_TEGRA_XUSB=y -CONFIG_PHY_AM654_SERDES=m -CONFIG_PHY_J721E_WIZ=m +CONFIG_PHY_AM654_SERDES=y +CONFIG_PHY_J721E_WIZ=y CONFIG_ARM_CCI_PMU=m CONFIG_ARM_CCN=m CONFIG_ARM_CMN=m