Skip to content

Commit ddb2705

Browse files
AlaiaLcodebot
authored andcommitted
du_unit: moved the DPDK DU low code to the DU low folder
1 parent 1ba7fda commit ddb2705

File tree

11 files changed

+106
-304
lines changed

11 files changed

+106
-304
lines changed

apps/units/flexible_du/du_low/du_low_config_cli11_schema.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -242,7 +242,7 @@ static void configure_cli11_bbdev_hwacc_args(CLI::App& app, std::optional<bbdev_
242242
{
243243
config.emplace();
244244

245-
app.add_option("--bbdev_acc_type", config->hwacc_type, "Type of BBDEV implementation")->capture_default_str();
245+
app.add_option("--bbdev_acc_type", config->bbdev_acc_type, "Type of BBDEV implementation")->capture_default_str();
246246
app.add_option("--hwacc_type", config->hwacc_type, "Type of BBDEV hardware-accelerator")->capture_default_str();
247247
app.add_option("--id", config->id, "ID of the BBDEV-based hardware-accelerator.")
248248
->capture_default_str()

apps/units/flexible_du/du_low/du_low_config_translator.cpp

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@ using namespace srsran;
2020

2121
static void generate_du_low_config(srs_du::du_low_config& out_config,
2222
const du_low_unit_config& du_low,
23-
const hal_upper_phy_config& hal_config,
2423
span<const srs_du::du_cell_config> du_cells,
2524
span<const unsigned> max_puschs_per_slot,
2625
unsigned du_id)
@@ -31,9 +30,6 @@ static void generate_du_low_config(srs_du::du_low_config& out_config
3130
const srs_du::du_cell_config& cell = du_cells[i];
3231
upper_phy_config& upper_phy_cell = out_config.cells.emplace_back().upper_phy_cfg;
3332

34-
// Initialize the HAL config of the upper PHY.
35-
upper_phy_cell.hal_config = hal_config;
36-
3733
// Get band, frequency range and duplex mode from the band.
3834
nr_band band = cell.dl_carrier.band;
3935
const frequency_range freq_range = band_helper::get_freq_range(band);
@@ -160,16 +156,13 @@ static void generate_du_low_config(srs_du::du_low_config& out_config
160156
}
161157
}
162158

163-
void srsran::generate_du_low_wrapper_config(srs_du::du_low_wrapper_config& out_config,
164-
const du_low_unit_config& du_low_unit_cfg,
165-
const hal_upper_phy_config& hal_config,
166-
std::vector<srs_du::cell_prach_ports_entry> prach_ports,
167-
span<const srs_du::du_cell_config> du_cells,
168-
span<const unsigned> max_puschs_per_slot,
169-
unsigned du_id)
159+
void srsran::generate_du_low_wrapper_config(srs_du::du_low_wrapper_config& out_config,
160+
const du_low_unit_config& du_low_unit_cfg,
161+
span<const srs_du::du_cell_config> du_cells,
162+
span<const unsigned> max_puschs_per_slot,
163+
unsigned du_id)
170164
{
171-
generate_du_low_config(out_config.du_low_cfg, du_low_unit_cfg, hal_config, du_cells, max_puschs_per_slot, du_id);
172-
out_config.prach_ports = std::move(prach_ports);
165+
generate_du_low_config(out_config.du_low_cfg, du_low_unit_cfg, du_cells, max_puschs_per_slot, du_id);
173166
}
174167

175168
void srsran::fill_du_low_worker_manager_config(worker_manager_config& config,

apps/units/flexible_du/du_low/du_low_config_translator.h

Lines changed: 5 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,11 @@ struct du_low_config;
2323
struct du_low_unit_config;
2424
struct worker_manager_config;
2525

26-
void generate_du_low_wrapper_config(srs_du::du_low_wrapper_config& out_config,
27-
const du_low_unit_config& du_low_unit_cfg,
28-
const hal_upper_phy_config& hal_config,
29-
std::vector<srs_du::cell_prach_ports_entry> prach_ports,
30-
span<const srs_du::du_cell_config> du_cells,
31-
span<const unsigned> max_puschs_per_slot,
32-
unsigned du_id);
26+
void generate_du_low_wrapper_config(srs_du::du_low_wrapper_config& out_config,
27+
const du_low_unit_config& du_low_unit_cfg,
28+
span<const srs_du::du_cell_config> du_cells,
29+
span<const unsigned> max_puschs_per_slot,
30+
unsigned du_id);
3331

3432
/// Fills the DU low worker manager parameters of the given worker manager configuration.
3533
void fill_du_low_worker_manager_config(worker_manager_config& config,

apps/units/flexible_du/du_low/du_low_wrapper_config_helper.cpp

Lines changed: 91 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,6 +14,13 @@
1414
#include "du_low_config_translator.h"
1515
#include "srsran/du/du_low/du_low_wrapper_factory.h"
1616
#include "srsran/ran/slot_pdu_capacity_constants.h"
17+
#ifdef DPDK_FOUND
18+
#include "srsran/hal/dpdk/bbdev/bbdev_acc.h"
19+
#include "srsran/hal/dpdk/bbdev/bbdev_acc_factory.h"
20+
#include "srsran/hal/phy/upper/channel_processors/hw_accelerator_factories.h"
21+
#include "srsran/hal/phy/upper/channel_processors/pusch/ext_harq_buffer_context_repository_factory.h"
22+
#include "srsran/hal/phy/upper/channel_processors/pusch/hw_accelerator_factories.h"
23+
#endif // DPDK_FOUND
1724

1825
using namespace srsran;
1926

@@ -55,7 +62,6 @@ static void generate_dl_processor_config(downlink_processor_factory_sw_config& o
5562
void srsran::make_du_low_wrapper_config_and_dependencies(
5663
srs_du::du_low_wrapper_config& out_cfg,
5764
const du_low_unit_config& du_low_unit_cfg,
58-
const hal_upper_phy_config& hal_config,
5965
std::vector<srs_du::cell_prach_ports_entry> prach_ports,
6066
span<const srs_du::du_cell_config> du_cells,
6167
span<const unsigned> max_puschs_per_slot,
@@ -66,8 +72,90 @@ void srsran::make_du_low_wrapper_config_and_dependencies(
6672
{
6773
out_cfg.du_low_cfg.logger = &srslog::fetch_basic_logger("DU");
6874

69-
generate_du_low_wrapper_config(
70-
out_cfg, du_low_unit_cfg, hal_config, std::move(prach_ports), du_cells, max_puschs_per_slot, du_id);
75+
// Initialize hardware-accelerator (only if needed).
76+
hal_upper_phy_config hal_config = {};
77+
hal_config.hwacc_pdsch_processor = false;
78+
hal_config.hwacc_pusch_processor = false;
79+
#ifdef DPDK_FOUND
80+
if (du_low_unit_cfg.hal_config && du_low_unit_cfg.hal_config->bbdev_hwacc &&
81+
!du_low_unit_cfg.hal_config->bbdev_hwacc->hwacc_type.empty()) {
82+
const bbdev_appconfig& bbdev_app_cfg = du_low_unit_cfg.hal_config->bbdev_hwacc.value();
83+
srslog::basic_logger& hwacc_logger = srslog::fetch_basic_logger("HWACC", false);
84+
hwacc_logger.set_level(du_low_unit_cfg.loggers.hal_level);
85+
86+
hal::bbdev_hwacc_pdsch_enc_factory_configuration hwacc_pdsch_enc_cfg = {};
87+
hal::bbdev_hwacc_pusch_dec_factory_configuration hwacc_pusch_dec_cfg = {};
88+
std::shared_ptr<hal::ext_harq_buffer_context_repository> harq_buffer_context = nullptr;
89+
unsigned nof_hwacc_dus = du_cells.size();
90+
91+
// Create a bbdev accelerator factory.
92+
std::unique_ptr<dpdk::bbdev_acc_factory> bbdev_acc_factory =
93+
dpdk::create_bbdev_acc_factory(bbdev_app_cfg.bbdev_acc_type);
94+
report_error_if_not(bbdev_acc_factory,
95+
"Unable to create the {} bbdev hardware-accelerator interface factory.",
96+
bbdev_app_cfg.bbdev_acc_type);
97+
98+
// Intefacing to the bbdev-based hardware-accelerator.
99+
dpdk::bbdev_acc_configuration bbdev_config;
100+
bbdev_config.id = bbdev_app_cfg.id;
101+
if (bbdev_app_cfg.pdsch_enc && bbdev_app_cfg.pdsch_enc->nof_hwacc > 0) {
102+
bbdev_config.nof_ldpc_enc_lcores = nof_hwacc_dus * bbdev_app_cfg.pdsch_enc->nof_hwacc;
103+
}
104+
if (bbdev_app_cfg.pusch_dec && bbdev_app_cfg.pusch_dec->nof_hwacc > 0) {
105+
bbdev_config.nof_ldpc_dec_lcores = nof_hwacc_dus * bbdev_app_cfg.pusch_dec->nof_hwacc;
106+
}
107+
// If no msg_mbuf size is defined, a worst-case value will be used.
108+
bbdev_config.msg_mbuf_size = bbdev_app_cfg.msg_mbuf_size.value_or(RTE_BBDEV_LDPC_E_MAX_MBUF);
109+
// If no rm_mbuf size is defined, a worst-case value will be used.
110+
bbdev_config.rm_mbuf_size = bbdev_app_cfg.rm_mbuf_size.value_or(RTE_BBDEV_LDPC_E_MAX_MBUF);
111+
// If no number of mbufs is defined, a worst-case value will be used.
112+
bbdev_config.nof_mbuf = bbdev_app_cfg.nof_mbuf.value_or(static_cast<unsigned>(pow2(log2_ceil(MAX_NOF_SEGMENTS))));
113+
std::shared_ptr<dpdk::bbdev_acc> bbdev_accelerator = bbdev_acc_factory->create(bbdev_config, hwacc_logger);
114+
report_error_if_not(bbdev_accelerator, "Unable to open the {} hardware-accelerator.", bbdev_app_cfg.hwacc_type);
115+
116+
// Configure the hardware-accelerated PDSCH encoding factory (only if needed).
117+
if (bbdev_app_cfg.pdsch_enc && bbdev_app_cfg.pdsch_enc->nof_hwacc > 0) {
118+
hwacc_pdsch_enc_cfg.acc_type = bbdev_app_cfg.hwacc_type;
119+
hwacc_pdsch_enc_cfg.bbdev_accelerator = bbdev_accelerator;
120+
hwacc_pdsch_enc_cfg.cb_mode = bbdev_app_cfg.pdsch_enc->cb_mode;
121+
// If no maximum buffer size is defined, a worst-case value will be used.
122+
hwacc_pdsch_enc_cfg.max_tb_size = bbdev_app_cfg.pdsch_enc->max_buffer_size.value_or(RTE_BBDEV_LDPC_E_MAX_MBUF);
123+
hwacc_pdsch_enc_cfg.dedicated_queue = bbdev_app_cfg.pdsch_enc->dedicated_queue;
124+
hal_config.hwacc_pdsch_processor = true;
125+
hal_config.hwacc_pdsch_enc_cfg = hwacc_pdsch_enc_cfg;
126+
}
127+
128+
// Configure the hardware-accelerated PUSCH decoding factory (only if needed).
129+
if (bbdev_app_cfg.pusch_dec && bbdev_app_cfg.pusch_dec->nof_hwacc > 0) {
130+
hwacc_pusch_dec_cfg.acc_type = bbdev_app_cfg.hwacc_type;
131+
hwacc_pusch_dec_cfg.bbdev_accelerator = bbdev_accelerator;
132+
hwacc_pusch_dec_cfg.ext_softbuffer = bbdev_app_cfg.pusch_dec->ext_softbuffer;
133+
if (hwacc_pusch_dec_cfg.ext_softbuffer) {
134+
// Set up an external HARQ buffer context repository.
135+
unsigned nof_cbs = bbdev_app_cfg.pusch_dec->harq_context_size.value_or(MAX_NOF_SEGMENTS);
136+
uint64_t ext_harq_buff_size = bbdev_accelerator->get_harq_buff_size_bytes();
137+
harq_buffer_context = hal::create_ext_harq_buffer_context_repository(nof_cbs, ext_harq_buff_size, false);
138+
report_error_if_not(harq_buffer_context,
139+
"Unable to create the external HARQ buffer context for the {} hardware-accelerator.",
140+
bbdev_app_cfg.hwacc_type);
141+
hwacc_pusch_dec_cfg.harq_buffer_context = harq_buffer_context;
142+
}
143+
hwacc_pusch_dec_cfg.dedicated_queue = bbdev_app_cfg.pusch_dec->dedicated_queue;
144+
hal_config.hwacc_pusch_processor = true;
145+
hal_config.hwacc_pusch_dec_cfg = hwacc_pusch_dec_cfg;
146+
}
147+
}
148+
#endif // DPDK_FOUND
149+
150+
generate_du_low_wrapper_config(out_cfg, du_low_unit_cfg, du_cells, max_puschs_per_slot, du_id);
151+
152+
// Fill the hal config.
153+
for (auto& cell : out_cfg.du_low_cfg.cells) {
154+
cell.upper_phy_cfg.hal_config = hal_config;
155+
}
156+
157+
// Fill the PRACH ports.
158+
out_cfg.prach_ports = std::move(prach_ports);
71159

72160
// Fill the workers information.
73161
for (unsigned i = 0, e = out_cfg.du_low_cfg.cells.size(); i != e; ++i) {

apps/units/flexible_du/du_low/du_low_wrapper_config_helper.h

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ struct worker_manager;
2424

2525
void make_du_low_wrapper_config_and_dependencies(srs_du::du_low_wrapper_config& out_cfg,
2626
const du_low_unit_config& du_low_unit_cfg,
27-
const hal_upper_phy_config& hal_config,
2827
std::vector<srs_du::cell_prach_ports_entry> prach_ports,
2928
span<const srs_du::du_cell_config> du_cells,
3029
span<const unsigned> max_puschs_per_slot,

apps/units/flexible_du/split_7_2/CMakeLists.txt

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ if (DU_SPLIT_7_2)
2121

2222
add_library(srsran_flexible_du STATIC ${SOURCES})
2323
target_include_directories(srsran_flexible_du PRIVATE ${CMAKE_SOURCE_DIR})
24-
set(FLEXIBLE_DU_LIBRARIES
24+
target_link_libraries(srsran_flexible_du
2525
srsran_du_wrapper
2626
srsran_pcap
2727
srsran_app_services
@@ -30,13 +30,4 @@ if (DU_SPLIT_7_2)
3030
srsran_split_7_2_app_unit_helpers
3131
srsran_du_high_unit_helpers)
3232

33-
# Hardware acceleration for both PUSCH and PDSCH is enabled by default when using DPDK.
34-
if (DPDK_FOUND)
35-
set_source_files_properties(split_7_2_du_factory.cpp PROPERTIES COMPILE_DEFINITIONS "DPDK_FOUND; HWACC_PDSCH_ENABLED; HWACC_PUSCH_ENABLED")
36-
list(APPEND FLEXIBLE_DU_LIBRARIES hal_hwacc_pusch
37-
hal_hwacc_pdsch
38-
hal_bbdev_factory)
39-
endif (DPDK_FOUND)
40-
target_link_libraries(srsran_flexible_du ${FLEXIBLE_DU_LIBRARIES})
41-
4233
endif ()

apps/units/flexible_du/split_7_2/split_7_2_du_factory.cpp

Lines changed: 0 additions & 83 deletions
Original file line numberDiff line numberDiff line change
@@ -23,13 +23,6 @@
2323
#include "srsran/du/du_wrapper_factory.h"
2424
#include "srsran/pcap/rlc_pcap.h"
2525
#include "srsran/ru/ru_dummy_factory.h"
26-
#ifdef DPDK_FOUND
27-
#include "srsran/hal/dpdk/bbdev/bbdev_acc.h"
28-
#include "srsran/hal/dpdk/bbdev/bbdev_acc_factory.h"
29-
#include "srsran/hal/phy/upper/channel_processors/hw_accelerator_factories.h"
30-
#include "srsran/hal/phy/upper/channel_processors/pusch/ext_harq_buffer_context_repository_factory.h"
31-
#include "srsran/hal/phy/upper/channel_processors/pusch/hw_accelerator_factories.h"
32-
#endif // DPDK_FOUND
3326

3427
using namespace srsran;
3528

@@ -108,81 +101,6 @@ du_unit srsran::create_split_7_2_du(const split_7_2_du_unit_config& du_72_cfg, c
108101
max_pusch_per_slot.push_back(high.cell.pusch_cfg.max_puschs_per_slot);
109102
}
110103

111-
// Initialize hardware-accelerator (only if needed).
112-
hal_upper_phy_config hal_config = {};
113-
hal_config.hwacc_pdsch_processor = false;
114-
hal_config.hwacc_pusch_processor = false;
115-
#ifdef DPDK_FOUND
116-
hal::bbdev_hwacc_pdsch_enc_factory_configuration hwacc_pdsch_enc_cfg = {};
117-
hal::bbdev_hwacc_pusch_dec_factory_configuration hwacc_pusch_dec_cfg = {};
118-
std::shared_ptr<hal::ext_harq_buffer_context_repository> harq_buffer_context = nullptr;
119-
unsigned nof_hwacc_dus = du_cells.size();
120-
if (!du_lo.hal_config->bbdev_hwacc->hwacc_type.empty()) {
121-
srslog::basic_logger& hwacc_logger = srslog::fetch_basic_logger("HWACC", false);
122-
hwacc_logger.set_level(du_lo.loggers.hal_level);
123-
124-
// Create a bbdev accelerator factory.
125-
std::unique_ptr<dpdk::bbdev_acc_factory> bbdev_acc_factory =
126-
srsran::dpdk::create_bbdev_acc_factory(du_lo.hal_config->bbdev_hwacc->bbdev_acc_type);
127-
report_error_if_not(bbdev_acc_factory,
128-
"Unable to create the {} bbdev hardware-accelerator interface factory.",
129-
du_lo.hal_config->bbdev_hwacc->bbdev_acc_type);
130-
131-
// Intefacing to the bbdev-based hardware-accelerator.
132-
dpdk::bbdev_acc_configuration bbdev_config;
133-
bbdev_config.id = du_lo.hal_config->bbdev_hwacc->id;
134-
if (du_lo.hal_config->bbdev_hwacc->pdsch_enc->nof_hwacc > 0) {
135-
bbdev_config.nof_ldpc_enc_lcores = nof_hwacc_dus * du_lo.hal_config->bbdev_hwacc->pdsch_enc->nof_hwacc;
136-
}
137-
if (du_lo.hal_config->bbdev_hwacc->pusch_dec->nof_hwacc > 0) {
138-
bbdev_config.nof_ldpc_dec_lcores = nof_hwacc_dus * du_lo.hal_config->bbdev_hwacc->pusch_dec->nof_hwacc;
139-
}
140-
// If no msg_mbuf size is defined, a worst-case value will be used.
141-
bbdev_config.msg_mbuf_size = du_lo.hal_config->bbdev_hwacc->msg_mbuf_size.value_or(RTE_BBDEV_LDPC_E_MAX_MBUF);
142-
// If no rm_mbuf size is defined, a worst-case value will be used.
143-
bbdev_config.rm_mbuf_size = du_lo.hal_config->bbdev_hwacc->rm_mbuf_size.value_or(RTE_BBDEV_LDPC_E_MAX_MBUF);
144-
// If no number of mbufs is defined, a worst-case value will be used.
145-
bbdev_config.nof_mbuf =
146-
du_lo.hal_config->bbdev_hwacc->nof_mbuf.value_or(static_cast<unsigned>(pow2(log2_ceil(MAX_NOF_SEGMENTS))));
147-
std::shared_ptr<dpdk::bbdev_acc> bbdev_accelerator = bbdev_acc_factory->create(bbdev_config, hwacc_logger);
148-
report_error_if_not(
149-
bbdev_accelerator, "Unable to open the {} hardware-accelerator.", du_lo.hal_config->bbdev_hwacc->hwacc_type);
150-
151-
// Configure the hardware-accelerated PDSCH encoding factory (only if needed).
152-
if (du_lo.hal_config->bbdev_hwacc->pdsch_enc->nof_hwacc > 0) {
153-
hwacc_pdsch_enc_cfg.acc_type = du_lo.hal_config->bbdev_hwacc->hwacc_type;
154-
hwacc_pdsch_enc_cfg.bbdev_accelerator = bbdev_accelerator;
155-
hwacc_pdsch_enc_cfg.cb_mode = du_lo.hal_config->bbdev_hwacc->pdsch_enc->cb_mode;
156-
// If no maximum buffer size is defined, a worst-case value will be used.
157-
hwacc_pdsch_enc_cfg.max_tb_size =
158-
du_lo.hal_config->bbdev_hwacc->pdsch_enc->max_buffer_size.value_or(RTE_BBDEV_LDPC_E_MAX_MBUF);
159-
hwacc_pdsch_enc_cfg.dedicated_queue = du_lo.hal_config->bbdev_hwacc->pdsch_enc->dedicated_queue;
160-
hal_config.hwacc_pdsch_processor = true;
161-
hal_config.hwacc_pdsch_enc_cfg = hwacc_pdsch_enc_cfg;
162-
}
163-
164-
// Configure the hardware-accelerated PUSCH decoding factory (only if needed).
165-
if (du_lo.hal_config->bbdev_hwacc->pusch_dec->nof_hwacc > 0) {
166-
hwacc_pusch_dec_cfg.acc_type = du_lo.hal_config->bbdev_hwacc->hwacc_type;
167-
hwacc_pusch_dec_cfg.bbdev_accelerator = bbdev_accelerator;
168-
hwacc_pusch_dec_cfg.ext_softbuffer = du_lo.hal_config->bbdev_hwacc->pusch_dec->ext_softbuffer;
169-
if (hwacc_pusch_dec_cfg.ext_softbuffer) {
170-
// Set up an external HARQ buffer context repository.
171-
unsigned nof_cbs = du_lo.hal_config->bbdev_hwacc->pusch_dec->harq_context_size.value_or(MAX_NOF_SEGMENTS);
172-
uint64_t ext_harq_buff_size = bbdev_accelerator->get_harq_buff_size_bytes();
173-
harq_buffer_context = hal::create_ext_harq_buffer_context_repository(nof_cbs, ext_harq_buff_size, false);
174-
report_error_if_not(harq_buffer_context,
175-
"Unable to create the external HARQ buffer context for the {} hardware-accelerator.",
176-
du_lo.hal_config->bbdev_hwacc->hwacc_type);
177-
hwacc_pusch_dec_cfg.harq_buffer_context = harq_buffer_context;
178-
}
179-
hwacc_pusch_dec_cfg.dedicated_queue = du_lo.hal_config->bbdev_hwacc->pusch_dec->dedicated_queue;
180-
hal_config.hwacc_pusch_processor = true;
181-
hal_config.hwacc_pusch_dec_cfg = hwacc_pusch_dec_cfg;
182-
}
183-
}
184-
#endif // DPDK_FOUND
185-
186104
for (unsigned i = 0, e = du_cells.size(); i != e; ++i) {
187105
// Create one DU per cell.
188106
srs_du::du_wrapper_config du_cfg = {};
@@ -192,7 +110,6 @@ du_unit srsran::create_split_7_2_du(const split_7_2_du_unit_config& du_72_cfg, c
192110

193111
make_du_low_wrapper_config_and_dependencies(du_cfg.du_low_cfg,
194112
du_lo,
195-
hal_config,
196113
{prach_ports[i]},
197114
span<const srs_du::du_cell_config>(&du_cells[i], 1),
198115
span<const unsigned>(&max_pusch_per_slot[i], 1),

apps/units/flexible_du/split_8/CMakeLists.txt

Lines changed: 1 addition & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@ if (DU_SPLIT_8)
2121

2222
add_library(srsran_flexible_du STATIC ${SOURCES})
2323
target_include_directories(srsran_flexible_du PRIVATE ${CMAKE_SOURCE_DIR})
24-
set(FLEXIBLE_DU_LIBRARIES
24+
target_link_libraries(srsran_flexible_du
2525
srsran_du_wrapper
2626
srsran_pcap
2727
srsran_app_services
@@ -30,13 +30,4 @@ if (DU_SPLIT_8)
3030
srsran_split_8_app_unit_helpers
3131
srsran_du_high_unit_helpers)
3232

33-
# Hardware acceleration for both PUSCH and PDSCH is enabled by default when using DPDK.
34-
if (DPDK_FOUND)
35-
set_source_files_properties(split_8_du_factory.cpp PROPERTIES COMPILE_DEFINITIONS "DPDK_FOUND; HWACC_PDSCH_ENABLED; HWACC_PUSCH_ENABLED")
36-
list(APPEND FLEXIBLE_DU_LIBRARIES hal_hwacc_pusch
37-
hal_hwacc_pdsch
38-
hal_bbdev_factory)
39-
endif (DPDK_FOUND)
40-
target_link_libraries(srsran_flexible_du ${FLEXIBLE_DU_LIBRARIES})
41-
4233
endif ()

0 commit comments

Comments
 (0)