	    Open Fabrics Enterprise Distribution (OFED)
		    mlx4 in OFED 1.3 Release Notes
			  
			   February 2008


===============================================================================
Table of Contents
===============================================================================
1. Overview
2. Supported Firmware Versions
3. Fixed Bugs and Enhancements
4. Known Issues

===============================================================================
1. Overview
===============================================================================
mlx4 is the low level driver implementation for the ConnectX adapters designed
by Mellanox Technologies. The ConnectX can operate as an InfiniBand adapter,
as an Ethernet NIC, or as a Fibre Channel HBA. To accommodate the three flavors,
the driver is split into two modules:
    
- mlx4_core
	Handles low-level functions like device initialization and firmware
	commands processing. Also controls resource allocation so that the
	InfiniBand, Ethernet and FC functions can share a device without
	interfering with each other.
- mlx4_ib
	Handles InfiniBand-specific functions and plugs into the InfiniBand
	midlayer

mlx4 Available Parameters
--------------------------
In order to set mlx4 parameters, add the following line to /etc/modpobe.conf:
   options mlx4_core parameter=<value>
   or   
   options mlx4_ib   parameter=<value>

mlx4_core parameters:
   msi_x:		attempt to use MSI-X if nonzero (default 1)
   enable_qos:		Enable Quality of Service support in the HCA if > 0, (default 0) 
   block_loopback	Block multicast loopback packets if > 0  (default: 1)
   internal_err_reset:	Reset device on internal errors if non-zero (default 1)
   debug_level:		Enable debug tracing if > 0 (default 0)
   log_num_qp:		log maximum number of QPs per HCA (default is 17; max is 20)
   log_num_srq:		log maximum number of SRQs per HCA (default is 16; max is 20)
   log_rdmarc_per_qp:	log number of RDMARC buffers per QP (default is 4; max is 7)
   log_num_cq:		log maximum number of CQs per HCA (default is 16 max is 20)
   log_num_mcg:		log maximum number of multicast groups per HCA (default is 13; max is 26)
   log_num_mpt:		log maximum number of memory protection table entries per HCA (default is 17; max is 20)
   log_num_mtt:		log maximum number of memory translation table segments per HCA (default is 20; max is 20)

mlx4_ib parameters:
   debug_level: Enable debug tracing if > 0 (default 0)

===============================================================================
2. Supported Firmware Versions
===============================================================================
- This release was tested with FW 2.3.000.
- The minimal version to use is 2.2.000. 
- For QoS need to use version 2.4.928, until a GA release will be available.

===============================================================================
3. Fixed Bugs and Enhancements from OFED 1.2.5.5
===============================================================================
Enhancements:
- Added XRC (eXtended Reliable Connected) support.
- New module parameters:
  Enable/disable QoS support.
  Block multicast loopback packets
  Enable debug tracing 
- Added support for blocking/unblocking self-loopback of multicast packets.
- Added debug tracing for mlx4_ib (controlled by module parameter).
- Added variable-sized WQE capability to kernel-space apps (when
  certain conditions are met, such as 64-bit hosts only) 
- Support for IPoIB LSO feature.

Bug fixes:
- Remove eliminated fields from QUERY_ADAPTER. Get rev_id from MAD_IFC.
  As a result, ibstat now prints out correct revision ID for mlx4.
- Can now create a QP using the value of max_qp_wr returned by ibv_query_device.
- QP limits returned to caller of ibv_create_qp now always lie within device limits.

===============================================================================
4. Known Issues
===============================================================================
- The following commands and/or features are not supported:
  o Resize CQ
  o SQD

- To load the driver on machines with 64KB default page size UAR bar must be
  enlarged. 64KB page size is the default of PPC with RHEL5 and Itanium with
  64KB page size enabled.
  Perform the following three steps:
  1. Add the following line in the firmware configuration (INI) file under the
     [HCA] section:
       log2_uar_bar_megabytes = 5
  2. Burn a modified firmware image with the changed INI file
  3. Reboot the system
     
