summaryrefslogtreecommitdiffstats
path: root/src/net/infiniband.c
Commit message (Collapse)AuthorAgeFilesLines
* [Infiniband] Move event-queue process from driver to Infiniband coreMichael Brown2008-04-211-27/+62
|
* [Infiniband] Add preliminary multiple port support for Hermon cardsMichael Brown2008-04-181-41/+52
| | | | | | | | | | | | Infiniband devices no longer block waiting for link-up in register_ibdev(). Hermon driver needs to create an event queue and poll for link-up events. Infiniband core needs to reread MAD parameters when link state changes. IPoIB needs to cope with Infiniband link parameters being only partially available at probe and open time.
* [Infiniband] Add preliminary support for multi-port devices.Michael Brown2008-02-271-4/+7
| | | | | | | | | | Arbel and Hermon cards both have multiple ports. Add the infrastructure required to register each port as a separate IB device. Don't yet register more than one port, since registration will currently fail unless a valid link is detected. Use ib_*_{set,get}_{drv,owner}data wrappers to access driver- and owner-private data on Infiniband structures.
* [Infiniband] Centralise MAD operationsMichael Brown2008-02-261-0/+222
| | | | | | | | | Pull out common code for handling management datagrams from arbel.c and hermon.c into infiniband.c. Add port number to struct ib_device. Add open(), close() and mad() methods to struct ib_device_operations.
* [Infiniband] Fix typo in debug statementMichael Brown2008-02-231-1/+1
|
* [Infiniband] Add missing list_del()s in ib_create_qp() failure path.Michael Brown2008-02-231-0/+2
|
* Added an almost obscene amount of debugging and assertion code whileMichael Brown2007-09-171-7/+15
| | | | | | | | tracking down a bug that turned out to be a free_iob() used where I needed a netdev_tx_complete(). This left the freed I/O buffer on the net device's TX list, with bad, bad consequences later. Also fixed the bug in question.
* Prepare for adding a metadata queue to IPoIBMichael Brown2007-09-171-89/+2Star
|
* IPoIB code separated out to ipoib.c.Michael Brown2007-09-171-2/+30
|
* create_qp() and destroy_qp() now written (but not tested).Michael Brown2007-09-161-1/+4
|
* Started implementing create_qp() and destroy_qp().Michael Brown2007-09-161-2/+70
|
* Revert to dev_priv/owner_priv scheme, rather than container_of; itMichael Brown2007-09-161-0/+51
| | | | makes it easier to put the generic allocation code into infiniband.c
* post_recv() now works, and we can pass data on the IPoIB queue pairMichael Brown2007-09-161-9/+10
| | | | using entirely our own code.
* Direct polling of TX completion queue now works.Michael Brown2007-09-151-0/+20
|
* Now handling TX completions in our poll loop.Michael Brown2007-09-141-14/+3Star
|
* Can now both send and receive packets. LL header format not yetMichael Brown2007-09-131-0/+11
| | | | | fixed; still using a quick hack-up just to be able to pass through data.
* Started IB driver rewriteMichael Brown2007-09-121-0/+118