From patchwork Wed Dec 14 01:55:46 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Jerin Jacob X-Patchwork-Id: 17941 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id E9DAEFA42; Wed, 14 Dec 2016 02:59:24 +0100 (CET) Received: from NAM03-DM3-obe.outbound.protection.outlook.com (mail-dm3nam03on0064.outbound.protection.outlook.com [104.47.41.64]) by dpdk.org (Postfix) with ESMTP id 95CAB4A59 for ; Wed, 14 Dec 2016 02:58:47 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=2AaBWuaUWI3EMDnyPkVWNxQdSeZRp47aMdueAiG62OQ=; b=gf5UIY3VBzai4cAPbeorrzx/TEsekGIguroGLNh4qZqwpdO5idiayLvwwxRv8VZwems0/Qk8R3VhREg6fcHYFejKHn6ifiVMxNgNb4KvoaU41W17KyfoFg5jEPWVvRPnkED42vZHFnNdT4gdGWqX5kNfUKPIeCbdoTyzYAOmf3s= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Jerin.Jacob@cavium.com; Received: from localhost.localdomain.localdomain (122.166.91.229) by BN3PR0701MB1719.namprd07.prod.outlook.com (10.163.39.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.771.8; Wed, 14 Dec 2016 01:58:27 +0000 From: Jerin Jacob To: CC: , , , , , Santosh Shukla , Jerin Jacob , Stephen Hurd , Ajit Khaparde Date: Wed, 14 Dec 2016 07:25:46 +0530 Message-ID: <1481680558-4003-17-git-send-email-jerin.jacob@caviumnetworks.com> X-Mailer: git-send-email 2.5.5 In-Reply-To: <1481680558-4003-1-git-send-email-jerin.jacob@caviumnetworks.com> References: <1481680558-4003-1-git-send-email-jerin.jacob@caviumnetworks.com> MIME-Version: 1.0 X-Originating-IP: [122.166.91.229] X-ClientProxiedBy: MAXPR01CA0006.INDPRD01.PROD.OUTLOOK.COM (10.164.147.13) To BN3PR0701MB1719.namprd07.prod.outlook.com (10.163.39.18) X-MS-Office365-Filtering-Correlation-Id: 43008925-b19f-454a-d581-08d423c4b463 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:BN3PR0701MB1719; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 3:jzmb243cJ+Hfaj+ijy/wbND6WIw/6OcfJWrmDfUE0A4TpcymXJUA6XVSvPauSPu0cqJyhqUjI3c/d8hSX5ZS6hyEO9gi0G18LqUXoWIR2fWXltKCCeIeOqLoqfGHPSd3MZ23JB6rjJepHMEDRNAVRer6QoKYZPXFmwwfx08bFS0v2oNdVVfHJEwou+jUYTFL/9ZeX6hKYG907LgKanVuH/tmKaM0fd61Xi4AoEsrPCGREI5M4qQR2lIl/2RK02Or3wUku/N1SUbR163JR9m3/A== X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 25:rvHs09fp6lF/dLK10/JbX9czabHYj65DxS5OIb0HHXB0UOEn9wzch0K14D08b7Wai2eLaYZw9H0hIM7g/5fS/EA939y/IH+Sg8GbrweXjGbDNM+TtSeR8YuCCH+T5HNCSnkjyvQcdmArJZ8EnezyeHMXw6ztHIlnVoOmCCH1kkgVnEIk5Rq/9NCnGaOdx+SSvNIFI47jMvjyBUqCd2cG87duFTgkO1T8D6Y2ThUVlEmB4IRR2li6/HFImoTM5Zc1bXl4UBfu3qacbZC7HTSDV1yeKnRC8K71kViMbEt5kJ6n+prDDi+r3CxSKUvcOg4QuE+Uv+vyO1LJyfcPd3pYRoVOjcKf4BvYoHyw6I+weRyr1oaiZpIkMbjCSEBp0Rk/z8lInMwFO9fwPkTypQSvFO8sSSkz8eNN54tMzaW9iNNHAsTGaWXHw9UWdSZvjvstn1xu5iCk4eh6eXKDFvO7LNimQYpKN/Q/RAXa2QIKfiU/qjzgOj6dRF/hP/u8+A9VETlqXsPAIplFIcpr+zN4l23puqypjKplVeIkAXc7HaeaQc4eg+F3cDUnVcIu7oQaLNAsKxESy/inwuE/FyRqZ/51enxK1eyGFrvurANWa7cUElyK8B9FPsfdXMG50D0OHl+T2PvBWSgyeW4M8gCffTeCQs5AYNsrc8vydIzoir6c3EJw0D53uo3yMaDwcWiex7Am/wWfvsPx2VQqWEbGtEeAmg/fSLGAcLUrk+txZcvK0i39/1dB9n5oi8pbiE7xZMDtHXIRKAavgzQu5SJ3KUkYIkcfPEbkUwc10E6isM2q1mi+jKOiF0SX4Hbgf8zQ X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 31:4BnthAvX3tGkm1n7xC6x1SEALgL+Xq5uOgHGqkKdUTAQj8yaiCv14YT8zhA3Ns+xh+NXXTD6Te6crwvhIJ6/HB/YwDaNQjOxNqASInCp14zpMrnB99Ixk5zGpQsnaHl5QEa87hz+Xw3bXso6OEfoUMQSy6SCAFZP91l0hxBNxq4um6QN4QI0DEO5+wW7fKDqr2u09cdawrhi1wc0tKcms1WuYSPPcGHwhgx7gyGSUSb/QARonYovYjxg3w4POnux; 20:qoE8ahs/Srrk6r/LkxJI9XCoqbIy1b3LrqGmT08TayMQVEnSOHdPcEy8dNchS8yp5JdLUeHURfKRdnz7P2q44uXLMUTcfhuoMoBO9WIzJzF8E4jYHNQh1wmN9g0bfWo8YfTDb4nLSeNVazfbObJMrjJr0d2RFFPLbrc0JugxnuYdYwzlQe7nTBfJDv01LMwyHoGVRnVfyk6p8G3Ql0mZTxMS2L08W3pQA8USCTwIs29qS1I3PUIN5VjV4ysEc1kR4XAt6P8sGxqUb0Z4Rab9Zvcoe6GLS1JyWvxpdAeuPQNBp7pP59yB7ZqpfcsKWaOvBFbcbyfKeOKIZpOKah73UsNNRFH3dk6A4blj3VqTpXJgZur7RSm/uKei3ggOwfoB9uZZvwgYaLg6KBE6eWR0EMBqc/lOlGDJ0SHTadACuY0egB0x3UXCXu5hJ9H1pVe73KN0AYGrpOWK0n4z08YSmuNx455h2hv4wsK+tiKvtOLjaLDS6j2XBrE2BBr0AQS2tdpWnsNnI+PKeftj/+xcfnQ2bg384JA3W1B0Bf/xE5++NJAGuEU61Qw0iYDLPBnFJnh8AS694aDoDrJy91ZV3jsKPJmItQEGLQfntPMEVho= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(788757137089); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6041248)(20161123555025)(20161123560025)(20161123562025)(20161123564025)(6072148); SRVR:BN3PR0701MB1719; BCL:0; PCL:0; RULEID:; SRVR:BN3PR0701MB1719; X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 4:OccPcIimLobmn1aLS/0z/ebqbbOq5ouzDVcnxrohI1j5FWEv7/oSaK6adquupEW5dEl+m7mwBSM96HiP3QyTNCPfSUPAC3XuWBr080dZD/iywf24m3X2LXpbtJx7zr2IHlAqibUqFHnnvkBeQSA284TT4nkdbaph5jt5Wci0QFRCfFhZe6rM+Q2gPI8FlA48M9lqQSFMHQS1vQ4mYJznK8ixFQA9JCnj30VnxD+TPHiBzlhSl004u3RACxtH1Vqt2zWKCcLHy5XMnrvo8CfAPnIcvvcXYmGpbyke3AYFB55KIw0Lhl0ppB4qiNMNvWRIbtLKfq70YkGUxitAvIN8yvjGuK/B94uPTSHC0ek3PYqYspWfq4yT6z3RxXat+WP4K3heRnJs7gOXstC64v+O2s8wqZntFrX/FA1hqItAOFQpMRp0tUnIDhXwcrxbF9Oq37nqmcd+ebD84dz0I7GkEWrcYut9I6gL2aE645gmGxYtBeXC06pxgI/1PP5rRSUpEQcebtNp4IB+PcCdLqFtjLxidhHuqAIKhnnrpMsRwLTU7w6bcEMJTDXqDtnpV2Cq+vQrtukwmmqI43K4ihxDNSTJOpqe+0gEywr7YxsimgU= X-Forefront-PRVS: 01565FED4C X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10009020)(4630300001)(6009001)(6069001)(7916002)(39450400003)(39840400002)(39410400002)(189002)(199003)(6116002)(6512006)(6506006)(6486002)(3846002)(66066001)(68736007)(47776003)(92566002)(5003940100001)(50986999)(76176999)(81156014)(50226002)(2906002)(110136003)(33646002)(6916009)(101416001)(42882006)(2950100002)(6666003)(4326007)(81166006)(38730400001)(105586002)(8676002)(106356001)(5660300001)(305945005)(48376002)(97736004)(50466002)(36756003)(2351001)(42186005)(7736002)(189998001); DIR:OUT; SFP:1101; SCL:1; SRVR:BN3PR0701MB1719; H:localhost.localdomain.localdomain; FPR:; SPF:None; PTR:InfoNoRecords; MX:1; A:1; LANG:en; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR0701MB1719; 23:P78w/f4w5/YuuFOMqZdlWn/XdaenAjLnjzdbRFR?= EQejAdTVSm4T+Ij+t3+V2eHFQ1iV8xJNbV/zU+EIYo2U8IJF0vFc54KIJ+RmaPx4bMCx7VBrMecpOM/4FSXGolBxSq+UssBfCnw7r1lweaBLAL4UAm5+6zheey2TKh0OcraoE5OrxD+BodRYx2FNPdDBi/7wfPMeUbKTYH2Hc92OPmmW47yLNUCYP/VtLcJjbXaWe8PGutF2MvQEqs0CDQKaVneZ+FKhoPsi1oTszin71+uUupBwXr3mqXtk5SuVSNWid43lhuIjmlbQSyd/NAN2yBr8cdCbzmhlJkkJjuWZD+sxbjXlG9kM24zagg+0evwHX/DDSoLSZqb7TwkKSQVH9eNo4Glngw/WeyPIZ7sEgF8t7yliPifMF2N6C02FksJpN86fF27eJgkarBg0AO9Znspyjzg7m485Gpv61TeltnmjTxADHbc9B5NVEw14cLovHZwXWt3VSwoNysIuExs1YgkUAexznILyTuwOGviKbinKZ6bnTioS2Dck1nYbw3WmDFmdojrE88Uzl+uxpkxmlrk6TB0DECRzaSOnGWHYqPvovobgJPfNyxk4OvVfi3aAWGYPf8giT+mCZ+hoOOGoYtjpFuvPJVfYxhH/1/Uq5CKFrxjmVcDz5T8N5eA35Bw6sEsJvp3Eocheev1ir9o2QtlPHicF0vHMQi9bxIkN2XIfdKZx9h5X2N9khan2PLGhOdeaYkTYzKMWwtAyZW768cC+bgX26/F4F0i4aC8KsFBE12COp+NnTPpWswSoA0dSaXjUQdwvE7Y8ggYF43Cv8zmVE0mm0gNDUA7aMLnAKcOmBgHfhnJXhiVptixUVLES9P3XPEGKcPQRndz+xNuO4q37jXIwgoIijCbSVSxrLrnVq7mwqpAJb3Aag6rG6fB5Y/TzjrKURt2LMHn9p1vv3w0zRn7exC2Spr3+9LBuR7MKHk4oQg2Rok3t7NugSBYaLvo0B52y/4mzQYI3jYbB5l3PAv6dahBrbFGeU6LyZrDVfuKIaTcvNfs4UOZ9f0SyQJujryxi6NUGoZEHpLIRvOSgRd0nE7I8wggwYEiR6ICPTuUQPUAPjgublMcfPfB6d9fxh30WypcIYf7CxjV3I X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 6:EpfBXq639j3jQhadCHbay6ThWq3xAhZ55nX6tWUryKS3srwpSf4LLF3+drJYFdbRsm1q42mp/mFbo+XwO20rl3+NBWqNYXssXe4mrXhxL9zGaqxj4DDXpN5mswhosQ5+j4gXWbk733iB1WEsfN1JcWque3Bopbx7UJvTz9k2lrtUVU3YFQFurlggosKSdkQNzRik2csHt7Bt2jzxAm+GKWxLIImpTIBqBerKoTdk65XQ86HxSDr3aD8b+Q2v1ghSPBeEM0PCywkny4HKHTwiDiQEFcezF9g+mHJIEUNjpuENbsV2utmOVhDwHUmx5yR/8TUhdiSXnKMNSmUiYo2FbU57TWrzcE9bO3qGsv2J2wf30PLvPi7b5OEGlpLn5FJQF8R+2oH+PBGIqX7N8VbztQnM3T09ONLQZikSd0rgcKg=; 5:KyafeJlU+lMdbUgDu7b1n2Lp3TJWJ6IuwyPfazFonW0fY62nW2WHpQb5nwgtv765kpEzS9L+T63wQXmryXNh7lTaMhFNp56bgLjBvm4p5Uvnfou1k4zCzJowLv7OhUGgW2/54RCGL/wIs2R5fs9gqQ==; 24:mkDhTdq3XTR99vGIxeDKg5PX1u/0d+b//1Ok7yt5VDGUW0dIIrd9TuJuGLIZWi7gl/C15iy9VSd/aUG+j4bWuuKwzJJhgJ/bZy0jLWc2yrM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BN3PR0701MB1719; 7:1m+9RXjl7+oc/KUqcyMSrdNlFRNYonvm++7+2h7OJC1dCFNyIWTbRLxReNYLC5n9atqhOQsQ2SVKgfEPC337cwfO0hEDgTLgpkmKHMAxveHb/jwKCC/+QDff2YQK+s1UfpofRmp0ewKVtOx17llFy1uR2sIoEQJJUk7dcERc9DYT7DBDUweXi/TltjdpDjQSRurjPrmx+jgI1yT/gfHxbnUGPkAgjKb3rBGkSH0eBj+0AWglArm9/p2dnFPgT7nFCuEahpqOvZ+nNUdv6kJk1kHnNSAn/AGzq3i5D12/1zZC37K57c6kHO4nUA1cBr2pzKoeCiib9txSptSUxCMUpy4OLunfxOH316OvOMc0jNNCcgt20cDwisVVmkaNi6HJDeV+MtOEBCaar/+86yWwlU/i/dX18aeIhJmYKO1eqjT5u8tkvzJZR9S3e73VzsXTLYBE0m8UmgINf10wfVo4zA== X-OriginatorOrg: caviumnetworks.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 14 Dec 2016 01:58:27.9148 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR0701MB1719 Subject: [dpdk-dev] [PATCH 16/28] net/bnxt: use eal I/O device memory read/write API X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Santosh Shukla Replace the raw I/O device memory read/write access with eal abstraction for I/O device memory read/write access to fix portability issues across different architectures. Signed-off-by: Santosh Shukla Signed-off-by: Jerin Jacob CC: Stephen Hurd CC: Ajit Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index 07e7124..2067e15 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c @@ -50,6 +50,8 @@ #include "bnxt_vnic.h" #include "hsi_struct_def_dpdk.h" +#include + #define HWRM_CMD_TIMEOUT 2000 /* @@ -72,19 +74,19 @@ static int bnxt_hwrm_send_message_locked(struct bnxt *bp, void *msg, /* Write request msg to hwrm channel */ for (i = 0; i < msg_len; i += 4) { bar = (uint8_t *)bp->bar0 + i; - *(volatile uint32_t *)bar = *data; + rte_writel(*data, bar); data++; } /* Zero the rest of the request space */ for (; i < bp->max_req_len; i += 4) { bar = (uint8_t *)bp->bar0 + i; - *(volatile uint32_t *)bar = 0; + rte_writel(0, bar); } /* Ring channel doorbell */ bar = (uint8_t *)bp->bar0 + 0x100; - *(volatile uint32_t *)bar = 1; + rte_writel(1, bar); /* Poll for the valid bit */ for (i = 0; i < HWRM_CMD_TIMEOUT; i++) {