-----Original Message----- > Date: Tue, 6 Jun 2017 12:13:08 +0200 > From: Gaëtan Rivet <gaetan.ri...@6wind.com> > To: Bruce Richardson <bruce.richard...@intel.com> > Cc: santosh <santosh.shu...@caviumnetworks.com>, tho...@monjalon.net, > dev@dpdk.org, jerin.ja...@caviumnetworks.com, hemant.agra...@nxp.com > Subject: Re: [dpdk-dev] [RFC] eal/memory: introducing an option to set iova > as va > User-Agent: Mutt/1.5.23 (2014-03-12) > > > > > That sounds a more complete solution. However, it's probably a lot of > > work to implement. :-) > > > > I also wonder if we want to simplify things a little and disallow > > mixed-mode operation i.e. all devices have to use UIO or all use VFIO? > > Would that help to allow simplification or other options. Having a whole > > new bus type seems strange for this. Can each bus just report whether > > it's members require physical addresses. Then the EAL can manage a > > single flag to report whether we are using VA or PA? > > > > Implementing this at a bus level requires all buses to have drivers > iterators, which are currently not exposed, or force all buses to > actively report drivers capabilities upon successful probing. The former > is a sizeable evolution while the latter leads to having duplicated code > in all bus->probe() implementation, which seems unsound. > > I may be mistaken, but is this iova mode not currently limited to > VFIO? Should this API be made generic for all buses or is it only > relevant to the PCI bus? > > If it can stay specific to the PCI bus, then it should simplify greatly > the implementation.
It not PCI bus specific. We can have VFIO platform bus too. NXP bus is a VFIO platform bus. I think, This will help NXP bus as well as currently they are using #ifdef scheme to select PA vs VA.