Commit 00394d78 authored by Jaroslava Fiedlerova's avatar Jaroslava Fiedlerova

Merge remote-tracking branch 'origin/CI-bladeRF' into integration_2026_w11 (!3965)

Enable BladeRF support in gNB Docker image

The goal of this MR is to add support for building a gNB image that supports
BladeRF.
parents 968c5aba 243cd8e9
...@@ -325,7 +325,7 @@ install_bladerf_driver_from_source(){ ...@@ -325,7 +325,7 @@ install_bladerf_driver_from_source(){
rm -rf /tmp/bladeRF rm -rf /tmp/bladeRF
git clone https://github.com/Nuand/bladeRF.git git clone https://github.com/Nuand/bladeRF.git
cd bladeRF cd bladeRF
git checkout tags/2016.06 git checkout tags/2025.10
mkdir -p build mkdir -p build
cd build cd build
$CMAKE ../ $CMAKE ../
...@@ -337,14 +337,12 @@ install_bladerf_driver_from_source(){ ...@@ -337,14 +337,12 @@ install_bladerf_driver_from_source(){
check_install_bladerf_driver(){ check_install_bladerf_driver(){
if [[ "$OS_BASEDISTRO" == "debian" ]]; then if [[ "$OS_BASEDISTRO" == "debian" ]]; then
$SUDO apt-get install -y bladerf libbladerf-dev $SUDO apt-get update
$SUDO apt-get install -y bladerf-firmware-fx3 $SUDO apt-get install -y libcurl4-openssl-dev
$SUDO apt-get install -y bladerf-fpga-hostedx40 elif [[ "$OS_BASEDISTRO" == "fedora" ]]; then
elif [[ "$OS_BASEDISTRO" == "fedora" ]]; then $SUDO dnf -y install libcurl-devel
install_bladerf_driver_from_source fi
else install_bladerf_driver_from_source
echo_error "BladeRF Installer for OAI does not support automatic build. Install BladeRF compiling sources manually from BladeRF website"
fi
} }
check_install_lmssdr_driver(){ check_install_lmssdr_driver(){
...@@ -358,8 +356,6 @@ check_install_lmssdr_driver(){ ...@@ -358,8 +356,6 @@ check_install_lmssdr_driver(){
echo_info "https://wiki.myriadrf.org/Lime_Suite" echo_info "https://wiki.myriadrf.org/Lime_Suite"
echo_fatal "Cannot compile lmssdr device" echo_fatal "Cannot compile lmssdr device"
fi fi
} }
install_soapy_from_source(){ install_soapy_from_source(){
......
...@@ -83,6 +83,7 @@ COPY --from=gnb-build \ ...@@ -83,6 +83,7 @@ COPY --from=gnb-build \
/oai-ran/cmake_targets/ran_build/build/liboai_eth_transpro.so \ /oai-ran/cmake_targets/ran_build/build/liboai_eth_transpro.so \
/oai-ran/cmake_targets/ran_build/build/librfsimulator.so \ /oai-ran/cmake_targets/ran_build/build/librfsimulator.so \
/oai-ran/cmake_targets/ran_build/build/liboai_usrpdevif.so \ /oai-ran/cmake_targets/ran_build/build/liboai_usrpdevif.so \
/oai-ran/cmake_targets/ran_build/build/liboai_bladerfdevif.so \
/oai-ran/cmake_targets/ran_build/build/libcoding.so \ /oai-ran/cmake_targets/ran_build/build/libcoding.so \
/oai-ran/cmake_targets/ran_build/build/libparams_libconfig.so \ /oai-ran/cmake_targets/ran_build/build/libparams_libconfig.so \
/oai-ran/cmake_targets/ran_build/build/libdfts.so \ /oai-ran/cmake_targets/ran_build/build/libdfts.so \
...@@ -104,6 +105,9 @@ COPY --from=gnb-base /usr/local/lib/uhd/utils/uhd_images_downloader.py /opt/oai- ...@@ -104,6 +105,9 @@ COPY --from=gnb-base /usr/local/lib/uhd/utils/uhd_images_downloader.py /opt/oai-
## Copy E2 SM models ## Copy E2 SM models
COPY --from=gnb-build /usr/local/lib/flexric /usr/local/lib/flexric COPY --from=gnb-build /usr/local/lib/flexric /usr/local/lib/flexric
# Copy BladeRF runtime from base image
COPY --from=gnb-base /usr/local/lib/libbladeRF* /usr/local/lib/
RUN /bin/bash -c "ln -s /usr/local/lib/liboai_usrpdevif.so /usr/local/lib/liboai_device.so" && \ RUN /bin/bash -c "ln -s /usr/local/lib/liboai_usrpdevif.so /usr/local/lib/liboai_device.so" && \
ldconfig && \ ldconfig && \
echo "---- ldd on nr-softmodem ----" && \ echo "---- ldd on nr-softmodem ----" && \
...@@ -112,6 +116,7 @@ RUN /bin/bash -c "ln -s /usr/local/lib/liboai_usrpdevif.so /usr/local/lib/liboai ...@@ -112,6 +116,7 @@ RUN /bin/bash -c "ln -s /usr/local/lib/liboai_usrpdevif.so /usr/local/lib/liboai
ldd /usr/local/lib/liboai_eth_transpro.so \ ldd /usr/local/lib/liboai_eth_transpro.so \
/usr/local/lib/librfsimulator.so \ /usr/local/lib/librfsimulator.so \
/usr/local/lib/liboai_usrpdevif.so \ /usr/local/lib/liboai_usrpdevif.so \
/usr/local/lib/liboai_bladerfdevif.so \
/usr/local/lib/libcoding.so \ /usr/local/lib/libcoding.so \
/usr/local/lib/libparams_libconfig.so \ /usr/local/lib/libparams_libconfig.so \
/usr/local/lib/libdfts.so \ /usr/local/lib/libdfts.so \
......
...@@ -89,6 +89,7 @@ COPY --from=nr-ue-build \ ...@@ -89,6 +89,7 @@ COPY --from=nr-ue-build \
/oai-ran/cmake_targets/ran_build/build/liboai_eth_transpro.so \ /oai-ran/cmake_targets/ran_build/build/liboai_eth_transpro.so \
/oai-ran/cmake_targets/ran_build/build/librfsimulator.so \ /oai-ran/cmake_targets/ran_build/build/librfsimulator.so \
/oai-ran/cmake_targets/ran_build/build/liboai_usrpdevif.so \ /oai-ran/cmake_targets/ran_build/build/liboai_usrpdevif.so \
/oai-ran/cmake_targets/ran_build/build/liboai_bladerfdevif.so \
/oai-ran/cmake_targets/ran_build/build/libcoding.so \ /oai-ran/cmake_targets/ran_build/build/libcoding.so \
/oai-ran/cmake_targets/ran_build/build/libparams_libconfig.so \ /oai-ran/cmake_targets/ran_build/build/libparams_libconfig.so \
/oai-ran/cmake_targets/ran_build/build/libdfts.so \ /oai-ran/cmake_targets/ran_build/build/libdfts.so \
...@@ -112,6 +113,9 @@ COPY --from=nr-ue-base /usr/local/bin/uhd_find_devices /usr/local/bin ...@@ -112,6 +113,9 @@ COPY --from=nr-ue-base /usr/local/bin/uhd_find_devices /usr/local/bin
COPY --from=nr-ue-base /usr/local/lib/libuhd.so.4.8.0 /usr/local/lib COPY --from=nr-ue-base /usr/local/lib/libuhd.so.4.8.0 /usr/local/lib
COPY --from=nr-ue-base /usr/local/lib/uhd/utils/uhd_images_downloader.py /opt/oai-nr-ue/bin COPY --from=nr-ue-base /usr/local/lib/uhd/utils/uhd_images_downloader.py /opt/oai-nr-ue/bin
# Copy BladeRF runtime from base image
COPY --from=nr-ue-base /usr/local/lib/libbladeRF* /usr/local/lib/
RUN /bin/bash -c "ln -s /usr/local/lib/liboai_usrpdevif.so /usr/local/lib/liboai_device.so" && \ RUN /bin/bash -c "ln -s /usr/local/lib/liboai_usrpdevif.so /usr/local/lib/liboai_device.so" && \
ldconfig && \ ldconfig && \
echo "---- ldd on nr-uesoftmodem ----" && \ echo "---- ldd on nr-uesoftmodem ----" && \
...@@ -120,6 +124,7 @@ RUN /bin/bash -c "ln -s /usr/local/lib/liboai_usrpdevif.so /usr/local/lib/liboai ...@@ -120,6 +124,7 @@ RUN /bin/bash -c "ln -s /usr/local/lib/liboai_usrpdevif.so /usr/local/lib/liboai
ldd /usr/local/lib/liboai_eth_transpro.so \ ldd /usr/local/lib/liboai_eth_transpro.so \
/usr/local/lib/librfsimulator.so \ /usr/local/lib/librfsimulator.so \
/usr/local/lib/liboai_usrpdevif.so \ /usr/local/lib/liboai_usrpdevif.so \
/usr/local/lib/liboai_bladerfdevif.so \
/usr/local/lib/libcoding.so \ /usr/local/lib/libcoding.so \
/usr/local/lib/libparams_libconfig.so \ /usr/local/lib/libparams_libconfig.so \
/usr/local/lib/libdfts.so \ /usr/local/lib/libdfts.so \
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment