From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id ECF4AC25B48 for ; Thu, 26 Oct 2023 16:53:38 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:Content-Type: Content-Transfer-Encoding:List-Subscribe:List-Help:List-Post:List-Archive: List-Unsubscribe:List-Id:MIME-Version:In-Reply-To:From:References:Cc:To: Subject:Date:Message-ID:Reply-To:Content-ID:Content-Description:Resent-Date: Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Owner; bh=3xdIFV+fUx1NBZMOTy4wekfpXLNc8zffbamFBm16AH0=; b=d1kq8qIfq83xBDPSqsV47hj/kt TmhHAobOl3CWpIJSQ4KooU5CbiTAf7MJAbfOsR4a9TyzTsUH7HnCfRbq+lX4KzoBTl4L17I7+1+xp Fk6Ulj8eLZsbkAKUDH/m9dchN+34jrG6HLBxDutQ1AENJLa800mefDsSiKdabsR80VgPRv6oaA3R9 uGllJTSA+hSuWKzy/IMhBHqzcHeqkuAIOCzIXCMZs4Y/jrowsc+EMMbgrfESBWsJ0AkoPZu3Dh1jB iFRq19ojRkYJx8pc87P9LptPbPBW/9KlPjn/hbjvyauHMFkC+n+AVY9Ogn4/ekMKNHeXt+59oSgwN 0KQSSkng==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.96 #2 (Red Hat Linux)) id 1qw3bc-00Et8z-1O; Thu, 26 Oct 2023 16:53:12 +0000 Received: from mail-vi1eur05on2060d.outbound.protection.outlook.com ([2a01:111:f400:7d00::60d] helo=EUR05-VI1-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.96 #2 (Red Hat Linux)) id 1qw3bU-00Et7G-2a for linux-arm-kernel@lists.infradead.org; Thu, 26 Oct 2023 16:53:06 +0000 ARC-Seal: i=2; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=pass; b=SgGBA8xueq1MITQZLoaUJ56+NwH1ymc9SDorOIhdV4BuiSCn+K52ShGK0cKEHPT33gbLeHCC/KhBvhPmB/ajYNXGvgeNX1gfLiVnOM3PIRWS0eIkTmhme+/83Ec/3w7bBayUXrj6K6X70b6bX7SGulnP6n99aarI0uMYIr3me8/cyH7jHsoKQJuOILpQlY4yfi+Ahv0uldg3du7uDvyhCJCvC/QFpluUYq56XUbOx70VvrmfCRshZSkwuClxzHG76f0EzSWqevLpECYDjzz5YOdMdm7koc11iftkaeWtDMnRTUduvo4Cn9vyswnk+pAqRwgUZM4BHiQfgVT9I/hM2g== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=jOwv4sv50j5Hgjt8vw9pbb+/URwkgpeNnV4GthI7stA=; b=imfGFbl9zKBACmlD0Oatj4gzlyusFmgXjSpNB+Vu2a6P17EdwCQnsUKNG63QwaUz+KVEXvflw4YOMIhCMNxJ9xmsEXPqQs4rarw2k2ch/i6VdFKlzo6uFBkoiBtNGxqxYeuVqzaOMcHTYxnd0ooXJuzxyvH/MIpgTTOdAg6xie6hdvV2kcekofRL/MKGmHAl2JTwZTuo2YC2Oe7VcYWNzHNRVwznEnvzuAiZZG/uzP67rHogeFV9pncjF0tSRJ1gq1KKD3/VaxxkkTaPwLhsYJlsq/h7D4t6/SzAgilUtrIBrAzv1KDxlvGv3zbPN/pt05bLx2hvj+31hV9VDX6imA== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=lists.infradead.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jOwv4sv50j5Hgjt8vw9pbb+/URwkgpeNnV4GthI7stA=; b=oyI1TOC78PcWkAKddyuwXHS/hwPOcB9LZycON0M1CQmVCCeAU5E8zUShTWjC5kmLaE5GwJnUrDbYsYV2I3+WSzTS4MDQxRYtvtPIfFaeygVncCTPj/mGMKywBJELCk88Sk4aCFCodcz0t/qxhx8Vzc6FWEaNmyAZmWI8kcUKjC0= Received: from DB7PR05CA0050.eurprd05.prod.outlook.com (2603:10a6:10:2e::27) by GV1PR08MB8451.eurprd08.prod.outlook.com (2603:10a6:150:83::17) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.22; Thu, 26 Oct 2023 16:52:39 +0000 Received: from DB1PEPF0003922E.eurprd03.prod.outlook.com (2603:10a6:10:2e:cafe::16) by DB7PR05CA0050.outlook.office365.com (2603:10a6:10:2e::27) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.19 via Frontend Transport; Thu, 26 Oct 2023 16:52:38 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=armh.onmicrosoft.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB1PEPF0003922E.mail.protection.outlook.com (10.167.8.101) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6933.15 via Frontend Transport; Thu, 26 Oct 2023 16:52:38 +0000 Received: ("Tessian outbound 7671e7ddc218:v228"); Thu, 26 Oct 2023 16:52:38 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 96b21924e1c907d4 X-CR-MTA-TID: 64aa7808 Received: from cff91a715612.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 9C90C98F-D5B3-40D2-A4AE-906ACE17A83E.1; Thu, 26 Oct 2023 16:52:32 +0000 Received: from EUR03-DBA-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id cff91a715612.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 26 Oct 2023 16:52:32 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=mIfx4Teix/eamyDY6Fiz1kr1pTVoKi9A0vt3mLLjy1l3qxDY+0/RxckqhGRPLaKUUXjBq0wSuZu+W09XQdKcFU0qGpncDrr5B5PobvT1I1qXvQgS1QNFrTxB89OrirZqUCWszinD0lG91BOUchM2w77En+aZWx6r4aVDsRfSZvolxjreS/LQsgCuJQQzYEKtrYNAj0CqBSLK9ybG8Rh3jnQClkdeoAl00tJjdkz0OIVJdIqdaeHcAyB+W2ijOZZfTFSsn9tIxntJ0gYmPS6lREGiaXLRCt5MkIWi0gXN3dpnebzm9zgbYe/fREiMHB7WZNsgFA87eRhXB1hOBr47tA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=jOwv4sv50j5Hgjt8vw9pbb+/URwkgpeNnV4GthI7stA=; b=nmjQMmCEA+V6pLVRDn88WFOuQjPV7qUWmtWkNTASwC5aqkmttO9B4jzz/LqUDUyOxToGIPvX5v1KfCEZYrpd1ZLBGd2+pRh9PaPLEJo4soFhEA+Iv0uqnMbkKTVATcCRMpRhvXdBkIRsiS7JNixLfy22U8stSArgWZFn6eRPVXqupjoMuEnorYXDvkOJf5v7cW7BdN/ZYbRc1SYmnV8SO6YieFsuLCeA4ozDurBIz7+893M6cH7LV8BG9QX9dxF2nFEn9D0asABHdfW60Gi0RnQQneJZQLNVPd6j9vKXEanunC4zn3m00ODuofJMqn8mNaG3jhCP7e7CG4EmlqGDFQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=armh.onmicrosoft.com; s=selector2-armh-onmicrosoft-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=jOwv4sv50j5Hgjt8vw9pbb+/URwkgpeNnV4GthI7stA=; b=oyI1TOC78PcWkAKddyuwXHS/hwPOcB9LZycON0M1CQmVCCeAU5E8zUShTWjC5kmLaE5GwJnUrDbYsYV2I3+WSzTS4MDQxRYtvtPIfFaeygVncCTPj/mGMKywBJELCk88Sk4aCFCodcz0t/qxhx8Vzc6FWEaNmyAZmWI8kcUKjC0= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from DB9PR08MB6650.eurprd08.prod.outlook.com (2603:10a6:10:26d::23) by DB4PR08MB8104.eurprd08.prod.outlook.com (2603:10a6:10:384::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.6907.31; Thu, 26 Oct 2023 16:52:28 +0000 Received: from DB9PR08MB6650.eurprd08.prod.outlook.com ([fe80::4b11:196a:114e:55ff]) by DB9PR08MB6650.eurprd08.prod.outlook.com ([fe80::4b11:196a:114e:55ff%4]) with mapi id 15.20.6933.022; Thu, 26 Oct 2023 16:52:27 +0000 Message-ID: <8f8a2e42-f6ed-4328-9457-5f986d761224@arm.com> Date: Thu, 26 Oct 2023 17:52:20 +0100 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH v9 3/4] drivers/perf: add DesignWare PCIe PMU driver Content-Language: en-GB To: Jonathan Cameron , Shuai Xue Cc: Will Deacon , Bjorn Helgaas , Yicong Yang , chengyou@linux.alibaba.com, kaishen@linux.alibaba.com, baolin.wang@linux.alibaba.com, linux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org, linux-pci@vger.kernel.org, rdunlap@infradead.org, mark.rutland@arm.com, zhuo.song@linux.alibaba.com, renyu.zj@linux.alibaba.com References: <20231020134230.53342-1-xueshuai@linux.alibaba.com> <20231020134230.53342-4-xueshuai@linux.alibaba.com> <20231023123202.GA3515@willie-the-truck> <5b695595-d243-4ea5-97bb-f4c74398fc27@linux.alibaba.com> <20231026144428.00005db8@Huawei.com> From: Robin Murphy In-Reply-To: <20231026144428.00005db8@Huawei.com> X-ClientProxiedBy: LO2P123CA0024.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:a6::36) To DB9PR08MB6650.eurprd08.prod.outlook.com (2603:10a6:10:26d::23) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: DB9PR08MB6650:EE_|DB4PR08MB8104:EE_|DB1PEPF0003922E:EE_|GV1PR08MB8451:EE_ X-MS-Office365-Filtering-Correlation-Id: 66317e40-7440-4a26-5350-08dbd643f66c x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0; X-Microsoft-Antispam-Message-Info-Original: aUMWRlZ5sQmQqTrvZQJmUBfRZ+3apZJSvP8RRwqBlJRIlo19Vrr3ppy0Hwp8aj6K14Wib91cVDgdgpIQcEIpFKk5ZJ0YKNU3pYslz0maodx+ezF88B9WibFT8O5R6JtbWOIUGWpzjPgG6oEnm7K5A1KfntgYAONGKVRkULTb1url5zSCPRLrZUpikzc7YZuZTIBJ98yJuLLW5D3VuVroCqBAks9JxgI73u11WNggfeDLWq9c5/uVUpaQtQxMC/lkguhpqJ56zyBorYKP+McyCOlpKOFBWghThIha0XO5ylMPSI3k5UmVBaRZCjBYyLqiudA4hnvGSlmiFVJB5OfSWK9xadB+F9VUrYLgCYu+tlWEDWnYNkcjkLr572M42QGAf5OAUy5gf2HW/TKCZUa0wdjd2+tSB/QHyTbv44eGEFljw/xQQmLUQFljWk+eQ4IGgwnSTBzLACFnwM1sGz+OJjf/Hl7hVa/dQ9IiuXF76CRJgArA409DRJdlEdFoPf0DgPFS++7//OJiZciAWcxKIf2V0HSbMCmeiYwyYDGiA3k9D9qphTwphgTdacehC6U8RB5hVvE7vp2Vsocy71wD9i4JC/Ot4Hd+bYOehe4H2WlLTcf9HiUEwJ3gf1midSf+MmoXr5+ikR0L6rimT3uq6Q== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DB9PR08MB6650.eurprd08.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230031)(39860400002)(346002)(396003)(366004)(376002)(136003)(230922051799003)(451199024)(186009)(1800799009)(64100799003)(2616005)(38100700002)(6512007)(6506007)(53546011)(8936002)(41300700001)(83380400001)(26005)(478600001)(4326008)(6486002)(44832011)(4001150100001)(7416002)(66946007)(66476007)(110136005)(54906003)(316002)(66556008)(8676002)(5660300002)(36756003)(31696002)(86362001)(31686004)(6666004)(2906002)(43740500002)(45980500001);DIR:OUT;SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB4PR08MB8104 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB1PEPF0003922E.eurprd03.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 04d58bb7-c8bc-4be3-d65c-08dbd643ef31 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: iA2kLM8XpFxBMgVjpLX9ftBKjHNfKcJo0Cd8baM9DLlCwaW6F4fWvvR1psSvMLpuRVjVtwV3hIdY0gYzIlzd4yR8qF/ece7cDwArX2ub9FzJg96fHBS9iLJwXvkhoDwRFz91g6CkKEOBRDPRZANwYhgnmGEPYiai97KZeHcsooe7GfEF36G1xu2Ke5/rFoZcf/oMrAkAD5z3rDNbRSKWbKwc5LW80M3eQGxzUSf26FmeS88b5YQ6avqNPSSUC2THKHNsSvG53eSC0Bzx5PVXyXErpPvgxKHKeBK69lG0N2Wxb9Q/IgLWcgxUPsKn40XiEPYEuKlwjY1jAtTOTRTZZqx4F+MKnZvVPtZDnNV8AWwKb7N+VY2EO7R3dORdGokrUc+FI8hI01NBbfSvHVAit3UJFKEUYFneOBR9bBpugMNyF7QBt/30zhYS3WDrJTeZjIBYxq/vbNroPglmY9wDCQQmX8Z2vmmlVWJD53xi4glDdfLrYTpLiroCd36vESkcCI+4GC2LUkxtgfFsxdUPIVWjw0T68y5FJUl8pPfgge2FTGDVwJqAvPUNmhZueRsmUxOwKTAVq6fW7mDtCdoH1cIaifB9Mgn4Ohum/pN3nD4E14QrYPHZ5RVTPAivpWP4I+ztlFimmxBBaZXla0I1V8h7bxrTOFpjDx71D+bmW2ovW56ZDhnHfLxgnon1PVamHaB6PfBFlL2hIKHzNkB60MiQ9voyMS67FxGgZWdCbG1WEUAdDht8P/BErWAUnlR9c/0BSbbxN5xlsTXZsbuxYw== X-Forefront-Antispam-Report: CIP:63.35.35.123;CTRY:IE;LANG:en;SCL:1;SRV:;IPV:CAL;SFV:NSPM;H:64aa7808-outbound-1.mta.getcheckrecipient.com;PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com;CAT:NONE;SFS:(13230031)(4636009)(376002)(136003)(346002)(39860400002)(396003)(230922051799003)(1800799009)(64100799003)(451199024)(186009)(82310400011)(36840700001)(46966006)(40470700004)(82740400003)(2616005)(6512007)(41300700001)(44832011)(336012)(81166007)(40460700003)(5660300002)(40480700001)(356005)(107886003)(26005)(6486002)(8676002)(8936002)(4326008)(478600001)(316002)(54906003)(70586007)(36756003)(110136005)(6506007)(70206006)(53546011)(6666004)(86362001)(31686004)(2906002)(31696002)(4001150100001)(36860700001)(47076005)(83380400001)(43740500002);DIR:OUT;SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Oct 2023 16:52:38.8504 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 66317e40-7440-4a26-5350-08dbd643f66c X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d;Ip=[63.35.35.123];Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DB1PEPF0003922E.eurprd03.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV1PR08MB8451 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20231026_095305_043213_2366F567 X-CRM114-Status: GOOD ( 21.75 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="us-ascii"; Format="flowed" Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org On 26/10/2023 2:44 pm, Jonathan Cameron wrote: > On Tue, 24 Oct 2023 17:29:34 +0800 > Shuai Xue wrote: > >> + Will, Jonathan, Bjorn and Yicong for probe and hotplug handing. >> >> On 2023/10/24 02:51, Robin Murphy wrote: >>> On 2023-10-23 13:32, Will Deacon wrote: >>> [...] >>>>> + >>>>> + /* >>>>> + * The Group#1 event measures the amount of data processed in 16-byte >>>>> + * units. Simplify the end-user interface by multiplying the counter >>>>> + * at the point of read. >>>>> + */ >>>>> + if (event_id >= 0x20 && event_id <= 0x23) >>>>> + return (((u64)hi << 32) | lo) << 4; >>>>> + else >>>>> + return (((u64)hi << 32) | lo); >>>> >>>> nit, but I think it would be clearer to do: >>>> >>>> ret = ((u64)hi << 32) | lo; >>>> >>>> /* ... */ >>>> if (event_id >= 0x20 && event_id <= 0x23) >>>> ret <<= 4; >>> >>> Nit: "ret *= 16;" since the comment says it's multiplying a value, not moving a bitfield. The compiler already knows the most efficient way to implement constant multiplication. >> >> Cool, will use multiplication directly. >> >>> >>>> >>>> return ret; >>>> >>> [...] >>>>> +static int __init dwc_pcie_pmu_init(void) >>>>> +{ >>>>> + int ret; >>>>> + >>>>> + ret = cpuhp_setup_state_multi(CPUHP_AP_ONLINE_DYN, >>>>> + "perf/dwc_pcie_pmu:online", >>>>> + dwc_pcie_pmu_online_cpu, >>>>> + dwc_pcie_pmu_offline_cpu); >>>>> + if (ret < 0) >>>>> + return ret; >>>>> + >>>>> + dwc_pcie_pmu_hp_state = ret; >>>>> + >>>>> + ret = platform_driver_register(&dwc_pcie_pmu_driver); >>>>> + if (ret) >>>>> + goto platform_driver_register_err; >>>>> + >>>>> + dwc_pcie_pmu_dev = platform_device_register_simple( >>>>> + "dwc_pcie_pmu", PLATFORM_DEVID_NONE, NULL, 0); >>>>> + if (IS_ERR(dwc_pcie_pmu_dev)) { >>>>> + ret = PTR_ERR(dwc_pcie_pmu_dev); >>>>> + goto platform_device_register_error; >>>>> + } >>>> >>>> I'm a bit confused as to why you're having to create a platform device >>>> for a PCI device -- is this because the main designware driver has already >>>> bound to it? A comment here explaining why you need to do this would be >>>> very helpful. In particular, is there any dependency on another driver >>>> to make sure that e.g. config space accesses work properly? If so, we >>>> probably need to enforce module load ordering or something like that. >>> >>> AFAICS the platform device/driver serve no purpose other than being a hilariously roundabout way to run the for_each_pci_dev() loop in dwc_pcie_pmu_probe() upon module init, and to save explicitly freeing the PMU name/data. Furthermore the devres action for dwc_pcie_pmu_remove_cpuhp_instance() is apparently going for even more style points at module exit by not even relying on the corresponding .remove callback of the tenuous platform driver to undo what its .probe did, but (ab)using the device's devres list to avoid having to keep track of an explicit list of PMU instances at all. >> >> You are right. > > Also provides a (potential) parent for the PMU devices which is something > we were trying to clean up for existing PMUs (which end up in the > wrong directly in sysfs because they typically don't have parents). Surely the relevant PCI device would be an even more appropriate parent, though, since that's the true topology? Thanks, Robin. _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel@lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel