summaryrefslogtreecommitdiff
path: root/drivers/baseband
diff options
context:
space:
mode:
authorKamil Chalupnik <kamilx.chalupnik@intel.com>2018-05-09 16:25:55 +0200
committerPablo de Lara <pablo.de.lara.guarch@intel.com>2018-05-10 17:46:20 +0100
commit2efe2b435f877705884af07cad6906c9087bec15 (patch)
tree1f2dee13293998d31bbc3a5d6537d0ba762dce61 /drivers/baseband
parent47d5a04969567f40b01e1b5b918f2ef1b1121c7a (diff)
downloaddpdk-next-eventdev-2efe2b435f877705884af07cad6906c9087bec15.zip
dpdk-next-eventdev-2efe2b435f877705884af07cad6906c9087bec15.tar.gz
dpdk-next-eventdev-2efe2b435f877705884af07cad6906c9087bec15.tar.xz
baseband/turbo_sw: increase internal buffers
Sizes of the internal buffers used by decoding were increased due to problem with memory for large vectors Signed-off-by: Kamil Chalupnik <kamilx.chalupnik@intel.com> Acked-by: Amr Mokhtar <amr.mokhtar@intel.com>
Diffstat (limited to 'drivers/baseband')
-rw-r--r--drivers/baseband/turbo_sw/bbdev_turbo_software.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/drivers/baseband/turbo_sw/bbdev_turbo_software.c b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
index 9f01abf..c3c250b 100644
--- a/drivers/baseband/turbo_sw/bbdev_turbo_software.c
+++ b/drivers/baseband/turbo_sw/bbdev_turbo_software.c
@@ -32,6 +32,10 @@ static int bbdev_turbo_sw_logtype;
rte_bbdev_log(DEBUG, RTE_STR(__LINE__) ":%s() " fmt, __func__, \
##__VA_ARGS__)
+#define DEINT_INPUT_BUF_SIZE (((RTE_BBDEV_MAX_CB_SIZE >> 3) + 1) * 48)
+#define DEINT_OUTPUT_BUF_SIZE (DEINT_INPUT_BUF_SIZE * 6)
+#define ADAPTER_OUTPUT_BUF_SIZE ((RTE_BBDEV_MAX_CB_SIZE + 4) * 48)
+
/* private data structure */
struct bbdev_private {
unsigned int max_nb_queues; /**< Max number of queues */
@@ -285,7 +289,7 @@ q_setup(struct rte_bbdev *dev, uint16_t q_id,
return -ENAMETOOLONG;
}
q->code_block = rte_zmalloc_socket(name,
- (6144 >> 3) * sizeof(*q->code_block),
+ RTE_BBDEV_MAX_CB_SIZE * sizeof(*q->code_block),
RTE_CACHE_LINE_SIZE, queue_conf->socket);
if (q->code_block == NULL) {
rte_bbdev_log(ERR,
@@ -304,7 +308,7 @@ q_setup(struct rte_bbdev *dev, uint16_t q_id,
return -ENAMETOOLONG;
}
q->deint_input = rte_zmalloc_socket(name,
- RTE_BBDEV_MAX_KW * sizeof(*q->deint_input),
+ DEINT_INPUT_BUF_SIZE * sizeof(*q->deint_input),
RTE_CACHE_LINE_SIZE, queue_conf->socket);
if (q->deint_input == NULL) {
rte_bbdev_log(ERR,
@@ -323,7 +327,7 @@ q_setup(struct rte_bbdev *dev, uint16_t q_id,
return -ENAMETOOLONG;
}
q->deint_output = rte_zmalloc_socket(NULL,
- RTE_BBDEV_MAX_KW * sizeof(*q->deint_output),
+ DEINT_OUTPUT_BUF_SIZE * sizeof(*q->deint_output),
RTE_CACHE_LINE_SIZE, queue_conf->socket);
if (q->deint_output == NULL) {
rte_bbdev_log(ERR,
@@ -342,7 +346,7 @@ q_setup(struct rte_bbdev *dev, uint16_t q_id,
return -ENAMETOOLONG;
}
q->adapter_output = rte_zmalloc_socket(NULL,
- RTE_BBDEV_MAX_CB_SIZE * 6 * sizeof(*q->adapter_output),
+ ADAPTER_OUTPUT_BUF_SIZE * sizeof(*q->adapter_output),
RTE_CACHE_LINE_SIZE, queue_conf->socket);
if (q->adapter_output == NULL) {
rte_bbdev_log(ERR,