From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id F2E2BA2EEB for ; Thu, 12 Sep 2019 14:18:07 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id A5F731E8FA; Thu, 12 Sep 2019 14:18:06 +0200 (CEST) Received: from mail-io1-f65.google.com (mail-io1-f65.google.com [209.85.166.65]) by dpdk.org (Postfix) with ESMTP id BA2691E8AB for ; Thu, 12 Sep 2019 14:18:05 +0200 (CEST) Received: by mail-io1-f65.google.com with SMTP id k13so38744754ioj.1 for ; Thu, 12 Sep 2019 05:18:05 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Y+Pp1iQJaJ/lwdyl3Ngvtarrjk/RrKH6Ck1yeLb3WNg=; b=LR3vz8TicOlBMaxRoICoM/MfqTgBig9422IQHQEtmyisqrOBxBCLlWXWAqV15cpJ84 GZ11gpGWwSBb/7GwXnO0ZGt3yPXlC9rUGsHODpPAs29OwXoFjSrTalseMEV2wfZrMJ+B WuDMD2hIhws6ZIAKigiOXX3ZJ1HXFD+EKYqnFNcgnw30Q/iFLaursKQNyfVdT7+/v0f1 ONobOI4X9ldLlWSTOWQAMGGa4mWQ6/m660MXsQ/ZsbP8CQSLQEDMo0CSDe35JGO9GzKY 6JqFkeFw0rFD+8ofbewBV/1ZM38bqu5EgR/TkUpIuzbSuZp1Vdy8Byc7kPZUEHf5JvPg Ma1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Y+Pp1iQJaJ/lwdyl3Ngvtarrjk/RrKH6Ck1yeLb3WNg=; b=L1lVpErBXlt+LAXA9EChEs8YyHVTb78XcltMgAmv1E/ge3CjalJeUZB1kUvQPdik0t LYs/khimTH4Q6SAE63IpYK1bj5jsFS1dDt6Iw4ykVcqsWYQ/ntJSNeM0nAn/wVoBwU+m WMHaDMjFjX5t2H8lNkYQcQ4FJK74NsWPdnOa1uJ51r9AvfKJMQ0puF7gvhGMcyKfQnK7 HlE8x3Gr7TeNdQkNvP5XIj9nIXeVajDDBudnARGHxNZL+0hZaxuVaXxIXsNgwwk+zsyq ZB8iau33d3nghoMfPJF8KT69H+TinL9hE1e2Gh3HHeBuGScGknPqX0/zF/kosaIkuEEM IPEw== X-Gm-Message-State: APjAAAVaMIEQx19CWoNVwG8K3W3HNbbAXf+nMzapamtSLke+UB+/tMm2 FZAUVNcZJ+gkSuJW4JKIjaXiNUuBEM8iqxPt17k= X-Google-Smtp-Source: APXvYqxF52Gy7L/MB6g5384D+oVtIa4tFENWdmfKq1jJvRlj0EfmvJo2O0wNoofxXb7VM8skCzMvx20s1BirnLqAXrw= X-Received: by 2002:a5d:814d:: with SMTP id f13mr4325561ioo.162.1568290684547; Thu, 12 Sep 2019 05:18:04 -0700 (PDT) MIME-Version: 1.0 References: <20190906072548.12304-1-rmody@marvell.com> <20190906072548.12304-2-rmody@marvell.com> In-Reply-To: <20190906072548.12304-2-rmody@marvell.com> From: Jerin Jacob Date: Thu, 12 Sep 2019 17:47:53 +0530 Message-ID: To: Rasesh Mody Cc: dev@dpdk.org, ferruh.yigit@intel.com, Jerin Jacob , GR-Everest-DPDK-Dev@marvell.com Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [PATCH 1/5] net/bnx2x: update and reorganize HW registers 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Fri, Sep 6, 2019 at 12:57 PM Rasesh Mody wrote: > > Update and reorganize HW registers in preparation to update the firmware > to version 7.13.11. > Move HW_INTERRUT_ASSERT_SET_0 out from ecore_reg.h to bnx2x.h. > > Signed-off-by: Rasesh Mody > --- > drivers/net/bnx2x/bnx2x.c | 3 +- > drivers/net/bnx2x/bnx2x.h | 67 + > drivers/net/bnx2x/ecore_reg.h | 6246 ++++++++++++++++++++++----------- > 3 files changed, 4183 insertions(+), 2133 deletions(-) > +/****************************************************************************** > + * Description: > + * Calculates crc 8 on a word value: polynomial 0-1-2-8 > + * Code was translated from Verilog. Not relevant comment. > + * Return: > + *****************************************************************************/ > +static inline uint8_t calc_crc8(uint32_t data, uint8_t crc) > +{ If is used in slow-path code then move to .c file. If it is standard crc function then please think about reusing dpdk;s CRC lib. > + uint8_t D[32]; > + uint8_t NewCRC[8]; > + uint8_t C[8]; > + uint8_t crc_res; > + uint8_t i; > + > + /* split the data into 31 bits */ > + for (i = 0; i < 32; i++) { > + D[i] = (uint8_t)(data & 1); > + data = data >> 1; > + } > + > + /* split the crc into 8 bits */ > + for (i = 0; i < 8; i++) { > + C[i] = crc & 1; > + crc = crc >> 1; > + } > + > + NewCRC[0] = D[31] ^ D[30] ^ D[28] ^ D[23] ^ D[21] ^ D[19] ^ D[18] ^ > + D[16] ^ D[14] ^ D[12] ^ D[8] ^ D[7] ^ D[6] ^ D[0] ^ C[4] ^ > + C[6] ^ C[7]; > + NewCRC[1] = D[30] ^ D[29] ^ D[28] ^ D[24] ^ D[23] ^ D[22] ^ D[21] ^ > + D[20] ^ D[18] ^ D[17] ^ D[16] ^ D[15] ^ D[14] ^ D[13] ^ > + D[12] ^ D[9] ^ D[6] ^ D[1] ^ D[0] ^ C[0] ^ C[4] ^ C[5] ^ C[6]; > + NewCRC[2] = D[29] ^ D[28] ^ D[25] ^ D[24] ^ D[22] ^ D[17] ^ D[15] ^ > + D[13] ^ D[12] ^ D[10] ^ D[8] ^ D[6] ^ D[2] ^ D[1] ^ D[0] ^ > + C[0] ^ C[1] ^ C[4] ^ C[5]; > + NewCRC[3] = D[30] ^ D[29] ^ D[26] ^ D[25] ^ D[23] ^ D[18] ^ D[16] ^ > + D[14] ^ D[13] ^ D[11] ^ D[9] ^ D[7] ^ D[3] ^ D[2] ^ D[1] ^ > + C[1] ^ C[2] ^ C[5] ^ C[6]; > + NewCRC[4] = D[31] ^ D[30] ^ D[27] ^ D[26] ^ D[24] ^ D[19] ^ D[17] ^ > + D[15] ^ D[14] ^ D[12] ^ D[10] ^ D[8] ^ D[4] ^ D[3] ^ D[2] ^ > + C[0] ^ C[2] ^ C[3] ^ C[6] ^ C[7]; > + NewCRC[5] = D[31] ^ D[28] ^ D[27] ^ D[25] ^ D[20] ^ D[18] ^ D[16] ^ > + D[15] ^ D[13] ^ D[11] ^ D[9] ^ D[5] ^ D[4] ^ D[3] ^ C[1] ^ > + C[3] ^ C[4] ^ C[7]; > + NewCRC[6] = D[29] ^ D[28] ^ D[26] ^ D[21] ^ D[19] ^ D[17] ^ D[16] ^ > + D[14] ^ D[12] ^ D[10] ^ D[6] ^ D[5] ^ D[4] ^ C[2] ^ C[4] ^ C[5]; > + NewCRC[7] = D[30] ^ D[29] ^ D[27] ^ D[22] ^ D[20] ^ D[18] ^ D[17] ^ > + D[15] ^ D[13] ^ D[11] ^ D[7] ^ D[6] ^ D[5] ^ C[3] ^ C[5] ^ C[6]; > + > + crc_res = 0; > + for (i = 0; i < 8; i++) { > + crc_res |= (NewCRC[i] << i); > + } > + > + return crc_res; > +} > + > + > #endif /* ECORE_REG_H */ > -- > 2.18.0 >