Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/127509/?format=api
http://patches.dpdk.org/api/patches/127509/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/patch/20230525232331.34645-3-nicolas.chautru@intel.com/", "project": { "id": 1, "url": "http://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20230525232331.34645-3-nicolas.chautru@intel.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20230525232331.34645-3-nicolas.chautru@intel.com", "date": "2023-05-25T23:23:29", "name": "[v1,2/4] bbdev: add new capabilities for FFT processing", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "43296a10fc38ef73f9e7d4286dd7b1562096b397", "submitter": { "id": 1314, "url": "http://patches.dpdk.org/api/people/1314/?format=api", "name": "Chautru, Nicolas", "email": "nicolas.chautru@intel.com" }, "delegate": { "id": 2642, "url": "http://patches.dpdk.org/api/users/2642/?format=api", "username": "mcoquelin", "first_name": "Maxime", "last_name": "Coquelin", "email": "maxime.coquelin@redhat.com" }, "mbox": "http://patches.dpdk.org/project/dpdk/patch/20230525232331.34645-3-nicolas.chautru@intel.com/mbox/", "series": [ { "id": 28192, "url": "http://patches.dpdk.org/api/series/28192/?format=api", "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=28192", "date": "2023-05-25T23:23:27", "name": "bbdev: API extension for 23.11", "version": 1, "mbox": "http://patches.dpdk.org/series/28192/mbox/" } ], "comments": "http://patches.dpdk.org/api/patches/127509/comments/", "check": "success", "checks": "http://patches.dpdk.org/api/patches/127509/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from mails.dpdk.org (mails.dpdk.org [217.70.189.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id C5DD242BA1;\n\tFri, 26 May 2023 01:29:05 +0200 (CEST)", "from mails.dpdk.org (localhost [127.0.0.1])\n\tby mails.dpdk.org (Postfix) with ESMTP id D9A3742BDA;\n\tFri, 26 May 2023 01:28:59 +0200 (CEST)", "from mga18.intel.com (mga18.intel.com [134.134.136.126])\n by mails.dpdk.org (Postfix) with ESMTP id 6C0E640A87\n for <dev@dpdk.org>; Fri, 26 May 2023 01:28:57 +0200 (CEST)", "from orsmga003.jf.intel.com ([10.7.209.27])\n by orsmga106.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384;\n 25 May 2023 16:28:47 -0700", "from spr-npg-bds1-eec2.sn.intel.com (HELO spr-npg-bds1-eec2..)\n ([10.233.181.123])\n by orsmga003.jf.intel.com with ESMTP; 25 May 2023 16:28:42 -0700" ], "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple;\n d=intel.com; i=@intel.com; q=dns/txt; s=Intel;\n t=1685057337; x=1716593337;\n h=from:to:cc:subject:date:message-id:in-reply-to:\n references:mime-version:content-transfer-encoding;\n bh=XPLt+omkIV/bTUJA5DGx+Exobx/S1VAtqV4rp3GjkFQ=;\n b=CAkFQhwt4CTjUq6x89okM9S2XSkWRtYnuQxWDqZds+az36cO09DFduKv\n 2Zt1Z8a2+iipfCdIye2LEtnvCAwt4xbhnQ0HNmM8hdWRNLKXzaCYiNP0+\n GTiS5R2of1IH4GYY1Y9K2grWwd33KzPwvFxV44iZ07EaX4b9db/XiKGq9\n Fv5x7r+6H9QR3GuzbD3L+QklTQI1K7pQF8Q3cZcvhDvXq0OAgIn3CIl4k\n bwZWeUqP3LyGDIkv6M0fiF8cuTPeblUyLO5GwFSR5Wp3Z8+pVHcb1PouW\n IP9hLPHQkj91s9UYIn3I83/Uss2VuRpUTzzbypNfRZIp3EZ7SAKakZvnJ g==;", "X-IronPort-AV": [ "E=McAfee;i=\"6600,9927,10721\"; a=\"338653650\"", "E=Sophos;i=\"6.00,192,1681196400\"; d=\"scan'208\";a=\"338653650\"", "E=McAfee;i=\"6600,9927,10721\"; a=\"655428620\"", "E=Sophos;i=\"6.00,192,1681196400\"; d=\"scan'208\";a=\"655428620\"" ], "X-ExtLoop1": "1", "From": "Nicolas Chautru <nicolas.chautru@intel.com>", "To": "dev@dpdk.org,\n\tmaxime.coquelin@redhat.com", "Cc": "trix@redhat.com, hemant.agrawal@nxp.com, david.marchand@redhat.com,\n hernan.vargas@intel.com, Nicolas Chautru <nicolas.chautru@intel.com>", "Subject": "[PATCH v1 2/4] bbdev: add new capabilities for FFT processing", "Date": "Thu, 25 May 2023 23:23:29 +0000", "Message-Id": "<20230525232331.34645-3-nicolas.chautru@intel.com>", "X-Mailer": "git-send-email 2.34.1", "In-Reply-To": "<20230525232331.34645-1-nicolas.chautru@intel.com>", "References": "<20230525232331.34645-1-nicolas.chautru@intel.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.29", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org" }, "content": "Extending existing FFT operation for new capabilities.\nOptional frequency domain dewindowing, frequency resampling,\ntiming error correction and time offset per CS.\n\nSigned-off-by: Nicolas Chautru <nicolas.chautru@intel.com>\n---\n doc/guides/prog_guide/bbdev.rst | 24 ++++++++++++++++++++++++\n lib/bbdev/rte_bbdev_op.h | 23 ++++++++++++++++++++++-\n 2 files changed, 46 insertions(+), 1 deletion(-)", "diff": "diff --git a/doc/guides/prog_guide/bbdev.rst b/doc/guides/prog_guide/bbdev.rst\nindex 5b09c92963..d5c7522f79 100644\n--- a/doc/guides/prog_guide/bbdev.rst\n+++ b/doc/guides/prog_guide/bbdev.rst\n@@ -1111,6 +1111,18 @@ with the operation flags forming a bitmask in the ``op_flags`` field.\n |RTE_BBDEV_FFT_FP16_OUTPUT |\n | Set if the output data shall use FP16 format instead of INT16 |\n +--------------------------------------------------------------------+\n+|RTE_BBDEV_FFT_TIMING_OFFSET_PER_CS |\n+| Set if device supports adjusting time offset per CS |\n++--------------------------------------------------------------------+\n+|RTE_BBDEV_FFT_TIMING_ERROR |\n+| Set if device supports correcting for timing error |\n++--------------------------------------------------------------------+\n+|RTE_BBDEV_FFT_DEWINDOWING |\n+| Set if enabling the option FFT Dewindowing in Frequency domain |\n++--------------------------------------------------------------------+\n+|RTE_BBDEV_FFT_FREQ_RESAMPLING |\n+| Set if device supports the optional frequency resampling |\n++--------------------------------------------------------------------+\n \n The FFT parameters are set out in the table below.\n \n@@ -1121,6 +1133,8 @@ The FFT parameters are set out in the table below.\n +-------------------------+--------------------------------------------------------------+\n |base_output |output data |\n +-------------------------+--------------------------------------------------------------+\n+|dewindowing_input |optional frequency domain dewindowing input data |\n++-------------------------+--------------------------------------------------------------+\n |power_meas_output |optional output data with power measurement on DFT output |\n +-------------------------+--------------------------------------------------------------+\n |op_flags |bitmask of all active operation capabilities |\n@@ -1155,6 +1169,16 @@ The FFT parameters are set out in the table below.\n +-------------------------+--------------------------------------------------------------+\n |fp16_exp_adjust |value added to FP16 exponent at conversion from INT16 |\n +-------------------------+--------------------------------------------------------------+\n+|freq_resample_mode |frequency ressampling mode (0:transparent, 1-2: resample) |\n++-------------------------+--------------------------------------------------------------+\n+| output_depadded_size |output depadded size prior to frequency resampling |\n++-------------------------+--------------------------------------------------------------+\n+|cs_theta_0 |timing error correction initial phase |\n++-------------------------+--------------------------------------------------------------+\n+|cs_theta_d |timing error correction phase increment |\n++-------------------------+--------------------------------------------------------------+\n+|time_offset |time offset per CS of time domain samples |\n++-------------------------+--------------------------------------------------------------+\n \n The mbuf input ``base_input`` is mandatory for all bbdev PMDs and\n is the incoming data for the processing. Its size may not fit into an actual mbuf,\ndiff --git a/lib/bbdev/rte_bbdev_op.h b/lib/bbdev/rte_bbdev_op.h\nindex 990d110fa7..682e265327 100644\n--- a/lib/bbdev/rte_bbdev_op.h\n+++ b/lib/bbdev/rte_bbdev_op.h\n@@ -50,6 +50,7 @@ extern \"C\" {\n #define RTE_BBDEV_LDPC_MAX_CODE_BLOCKS (256)\n /* 12 CS maximum */\n #define RTE_BBDEV_MAX_CS_2 (6)\n+#define RTE_BBDEV_MAX_CS (12)\n /* MLD-TS up to 4 layers */\n #define RTE_BBDEV_MAX_MLD_LAYERS (4)\n /* 12 SB per RB */\n@@ -242,7 +243,15 @@ enum rte_bbdev_op_fft_flag_bitmasks {\n \t/** Set if the input data used FP16 format. */\n \tRTE_BBDEV_FFT_FP16_INPUT = (1ULL << 6),\n \t/** Set if the output data uses FP16 format. */\n-\tRTE_BBDEV_FFT_FP16_OUTPUT = (1ULL << 7)\n+\tRTE_BBDEV_FFT_FP16_OUTPUT = (1ULL << 7),\n+\t/** Flexible adjustment of Timing offset adjustment per CS. */\n+\tRTE_BBDEV_FFT_TIMING_OFFSET_PER_CS = (1ULL << 8),\n+\t/** Flexible adjustment of Timing error correction per CS. */\n+\tRTE_BBDEV_FFT_TIMING_ERROR = (1ULL << 9),\n+\t/** Set for optional frequency domain dewindowing. */\n+\tRTE_BBDEV_FFT_DEWINDOWING = (1ULL << 10),\n+\t/** Flexible adjustment of frequency resampling mode. */\n+\tRTE_BBDEV_FFT_FREQ_RESAMPLING = (1ULL << 11)\n };\n \n /** Flags for MLDTS operation and capability structure */\n@@ -756,6 +765,8 @@ struct rte_bbdev_op_fft {\n \tstruct rte_bbdev_op_data base_input;\n \t/** Output data starting from first antenna and first cyclic shift. */\n \tstruct rte_bbdev_op_data base_output;\n+\t/** Optional frequency window input data. */\n+\tstruct rte_bbdev_op_data dewindowing_input;\n \t/** Optional power measurement output data. */\n \tstruct rte_bbdev_op_data power_meas_output;\n \t/** Flags from rte_bbdev_op_fft_flag_bitmasks. */\n@@ -790,6 +801,16 @@ struct rte_bbdev_op_fft {\n \tuint16_t power_shift;\n \t/** Adjust the FP6 exponent for INT<->FP16 conversion. */\n \tuint16_t fp16_exp_adjust;\n+\t/** Frequency resampling : 0: Transparent Mode1: 4/3 Resample2: 2/3 Resample. */\n+\tint8_t freq_resample_mode;\n+\t/** Output depadded size prior to frequency resampling. */\n+\tuint16_t output_depadded_size;\n+\t/** Time error correction initial phase. */\n+\tuint16_t cs_theta_0[RTE_BBDEV_MAX_CS];\n+\t/** Time error correction phase increment. */\n+\tuint32_t cs_theta_d[RTE_BBDEV_MAX_CS];\n+\t/* Time offset per CS of time domain samples. */\n+\tint8_t time_offset[RTE_BBDEV_MAX_CS];\n };\n /* >8 End of structure rte_bbdev_op_fft. */\n \n", "prefixes": [ "v1", "2/4" ] }{ "id": 127509, "url": "