Received: by 2002:a05:6358:bb9e:b0:b9:5105:a5b4 with SMTP id df30csp400958rwb; Fri, 2 Sep 2022 16:37:25 -0700 (PDT) X-Google-Smtp-Source: AA6agR6qAk6HIaVqgrmM50ZiXNyFrF1C++vVQA729ATu8Ph5hEccPViq/Z9UvRoMp0CEFXGPKPSW X-Received: by 2002:a05:6402:1f86:b0:447:8edd:1c4b with SMTP id c6-20020a0564021f8600b004478edd1c4bmr33988159edc.163.1662161844901; Fri, 02 Sep 2022 16:37:24 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1662161844; cv=none; d=google.com; s=arc-20160816; b=DZpW7k7R2hKgAujyq8q/C2gKi/1eWJwraix1goLBt2NI9QyoLis8f0P0yDef46Jn2O AW2R5HWjAt6AR1cfNqBjPNzTt4UooHKFkj66v9EhAa/9Pn2/bQjh2E7eZ7TbWLdprXfY WN9TjYWAjtIP9a38QJJfImW4OyhIalV7624mMLjTXOWJSQtypACR2qXpXw506JWtS9Ab cEMjdnLvPLJJ3UhR4egkUrswAEfAfGn8PyLkoanG+dUTJsSlUP1RSTxUNlX+fwH/LVp8 /0VjXG5hq1Fw9TPbBIB0841HKEx5ZKJxIElJ8xgBQpGgClSwM6VWWsr4uxn6C6tYsMU0 LSGg== 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=JtcIRv9f5e4TTTij2dNtDVBM6JrPcOxmhxZ6AkHbmg0=; b=kWnSm2wJ/5h/y/sFwRRGszzcrJ2122O0HchvQYJPAlYnsngR+t/zAKoq9BWOQprjxA 2svsa4jS451rCJCq86uZhlzxNQ40AP9klq78SZP6EaneKHdLB6NkS0JB9vS0YD96XoVy fgvNGQCPTs0HkDmrsJq2X3N2BabK6BcicdTwB0l3nuHMv/uZavoPbYtOINkq9BoOvLf7 UeHx1Z7v9+7KXOfr/SWYPHMvOQnDAGDlPhqtVjXnwGCn5lUeGtknd0rJalvR+pDSMoR+ sScD/62cb4x8TiEhj09lxRSW8yYihYbkKIU1mgKyxBVowUlZ5c8ukzpPBA104aDmi46H PNDA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=kBxHCiXF; 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 g22-20020a170906521600b0073d6f5dde1asi2406262ejm.498.2022.09.02.16.36.59; Fri, 02 Sep 2022 16:37:24 -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=kBxHCiXF; 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 S229794AbiIBXfv (ORCPT + 99 others); Fri, 2 Sep 2022 19:35:51 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41276 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229609AbiIBXft (ORCPT ); Fri, 2 Sep 2022 19:35:49 -0400 Received: from dfw.source.kernel.org (dfw.source.kernel.org [IPv6:2604:1380:4641:c500::1]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id E10B5DEA7D; Fri, 2 Sep 2022 16:35:47 -0700 (PDT) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by dfw.source.kernel.org (Postfix) with ESMTPS id 7D1C161FCA; Fri, 2 Sep 2022 23:35:47 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 9AF38C433D6; Fri, 2 Sep 2022 23:35:46 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1662161746; bh=FmnAhEe5uZ9f3ApuhBxfFu90IRni8tTV6tD+FWbuSa8=; h=From:To:Cc:Subject:Date:From; b=kBxHCiXFgnQoiKbZQA31DL25+Hs1UV9ewHYNNxsUqx+m95UU5zl+bDsRt3dv7KVJw RrBWsLqg6tL4O7EEopzjJakahh8CxxuW0EXVI32+o1abjnkE7LqWWLyraouDnBlqzY ZgKzmYvrvlZruyHoSTyHvRr+MgJSL7oWCjgppUV0gGu86tIz5B/D4dMqnhOlZQVpmw T2wNxoo2C1tii3G1y1rLdsytX9hd1jKXuEv3XyVBK0aaR5aAlhE1RL76eC0iIXkw2j LhZF6vNMr/c10OoAwWEhYvcac6K8RLCxziiZOcLQ+2XVHdhV9djwNH7t0T09NyWi3e OCyFSUAAeaAZw== From: Bjorn Helgaas To: Kai-Heng Feng , Rajvi Jingar , "Rafael J . Wysocki" Cc: Koba Ko , Mika Westerberg , "David E . Box" , Sathyanarayanan Kuppuswamy , linux-pci@vger.kernel.org, linux-pm@vger.kernel.org, linux-kernel@vger.kernel.org, Bjorn Helgaas Subject: [PATCH v2 0/3] PCI/PM: Always disable PTM for all devices during suspend Date: Fri, 2 Sep 2022 18:35:40 -0500 Message-Id: <20220902233543.390890-1-helgaas@kernel.org> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-7.1 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_HI, 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 From: Bjorn Helgaas We currently disable PTM for Root Ports during suspend. Leaving PTM enabled for downstream devices causes UR errors if they send PTM Requests. The intent of this series is to: - Unconditionally disable PTM during suspend (even if the driver saves its own state) by moving the disable from pci_prepare_to_sleep() to pci_pm_suspend(). - Disable PTM for all devices by removing the Root Port condition and doing it early in the suspend paths. - Explicitly re-enable PTM during resume, which requires new support in pci_enable_ptm() for Root Ports and Switch Upstream Ports. Bjorn Helgaas (3): PCI/PTM: Preserve PTM Root Select PCI/PTM: Implement pci_enable_ptm() for Root Ports, Switch Upstream Ports PCI/PM: Always disable PTM for all devices during suspend drivers/pci/pci-driver.c | 14 ++++++++++++++ drivers/pci/pci.c | 20 -------------------- drivers/pci/pcie/ptm.c | 36 ++++++++++++++++++++++++++++-------- 3 files changed, 42 insertions(+), 28 deletions(-) -- 2.25.1