Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1760020AbbLCLTB (ORCPT ); Thu, 3 Dec 2015 06:19:01 -0500 Received: from mail-bn1bon0083.outbound.protection.outlook.com ([157.56.111.83]:30544 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1760024AbbLCLSH (ORCPT ); Thu, 3 Dec 2015 06:18:07 -0500 Authentication-Results: spf=softfail (sender IP is 66.35.236.227) smtp.mailfrom=altera.com; vger.kernel.org; dkim=none (message not signed) header.d=none;vger.kernel.org; dmarc=none action=none header.from=altera.com; From: Ley Foon Tan To: Bjorn Helgaas CC: , , Ley Foon Tan , Subject: [PATCH 1/3] PCI: altera: fix incorrect devfn for requester ID Date: Thu, 3 Dec 2015 19:17:52 +0800 Message-ID: <1449141474-3378-2-git-send-email-lftan@altera.com> X-Mailer: git-send-email 1.8.3.2 In-Reply-To: <1449141474-3378-1-git-send-email-lftan@altera.com> References: <1449141474-3378-1-git-send-email-lftan@altera.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BY2FFO11FD032;1:It5CQydYFNzrX+XrbWJtK7vABvGqzn1VDm9EiV7kYHx+I96shuslrwHw3lArNRNnDTpEyX37fkwjyyKynuTjzxKQo87SPOpeFxdY/KdlFUq71JpL6AUsjtjYo3Ly/bQ9rZXa3umYiyUd/KBqgttn6F7DlMsGUUwAACjhw/je8RwXlpxJA+LuJk2s+/9XW3yzjZL8qDHVp26GfSUNDRWX7xW2qXvM0MH0Pee+gFcmwHtt0Pa/3FiqVRLrJb7H1bsH8FIs5ZZcuf5rwdTq8nIoCZaqRaKvaN2nMZyciTbTIf7kRHSqvC7+wX38eBM0Glh2ZqaNRF1q54bT6lSxdNy3dgaYtzoY29FPFPimKd6AVZyyIC8/TPwxSap87O1hzfNVH7NCKmPdSVchJNtEE6lPuA== X-Forefront-Antispam-Report: CIP:66.35.236.227;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(199003)(189002)(2950100001)(50986999)(105596002)(50466002)(48376002)(5001960100002)(76176999)(189998001)(106466001)(110136002)(5003940100001)(19580395003)(19580405001)(42186005)(229853001)(33646002)(97736004)(81156007)(87936001)(6806005)(47776003)(92566002)(36756003)(1096002)(11100500001)(5008740100001)(1220700001)(86362001)(50226001)(586003)(7099028);DIR:OUT;SFP:1101;SCL:1;SRVR:BY2PR03MB442;H:sj-itexedge03.altera.priv.altera.com;FPR:;SPF:SoftFail;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB442;2:yFK8gvrMsqvHSaXqTLu10jE+BtZaPqf3hIu5ZgxJAi2E0dr2N6Eeme9oBNLUeEYLbAzjZKj549xpKlmpCHnBZNC8PX0L2XTCUHRT/5jozyjfSxbU4vPJX7z7v7rWG2vHDcz3dvulaofHCxla8pU/ZQ==;3:kYzRBkcnSle4u0/4URtgD5UYdCZdSM5+dWgVIBwa94I1OFKe5w8/CF9ZTjfPLwcg4LNPa5fDHsr/D7LnFMN5f2uE46lbU+XWozTvUx/Var8Oy28GNJS/RmJVuTn9PZtMR46dVEqF3G72uJfpHd0QoRBGMt+Ty3zNbQxiohlqy3PZpLccmg1Fnk0et76LtNjPKbsAC4J2ncccd2q65b4pr2Ah4rXYjT7Q2ETgqJ2cRRc=;25:nQbudzD9jrHaz0tEJsDE9pnyygS6JR07jh44Id6yJiDrHShmsq2n6LU9HlAHSEdl8rTQ3EBzV0+4BXH6qhkNc7qMnvy1iZ46blowSGf64mjYjNVRfCsq3hpybMTo/iBZ/yuNKGRYbv85j5Lv5oxWwBS/YXli66m0ADtythAtmvpYBOoD2czF0snS7QU2XSihedO6/6NHo37oEDNFbN1XjbQasrSpWu7t7tbYLQAmSGawwiyHB605yVwwt9lzJWSpXRaSvvqicmUGC0+0+Okfww==;20:fM2sjVA4OvNuHBqfIAlbMpbWj4Ex1VTurJpnJ2rD/yAvL0BEAeTd2qmoP9U1UBbWck9j2oBi6icY2Iz3bgpLzZuasoRWYspJvx3ezPv0lMmSA5GELmpDinaIqswCqXG446oftU+xEWe54SBmPIZbCip8huq7VSHZ/6iUFO88c+g= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR03MB442; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(80048183373757); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(5005006)(520078)(10201501046)(3002001);SRVR:BY2PR03MB442;BCL:0;PCL:0;RULEID:;SRVR:BY2PR03MB442; X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB442;4:sgg3fs16UJBkSAQobCNvofOY3rUbom9e5gxwq+fdj3cN7tzHfpuHBhJrHY6Wxf39/1TRu+S3MiJ/yFgQz4c393g2jybCMW0c1s8k/5CC1fdiSv/6YdJtEyXiGFb3CL8LtUT9eoEqD1gMaYjQgo2lG4eyJ9k9lt+rTgK+PJMEKGjSJo8e40CVHQtDsrejOFVUq5EOW1ZzThdPD+uX/8ARZ16z0AwK/wSRd5Z8IWNbeQca/xOrB15lvoVkxL1aw2YB2bgxnQ1oW6m+gZh0kTp3bhewDCBYEsV9c+7fWS525hN1m1MKey9j0bwS4F0x8CZT6IJluBJOw/tOzkkyCBOby64sDovUE4pZMuEK8rAgTaaITApDUxsZAZZkQg5vfihD9hg9AoTvNE4dWAntsQvOBH7+aVwM0WEOMK1lwpYkJOyIPH/IYvNvRejlqLTOzy9M X-Forefront-PRVS: 077929D941 X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB442;23:v19KgHvhkE8RvEAbiDKyGsvYXgpB9PnZz8k8SOz0DCRYPhH2gx+SDka5dBweZ2w117rqvq9NO/QfzIV/YS4G5E8LFlmbx8B9xIs1VKiAEq55WGZsDrqVsa6km705SfOy2t281R5+LMQplRrkEfzg+YQGyaVxqFyNRc+MHCVGB6Ot9qugulaGDHpGDmHOGt9uvFf69JJJodcd1guJbYkqkH2wSnRAPV6w2kc444u5SeyMpMT4l3l6jqVLUCRIuUdy5zqmjO9QKUKUuOEoWZAH8UBITnBm9LuLKGhJX2W2Ubgsc0lw2cguC3TgD6sCp0Qb+AfopmZrrwckXRobT+QXjs0dGknywiJ/C9csTH+E9zw16JNjxNRGBNQRc4rdlHFJa6bALVGxGO/VUhaq50kFPbWy/ZOdwyJ8KKlceRCd67DPIYnqULSa2LP6muwxwnDJD2UhmKWy0maJQ+19yXCc5vSLziDrafn5CZ36tEOory9t7LrqbeLiD13/eGiPnrMXLk/SX5b2Fqr6gDPWPFoTSA0mkvDQb7xpyUlFtkl2WPFPW3FZcn/7FdYwqXp+kLatqCZFSABiwwGqMi8h44nobc3kqhM9dsDT3mB+qBAOfa2sEx5Z9FG+myaTMOWMq+rgzqyg4XKgbtpb9Ud4GQZATny8Wy3pRLelmhi1RPlj3RHA2DypbD/VgnRk7Go/3nX6t1Z4NU5GtkwIKdMi2Jm7pyBvWMvPIrQFerJMSRAPaF3CRyU0mPQ2Dkn2jR1WwJIlfQN7UZvJrwajnJHPJ423DzQxzq/2fS/ixyyzITCmqyE1/2NSePNQU2/p/tojH0I6eIwOWURQLLVp2gwA6E5Z31XJ/03KRBfhcZ+LE6NK0rCdG5a0bBF8SqJbcTTwkIi3IRs+2yRXOYXF3gXtV+a5R2B39g9BX8bTdmvAzAppezqgZpBojBfpMapYl9fgPPEU X-Microsoft-Exchange-Diagnostics: 1;BY2PR03MB442;5:6vCnY9O5Rn8vHDXCxC/Seb0sAinVYBZtjdUaYLnxiAMGsFGQUTPKvamvLxLS+O9e9mJzlBcOwBk4EVpCazQ5Pi9WOD1F3SVIktgiUSkC1NrWWeL0WYZI+vSeML7NgQoymAqJYl72igyJZtFOF603Mw==;24:wQfNt8QTh0woDbKZAw3/wq/bVDY7kkGgw9WkndAZxNwEEgt5y9nNWlsUF7ArLnXDEDhyyveWgnWjLUNwnr1HydzDrh61s2YIMbjVeJzWPzM=;20:avcZI7u3Yl/HLD2M2+7oJqOkO0PRV2XbPqryboxv5nnBiVy8B2H33bMxpYDQch0AjBy4Ulvytq065o3wJ8iXEsEJkaVWHPC+gv1OvBa2R16RJwG5/qRYg8Zn+iQbM7WKlB6zLnJpKTYThOGkyWqe4Ol6l20yZgp5ztHlrE4B0kU= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: altera.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 03 Dec 2015 11:18:04.4595 (UTC) X-MS-Exchange-CrossTenant-Id: fbd72e03-d4a5-4110-adce-614d51f2077a X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=fbd72e03-d4a5-4110-adce-614d51f2077a;Ip=[66.35.236.227];Helo=[sj-itexedge03.altera.priv.altera.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY2PR03MB442 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1777 Lines: 50 Requester ID should use the rootport devfn and it should be always 0. But, devfn argument in these 2 functions can be rootport or endpoint. It causes the issue when accessing configuration register from multi-functions PCIe devices. Tested on Ethernet adapter card with multi-functions. Signed-off-by: Ley Foon Tan --- drivers/pci/host/pcie-altera.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/drivers/pci/host/pcie-altera.c b/drivers/pci/host/pcie-altera.c index e5dda38..f05180f 100644 --- a/drivers/pci/host/pcie-altera.c +++ b/drivers/pci/host/pcie-altera.c @@ -57,6 +57,7 @@ #define TLP_REQ_ID(bus, devfn) (((bus) << 8) | (devfn)) #define TLP_HDR_SIZE 3 #define TLP_LOOP 500 +#define RP_DEVFN 0 #define INTX_NUM 4 @@ -233,7 +234,7 @@ static int tlp_cfg_dword_read(struct altera_pcie *pcie, u8 bus, u32 devfn, else headers[0] = TLP_CFG_DW0(TLP_FMTTYPE_CFGRD1); - headers[1] = TLP_CFG_DW1(TLP_REQ_ID(pcie->root_bus_nr, devfn), + headers[1] = TLP_CFG_DW1(TLP_REQ_ID(pcie->root_bus_nr, RP_DEVFN), TLP_READ_TAG, byte_en); headers[2] = TLP_CFG_DW2(bus, devfn, where); @@ -253,7 +254,7 @@ static int tlp_cfg_dword_write(struct altera_pcie *pcie, u8 bus, u32 devfn, else headers[0] = TLP_CFG_DW0(TLP_FMTTYPE_CFGWR1); - headers[1] = TLP_CFG_DW1(TLP_REQ_ID(pcie->root_bus_nr, devfn), + headers[1] = TLP_CFG_DW1(TLP_REQ_ID(pcie->root_bus_nr, RP_DEVFN), TLP_WRITE_TAG, byte_en); headers[2] = TLP_CFG_DW2(bus, devfn, where); -- 1.8.2.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/