From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id B10CCD5C0 for ; Thu, 10 May 2018 11:21:13 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga102.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 May 2018 02:21:11 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,384,1520924400"; d="scan'208";a="38833708" Received: from fmsmsx107.amr.corp.intel.com ([10.18.124.205]) by fmsmga008.fm.intel.com with ESMTP; 10 May 2018 02:21:11 -0700 Received: from fmsmsx123.amr.corp.intel.com (10.18.125.38) by fmsmsx107.amr.corp.intel.com (10.18.124.205) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 10 May 2018 02:21:11 -0700 Received: from shsmsx102.ccr.corp.intel.com (10.239.4.154) by fmsmsx123.amr.corp.intel.com (10.18.125.38) with Microsoft SMTP Server (TLS) id 14.3.319.2; Thu, 10 May 2018 02:21:11 -0700 Received: from shsmsx103.ccr.corp.intel.com ([169.254.4.210]) by shsmsx102.ccr.corp.intel.com ([169.254.2.79]) with mapi id 14.03.0319.002; Thu, 10 May 2018 17:21:08 +0800 From: "Wu, Jingjing" To: "Xu, Rosen" , "dev@dpdk.org" , "thomas@monjalon.net" CC: "Xu, Rosen" , "Zhang, Roy Fan" , "Doherty, Declan" , "Richardson, Bruce" , "shreyansh.jain@nxp.com" , "Yigit, Ferruh" , "Ananyev, Konstantin" , "Zhang, Tianfei" , "Liu, Song" , "Wu, Hao" , "gaetan.rivet@6wind.com" , "Wu, Yanglong" Thread-Topic: [dpdk-dev] [PATCH v10 3/3] iFPGA: Add Intel FPGA BUS Rawdev Driver Thread-Index: AQHT52listbL4KkKj02spJgpOwv+yqQonRbQ Date: Thu, 10 May 2018 09:21:07 +0000 Message-ID: <9BB6961774997848B5B42BEC655768F81108ED12@SHSMSX103.ccr.corp.intel.com> References: <1521553556-62982-1-git-send-email-rosen.xu@intel.com> <1525851801-16101-1-git-send-email-rosen.xu@intel.com> <1525851801-16101-4-git-send-email-rosen.xu@intel.com> In-Reply-To: <1525851801-16101-4-git-send-email-rosen.xu@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiMGQ5ODY3YzktZmM0YS00ZmYxLWJjNWQtNzE3OTI2ZjQ5NTU5IiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE2LjUuOS4zIiwiVHJ1c3RlZExhYmVsSGFzaCI6IkcyYUNxTkdCYXhNell0MUxpczRvdDc0YUVzWDVCWk5tUXN4Zm9PdVNldnc9In0= x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.0.200.100 dlp-reaction: no-action x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v10 3/3] iFPGA: Add Intel FPGA BUS Rawdev Driver 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: , X-List-Received-Date: Thu, 10 May 2018 09:21:14 -0000 Hi, Rosen Few comments below. Thanks Jingjing [...] > +static int > +ifpga_rawdev_start(struct rte_rawdev *dev) > +{ > + int ret =3D 0; > + struct opae_adapter *adapter; > + > + IFPGA_RAWDEV_PMD_FUNC_TRACE(); > + > + RTE_FUNC_PTR_OR_ERR_RET(dev, -EINVAL); > + > + adapter =3D ifpga_rawdev_get_priv(dev); > + if (!adapter) > + return -ENODEV; > + Set dev->started? > + return ret; > +} [...] > + > +static const struct rte_rawdev_ops ifpga_rawdev_ops =3D { > + .dev_info_get =3D ifpga_rawdev_info_get, > + .dev_configure =3D NULL, If go the declaration of rte_rawdev_configure, you will see "This function = must be invoked first before any other function in the API." So I think we need to function for it, even it does nothing. [...] > +static struct rte_pci_driver rte_ifpga_rawdev_pmd =3D { > + .id_table =3D pci_ifpga_map, > + .drv_flags =3D RTE_PCI_DRV_NEED_MAPPING | RTE_PCI_DRV_INTR_LSC, Is RTE_PCI_DRV_INTR_LSC supported? [...] > +static struct rte_vdev_driver ifpga_cfg_driver =3D { > + .probe =3D ifpga_cfg_probe, > + .remove =3D ifpga_cfg_remove, > +}; > + > +RTE_PMD_REGISTER_VDEV(net_ifpga_cfg, ifpga_cfg_driver); I think prefix net_ would mean the device is net device (eth_dev)? How abou= t to change the prefix to raw_? > +RTE_PMD_REGISTER_ALIAS(net_ifpga_cfg, ifpga_cfg); > +RTE_PMD_REGISTER_PARAM_STRING(net_ifpga_cfg, > + "bdf=3D " ifpga=3D? > + "port=3D " > + "afu_bts=3D"); > +