doc: announce iomem and ioport removal from igb_uio
authorJianfeng Tan <jianfeng.tan@intel.com>
Thu, 22 Sep 2016 05:44:05 +0000 (05:44 +0000)
committerThomas Monjalon <thomas.monjalon@6wind.com>
Sun, 13 Nov 2016 13:54:09 +0000 (14:54 +0100)
commit3bac1dbc1ed5295a088405c84c85d03c1cc25f30
tree478e8ef4e732c7ad997bb17052fc8dea4c6a92ac
parent6be532b9299a86bf75e06424fa98ffcf7b7cfa06
doc: announce iomem and ioport removal from igb_uio

In igb_uio, iomem is mapped, and both ioport and io mem are recorded
into uio framework (then into sysfs files), which is duplicated with
what Linux has already provided for user space, and makes the code
too complex.

For iomem, DPDK user space code never opens or reads files under
/sys/pci/bus/devices/xxxx:xx:xx.x/uio/uioY/maps/. Instead,
/sys/pci/bus/devices/xxxx:xx:xx.x/resourceY are used to map device
memory.

For ioport, non-x86 platforms cannot read from files under
/sys/pci/bus/devices/xxxx:xx:xx.x/uio/uioY/portio/ directly, because
non-x86 platforms need to map port region for access in user space,
see non-x86 version pci_uio_ioport_map(). x86 platforms can use the
the same way as uio_pci_generic.

This will remove iomem and ioport mapping in igb_uio kernel module,
and adjusts the iomem implementation in both igb_uio and
uio_pci_generic:
  - for x86 platform, get ports info from /proc/ioports;
  - for non-x86 platform, map and get ports info by pci_uio_ioport_map().

Note: this will affect those applications who are using files under
/sys/pci/bus/devices/xxxx:xx:xx.x/uio/uioY/maps/ and
/sys/pci/bus/devices/xxxx:xx:xx.x/uio/uioY/portio/.

Suggested-by: Ferruh Yigit <ferruh.yigit@intel.com>
Signed-off-by: Jianfeng Tan <jianfeng.tan@intel.com>
Acked-by: Ferruh Yigit <ferruh.yigit@intel.com>
Acked-by: Remy Horton <remy.horton@intel.com>
doc/guides/rel_notes/deprecation.rst