From patchwork Sun Jan 24 15:09:34 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Kunihiko Hayashi X-Patchwork-Id: 12042449 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=-11.8 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,USER_AGENT_GIT autolearn=ham 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 D96B6C43381 for ; Sun, 24 Jan 2021 15:10:43 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id A6C7422B48 for ; Sun, 24 Jan 2021 15:10:43 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726470AbhAXPKc (ORCPT ); Sun, 24 Jan 2021 10:10:32 -0500 Received: from mx.socionext.com ([202.248.49.38]:26502 "EHLO mx.socionext.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726434AbhAXPK3 (ORCPT ); Sun, 24 Jan 2021 10:10:29 -0500 Received: from unknown (HELO kinkan2-ex.css.socionext.com) ([172.31.9.52]) by mx.socionext.com with ESMTP; 25 Jan 2021 00:09:43 +0900 Received: from mail.mfilter.local (m-filter-2 [10.213.24.62]) by kinkan2-ex.css.socionext.com (Postfix) with ESMTP id 8F52F2059027; Mon, 25 Jan 2021 00:09:43 +0900 (JST) Received: from 172.31.9.51 (172.31.9.51) by m-FILTER with ESMTP; Mon, 25 Jan 2021 00:09:43 +0900 Received: from plum.e01.socionext.com (unknown [10.213.132.32]) by kinkan2.css.socionext.com (Postfix) with ESMTP id CE604B1D40; Mon, 25 Jan 2021 00:09:42 +0900 (JST) From: Kunihiko Hayashi To: Lorenzo Pieralisi , Rob Herring , Bjorn Helgaas , Kishon Vijay Abraham I Cc: linux-pci@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Masami Hiramatsu , Jassi Brar , Kunihiko Hayashi Subject: [PATCH v2 0/3] PCI: endpoint: Add endpoint restart management support Date: Mon, 25 Jan 2021 00:09:34 +0900 Message-Id: <1611500977-24816-1-git-send-email-hayashi.kunihiko@socionext.com> X-Mailer: git-send-email 2.7.4 Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org Add new functions to manage recovery of configuration for endpoint controller and restart the controller when asserting bus-reset from root complex (RC). This feature is only available if bus-reset (PERST#) line is physically routed between RC and endpoint, and the signal from RC also resets the endpoint controller. This series is only for UniPhier PCIe endpoint controller at this point. Changes since v1: - Update the patches to rebase onto the latest tree Kunihiko Hayashi (3): PCI: endpoint: Add 'started' to pci_epc to set whether the controller is started PCI: endpoint: Add endpoint restart management PCI: uniphier-ep: Add EPC restart management support drivers/pci/controller/dwc/Kconfig | 1 + drivers/pci/controller/dwc/pcie-uniphier-ep.c | 44 +++++++++- drivers/pci/endpoint/Kconfig | 9 ++ drivers/pci/endpoint/Makefile | 1 + drivers/pci/endpoint/pci-epc-core.c | 2 + drivers/pci/endpoint/pci-epc-restart.c | 114 ++++++++++++++++++++++++++ include/linux/pci-epc.h | 22 +++++ 7 files changed, 192 insertions(+), 1 deletion(-) create mode 100644 drivers/pci/endpoint/pci-epc-restart.c