[dpdk-dev] [PATCH v2] net/mlx5: add support for 32bit systems

Yongseok Koh yskoh at mellanox.com
Mon Jul 2 22:59:56 CEST 2018


> On Jul 2, 2018, at 4:11 AM, Moti Haimovsky <motih at mellanox.com> wrote:
> 
> This patch adds support for building and running mlx5 PMD on
> 32bit systems such as i686.
> 
> The main issue to tackle was handling the 32bit access to the UAR
> as quoted from the mlx5 PRM:
> QP and CQ DoorBells require 64-bit writes. For best performance, it
> is recommended to execute the QP/CQ DoorBell as a single 64-bit write
> operation. For platforms that do not support 64 bit writes, it is
> possible to issue the 64 bits DoorBells through two consecutive writes,
> each write 32 bits, as described below:
> * The order of writing each of the Dwords is from lower to upper
>  addresses.
> * No other DoorBell can be rung (or even start ringing) in the midst of
>  an on-going write of a DoorBell over a given UAR page.
> The last rule implies that in a multi-threaded environment, the access
> to a UAR page (which can be accessible by all threads in the process)
> must be synchronized (for example, using a semaphore) unless an atomic
> write of 64 bits in a single bus operation is guaranteed. Such a
> synchronization is not required for when ringing DoorBells on different
> UAR pages.
> 
> Signed-off-by: Moti Haimovsky <motih at mellanox.com>
> ---
Acked-by: Yongseok Koh <yskoh at mellanox.com>
 
Thanks



More information about the dev mailing list