From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lf0-f65.google.com (mail-lf0-f65.google.com [209.85.215.65]) by dpdk.org (Postfix) with ESMTP id 501AE4F90 for ; Mon, 4 Jun 2018 14:09:34 +0200 (CEST) Received: by mail-lf0-f65.google.com with SMTP id d24-v6so24842334lfa.8 for ; Mon, 04 Jun 2018 05:09:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id; bh=C3QCB81ehVtw9xqlm+lRqxheBWRN3WNj0MB8qUP2fJo=; b=FetznSIMB7ZNVqTD41SaSVxA0U3XmrLhBF6aMgYRIyTsZ5gWzgsXmPSCaxiRrB/6Y6 +HYmm2F8L9s44btmrY3ZZ1QkcEcNJVDb/WIr0gtWybVTq4YCmKG6R3GUsFITxgZMsnM2 bUrhUqlQCDFuY8+Q0jtLQvagBirSNl4CcNfUmHIGpZpKF31SxfPlj6F7RJaISzAEnrj7 5Z8k9iJ0/h2jBv2Gtp7DHnJvTV5QiDv0+EgD/540C0jcifenUXkdmpebNOkOky/VF1MZ mJLjdtmoUxLu7CJRdqwt8xvzVu2Gh1vXFxBxRWl5PnJCgGJjZ1nb9WgBYfCU3e2mLd55 IskQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=C3QCB81ehVtw9xqlm+lRqxheBWRN3WNj0MB8qUP2fJo=; b=fYcZrH1krwtbTZzQwO/6QQpUEvK89GZ2Ba6o5xPBMloNRYf3IH5dI3AepyBXRq/hxP shCXxCTPzvIx5DGw9nb+jBY/s3K4aJYwHNL6b6wiUSDWRUkrmk/YsSm9kcCy0Ivfo91N gBExwiUuJ+oJytzXgMmeTwspu2M/gNuhddB007m8rLtUY8WtidYxpg67qiYFGeaXsa8z KTe/BUM2RECpFeLZI6n4Rx54VV5MRtzFiGWFkJLwagHo5jFbiO+1mk/QoAjihBfqSvtd 6/BXBOjFXPc+uki3O0ze1BGr31UkP8vwkrYd8ada79WsR3H1XzKBg8ITr++arxuiBZZO 9/Dw== X-Gm-Message-State: APt69E1ZHzq+RhwccCSSpOo/KyiNy4Jb3QneJp3OshaNiekPgk5651Ce wfKx6gOVrxv6hABcwm/hEaPpOLeWEwA= X-Google-Smtp-Source: ADUXVKLAbv8bkKGy/ANyix4qSst2lof94loOS2vbPpsOTumoxILJ851cIdTIvdmQ7E3Jqb3c17dawA== X-Received: by 2002:a2e:81a:: with SMTP id 26-v6mr2937882lji.46.1528114173581; Mon, 04 Jun 2018 05:09:33 -0700 (PDT) Received: from mkPC.semihalf.local (31-172-191-173.noc.fibertech.net.pl. [31.172.191.173]) by smtp.gmail.com with ESMTPSA id p85-v6sm3269158lje.29.2018.06.04.05.09.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Mon, 04 Jun 2018 05:09:32 -0700 (PDT) From: Michal Krawczyk To: dev@dpdk.org Cc: mw@semihalf.com, rk@semihalf.com, gtzalik@amazon.com, evgenys@amazon.com, thomas@monjalon.net, matua@amazon.com, anatoly.burakov@intel.com, Michal Krawczyk Date: Mon, 4 Jun 2018 14:09:18 +0200 Message-Id: <20180604120918.16904-1-mk@semihalf.com> X-Mailer: git-send-email 2.14.1 Subject: [dpdk-dev] [PATCH v2 00/26] net/ena: new features and fixes X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 04 Jun 2018 12:09:34 -0000 The ENA driver was updated with the new features and few fixes and minor changes are introduced. First of all, the communication layer which is delivered by vendor was updated - the version in the HEAD is a bit outdated now. ENA is able to communicate with the driver through Admin queue by using admin interrupts instead of polling. Admin interrupts are also used for handling AENQ events, which are used for the following new features: - LSC handlers - watchdog and device rest - monitoring the admin queue - handling ENA notifications (getting hints from device) For the watchdog and admin queue monitoring, the timers had to be used, so the makefile was modified to do not cut out the librte_timer. >>From other fixes and changes: - legacy LLQ was removed which is now deprecated API - Rx out of order completion was added to enable cleaning up packets out of order - Tx mbufs are now linearized if they exceed supported number of segments - pass information about maximum number of Tx and Rx descriptors - the IO queue number is now taking into consideration maximum number of sq and cq - Tx id requested for sending is now being validated and the reset is being triggered if it is invalid - branch predictioning was added for better performance - error checking and returned values were fixed - macros for allocating memory in communication layer were fixed - information about numa mode is now being passed to the NIC --- v2: * Rebased on top of dpdk-next-net * Added link speed patch * Added fix when allocating coherent memory in the PMD Michal Krawczyk (11): net/ena: update ena_com to the newer version net/ena: add interrupt handler for admin queue net/ena: add stop and uninit routines net/ena: add LSC intr support and AENQ handling net/ena: restart only initialized queues instead of all net/ena: add reset routine mk: link librte_timer with --whole-archive net/ena: add watchdog and keep alive AENQ handler net/ena: add checking for admin queue state net/ena: add RX out of order completion net/ena: store handle when allocating coherent memory node Rafal Kozik (15): net/ena: remove support of legacy LLQ net/ena: handle ENA notification net/ena: make watchdog configurable net/ena: linearize Tx mbuf net/ena: add info about max number of Tx/Rx descriptors net/ena: unimplemented handler error net/ena: rework configuration of IO queue numbers net/ena: validate Tx req id net/ena: add (un)likely statements net/ena: adjust error checking and cleaning net/ena: update numa node net/ena: check pointer before memset net/ena: change memory type net/ena: fix GENMASK_ULL macro net/ena: set link speed as none drivers/net/ena/base/ena_com.c | 717 +++++++------- drivers/net/ena/base/ena_com.h | 112 +-- drivers/net/ena/base/ena_defs/ena_admin_defs.h | 1164 +++++++---------------- drivers/net/ena/base/ena_defs/ena_common_defs.h | 8 +- drivers/net/ena/base/ena_defs/ena_eth_io_defs.h | 758 +++++---------- drivers/net/ena/base/ena_defs/ena_gen_info.h | 4 +- drivers/net/ena/base/ena_defs/ena_includes.h | 2 - drivers/net/ena/base/ena_defs/ena_regs_defs.h | 36 + drivers/net/ena/base/ena_eth_com.c | 78 +- drivers/net/ena/base/ena_eth_com.h | 10 +- drivers/net/ena/base/ena_plat.h | 2 - drivers/net/ena/base/ena_plat_dpdk.h | 74 +- drivers/net/ena/ena_ethdev.c | 718 +++++++++++--- drivers/net/ena/ena_ethdev.h | 32 +- mk/rte.app.mk | 1 + 15 files changed, 1709 insertions(+), 2007 deletions(-) -- 2.14.1