]> www.infradead.org Git - users/dwmw2/linux.git/commit
eth: fbnic: Add FW communication mechanism
authorAlexander Duyck <alexanderduyck@fb.com>
Fri, 12 Jul 2024 15:49:31 +0000 (08:49 -0700)
committerJakub Kicinski <kuba@kernel.org>
Mon, 15 Jul 2024 19:50:43 +0000 (12:50 -0700)
commitda3cde08209ec1c915195c2331c275397f34a731
tree377529e3aa1b1e5f9c5df5b9b8cf2954d2197e17
parentc6203e678cc9a5bf01ec7ae382851f504870777f
eth: fbnic: Add FW communication mechanism

Add a mechanism for sending messages to and receiving messages
from the FW. The FW has fairly limited functionality, so the
mechanism doesn't have to support high message rate.

Use device mailbox registers to form two rings, one "to" and
one "from" the device. The rings are just a convention between
driver and FW, not a HW construct. We don't expect messages
larger than 4k so use page-sized buffers.

Signed-off-by: Alexander Duyck <alexanderduyck@fb.com>
Link: https://patch.msgid.link/172079937113.1778861.10669864213768701947.stgit@ahduyck-xeon-server.home.arpa
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
drivers/net/ethernet/meta/fbnic/Makefile
drivers/net/ethernet/meta/fbnic/fbnic.h
drivers/net/ethernet/meta/fbnic/fbnic_csr.h
drivers/net/ethernet/meta/fbnic/fbnic_fw.c [new file with mode: 0644]
drivers/net/ethernet/meta/fbnic/fbnic_fw.h [new file with mode: 0644]
drivers/net/ethernet/meta/fbnic/fbnic_irq.c
drivers/net/ethernet/meta/fbnic/fbnic_pci.c