From: "谢华伟(此时此刻)" <huawei.xhw@alibaba-inc.com>
To: stable@dpdk.org
Cc: david.marchand@redhat.com, maxime.coquelin@redhat.com,
ferruh.yigit@intel.com, grive@u256.net, heqing.zhu@intel.com,
"谢华伟(此时此刻)" <huawei.xhw@alibaba-inc.com>
Subject: [dpdk-stable] [PATCH 20.11 0/2] support both PIO and MMIO BAR for legacy virito device
Date: Thu, 17 Jun 2021 14:54:50 +0800 [thread overview]
Message-ID: <1623912892-108014-1-git-send-email-huawei.xhw@alibaba-inc.com> (raw)
virtio PMD assumes legacy device only supports PIO(port-mapped) BAR
resource. This is wrong. As we need to create lots of devices, adn PIO
resource on x86 is very limited, we expose MMIO(memory-mapped I/O) BAR.
Kernel supports both PIO and MMIO BAR for legacy virtio-pci device, and
for all other pci devices. This patchset handles different type of BAR in
the similar way.
In previous implementation, under igb_uio driver we get PIO address from
igb_uio sysfs entry; with uio_pci_generic, we get PIO address from
/proc/ioports for x86, and for other ARCHs, we get PIO address from
standard PCI sysfs entry. For PIO/MMIO RW, there is different path for
different drivers and arch.
All of the above is too much twisted. This patchset unifies the way to get
both PIO and MMIO address for different driver and ARCHs, all from standard
resource attr under pci sysfs. This is most generic.
We distinguish PIO and MMIO by their address range like how kernel does.
It is ugly but works.
huawei xie (2):
bus/pci: use PCI standard sysfs entry to get PIO address
bus/pci: support MMIO in PCI ioport accessors
drivers/bus/pci/linux/pci.c | 81 ---------------
drivers/bus/pci/linux/pci_uio.c | 214 ++++++++++++++++++++++++++++------------
2 files changed, 150 insertions(+), 145 deletions(-)
--
1.8.3.1
next reply other threads:[~2021-06-17 6:55 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-17 6:54 谢华伟(此时此刻) [this message]
2021-06-17 6:54 ` [dpdk-stable] [PATCH 20.11 1/2] bus/pci: use PCI standard sysfs entry to get PIO address 谢华伟(此时此刻)
2021-06-17 6:54 ` [dpdk-stable] [PATCH 20.11 2/2] bus/pci: support MMIO in PCI ioport accessors 谢华伟(此时此刻)
2021-06-20 15:02 ` [dpdk-stable] [PATCH 20.11 0/2] support both PIO and MMIO BAR for legacy virito device Xueming(Steven) Li
2021-06-22 7:38 ` Thomas Monjalon
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1623912892-108014-1-git-send-email-huawei.xhw@alibaba-inc.com \
--to=huawei.xhw@alibaba-inc.com \
--cc=david.marchand@redhat.com \
--cc=ferruh.yigit@intel.com \
--cc=grive@u256.net \
--cc=heqing.zhu@intel.com \
--cc=maxime.coquelin@redhat.com \
--cc=stable@dpdk.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).