From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga09.intel.com (mga09.intel.com [134.134.136.24]) by dpdk.org (Postfix) with ESMTP id 8569729D2 for ; Fri, 1 Apr 2016 13:23:52 +0200 (CEST) Received: from orsmga003.jf.intel.com ([10.7.209.27]) by orsmga102.jf.intel.com with ESMTP; 01 Apr 2016 04:23:52 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.24,427,1455004800"; d="scan'208";a="776126996" Received: from sie-lab-214-036.ir.intel.com (HELO sie-lab-214-36.ir.intel.com) ([10.237.214.36]) by orsmga003.jf.intel.com with ESMTP; 01 Apr 2016 04:23:51 -0700 From: Pablo de Lara To: dev@dpdk.org, john.mcnamara@intel.com Cc: declan.doherty@intel.com, Pablo de Lara Date: Fri, 1 Apr 2016 12:23:57 +0100 Message-Id: <1459509837-41193-1-git-send-email-pablo.de.lara.guarch@intel.com> X-Mailer: git-send-email 2.5.5 Subject: [dpdk-dev] [PATCH] doc: update the snow3g library information X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 01 Apr 2016 11:23:52 -0000 A new process to request the libsso library required by the SNOW3G PMD has been put in place, through a website, replacing the previous email method. This commit updates the SNOW3G documentation, to reflect this change. Since the library does not support newer gcc versions, the documentation also contains a patch to make the library work with gcc > 5.0. Signed-off-by: Pablo de Lara --- doc/guides/cryptodevs/snow3g.rst | 41 ++++++++++++++++++++++++++++++++-------- 1 file changed, 33 insertions(+), 8 deletions(-) diff --git a/doc/guides/cryptodevs/snow3g.rst b/doc/guides/cryptodevs/snow3g.rst index b4c53dc..7e38d20 100644 --- a/doc/guides/cryptodevs/snow3g.rst +++ b/doc/guides/cryptodevs/snow3g.rst @@ -57,15 +57,40 @@ Limitations Installation ------------ -To build DPDK with the SNOW3G_PMD the user is required to get -the export controlled libsso library, sending a request to -`DPDKUser_software_access@intel.com`, and compile it -on their user system before building DPDK: +To build DPDK with the SNOW3G_PMD the user is required to download +the export controlled ``libsso`` library, by requesting it from +``_, +and compiling it on their system before building DPDK:: -.. code-block:: console + make -f Makefile_snow3g - make -f Makefile_snow3g +**Note**: If using a gcc version higher than 5.0, and compilation fails, apply the following patch: -The environmental variable LIBSSO_PATH must be exported with the path +.. code-block:: diff + + /libsso/src/snow3g/sso_snow3g.c + + static inline void ClockFSM_4(sso_snow3gKeyState4_t *pCtx, __m128i *data) + { + __m128i F, R; + - uint32_t K, L; + + uint32_t K; + + /* Declare unused if SNOW3G_WSM/SNB are defined */ + + uint32_t L __attribute__ ((unused)) = 0; + + F = _mm_add_epi32(pCtx->LFSR_X[15], pCtx->FSM_X[0]); + R = _mm_xor_si128(pCtx->LFSR_X[5], pCtx->FSM_X[2]); + + /libsso/include/sso_snow3g_internal.h + + -inline void ClockFSM_1(sso_snow3gKeyState1_t *pCtx, uint32_t *data); + -inline void ClockLFSR_1(sso_snow3gKeyState1_t *pCtx); + -inline void sso_snow3gStateInitialize_1(sso_snow3gKeyState1_t * pCtx, sso_snow3g_key_schedule_t *pKeySched, uint8_t *pIV); + +void ClockFSM_1(sso_snow3gKeyState1_t *pCtx, uint32_t *data); + +void ClockLFSR_1(sso_snow3gKeyState1_t *pCtx); + +void sso_snow3gStateInitialize_1(sso_snow3gKeyState1_t * pCtx, sso_snow3g_key_schedule_t *pKeySched, uint8_t *pIV); + + +The environmental variable ``LIBSSO_PATH`` must be exported with the path where you extracted and built the libsso library and finally set -CONFIG_RTE_LIBRTE_PMD_SNOW3G=y in config/common_base. +``CONFIG_RTE_LIBRTE_PMD_SNOW3G=y`` in ``config/common_base``. -- 2.5.5