Extract bladerf_0.2019.07-7.debian.tar.xz

This commit is contained in:
Oliver Smith 2024-03-18 15:27:22 +01:00
parent 0b04e1d1c3
commit 990e3312f4
59 changed files with 7575 additions and 228 deletions

64
debian/README.Debian vendored Normal file
View File

@ -0,0 +1,64 @@
bladeRF USB 3.0 Superspeed Software Defined Radio hardware driver on Debian:
=========================================================================
plugdev group
----------
The Debian bladerf-host package uses the plugdev group.
This provides two main benefits:
- Access control:
The udev rules limit access to members of the group
- Real Time Priority privilege:
The pam limits setting allows the user to boost the
thread scheduling priority for plugdev group members.
To avail yourself of these benefits, add your username
to the plugdev group, perhaps by running, as root something like:
adduser myusername plugdev
substituting your user name for myusername.
Settings will not take effect until the user has logged in and out.
Multiple packages
-----------------
bladerf:
The bladerf package contains the bladeRF-cli and
bladeRF-flash commands for configuring devices
available to the host system.
libbladerf1:
Small package just for the library itself.
libbladerf-dev:
Small package just for developing applications
using the library itself.
BLADERF Firmware / FPGA images
--------------------------
The bladerf-images package is not part of the main Debian distribution
because the FPGA firmware requires non-free vendor tools to compile
from source.
To manage this there is a download/install script
in the bladerf-host package:
The bladeRF_install_firmware program is a shell script that either
downloads FPGA image and firmware tarballs Nuand.com or takes
the tarball file as a command-line argument, checks the md5sum,
and installs the files.
Get involved
------------
Come join us, and other RF developers, on IRC in #bladeRF on FreeNode
(irc://chat.freenode.net). Our goal is to provide a place for
collaboration and open discussion to further RF exploration and
experimentation. We encourage people of all skill levels to join
us. By getting involved, your input and feedback will help influence
the direction in which the community will head.
-- A. Maitland Bottoms <bottoms@debian.org>, Tue, 8 Jul 2014 00:22:50 -0400

94
debian/bladeRF-fsk.1 vendored Normal file
View File

@ -0,0 +1,94 @@
.TH "bladeRF-fsk" 1 "2017.07" BLADERF "Nuand"
.SH NAME
bladeRF-fsk \- command line fsk application
.P
.SH DESCRIPTION
The bladeRF-fsk project is a simple frequency shift keying (FSK) based software modem
implemented entirely on the host PC side in C code. The project uses libbladeRF to
transmit/receive samples with a bladeRF device. A USB 3.0 port is not required when using
this modem. The project also contains a MATLAB/Octave simulation/implementation of the
physical layer (PHY) portion of the modem.
.P
The top level bladeRF-fsk C program demonstrates the functionality of the modem in a
simple bladeRF-to-bladeRF data transfer program. This program can transmit/receive both
text (like a chat program) and binary files (like a file transfer program) with a raw
link rate of 250 kbps. To properly demonstrate the program, two instances of the program
must be run with two separate bladeRF devices (loopback is not supported).
.P
The modem modulates with continuous-phase frequency shift keying (CPFSK). Baseband I/Q
CPFSK samples are sent to the bladeRF device, inside which they converted from digital
to analog, mixed with quadrature RF carriers, and transmitted through the air.
Received signals are mixed with quadrature RF carriers to downconvert to baseband I/Q,
sampled with an ADC, and sent to the host PC program over the USB connection.
.P
The physical layer code features an FIR low-pass filter, power normalization, preamble
correlation for signal detection, CPFSK modulation/demodulation, and scrambling. The
link layer code features framing, error detection via CRC32 checksums, and guaranteed
delivery of frames via acknowledgements and retransmissions.
.P
This project is meant to be an experimental example and should not be treated as a
rigorous modem.
.SH EXAMPLES
.P
To run the top-level bladeRF-fsk program with defaults, type into a terminal:
.IP
bladeRF-fsk
.P
To see a list of configuration options and how to set them, type:
.IP
bladeRF-fsk -h
.P
_NOTE_: On Windows 10, if you are running two instances of the program on the same PC, you
must specify the bladeRF serial number with the '-d' option, due to [Issue #484](https://github.com/Nuand/bladeRF/issues/484). Example:
.IP
bladeRF-fsk -d *:serial=4e
.P
By default the program uses the first available bladeRF device, gets TX input from stdin,
writes RX output to stdout, and uses a default set of transmit/receive frequencies and
gains. Gains may need to be tweaked for a good connection with another bladeRF running
bladeRF-fsk. To transfer files, use the '-i' and '-o' options. If using stdin for tx
data, the program will transmit data line-by-line.
.P
The program runs until it gets an EOF in its TX input.
.P
### Example: Transferring Files ###
1) Be sure two bladeRF devices are plugged into your PC (or two separate PCs) with
TX and RX antennas attached.
.P
2) Run bladeRF-fsk on one of the devices (receiver), with the output RX file specified:
.IP
bladeRF-fsk -r 904M -t 924M -o rx.jpg
.P
3) Run bladeRF-fsk on the other device (sender), with opposite frequencies and the input
TX file specified:
.IP
bladeRF-fsk -r 924M -t 904M -i puppy.jpg
.P
4) The file will begin transferring, and progress will be printed in the terminal for the
sending device.
.P
5) Once the transmission is complete, press [CTRL-D] on Linux/OSX or [CTRL-Z then ENTER]
on Windows to stop the program on the receiving end.
.P
If the sending device does not get any response from the receiving device, it will quit
the program. Try increasing the gains and run it again.
.SH KNOWN LIMITATIONS
.P
1) The program does not currently support the use of an XB-200 transverter expansion
board to transmit/receive at frequencies below 300MHz. In order to add XB-200 support,
a new configuration option as well as functions from the "Expansion boards" section
of the libbladeRF API would need to be added to the source code.
.P
2) The program is currently unable to perform two file transfers in both directions
simultaneously. Reason #1: The program runs until is gets an EOF in its TX input,
meaning whichever side finishes transmitting its file first will quit and stop
receiving. An EOF bit would need to be added to the link layer packet format in order
to stop this behavior. Reason #2: The program doesn't seem to perform well during
these simultaneous file transfers, and usually loses connection. Further investigation
is required to debug this.
.SH See Also
bladeRF-cli(1)

205
debian/bladeRF-install-firmware vendored Executable file
View File

@ -0,0 +1,205 @@
#!/bin/sh
#
# Title : bladeRF-install-firmware
# Purpose : fetch non-free BladeRF firmware
# Author : A. Maitland Bottoms <bottoms@debian.org>
# Date : 2013-10-10
# Update : 2019-08-20
#
# Copyright 2013-2019 A. Maitland Bottoms <bottoms@debian.org>
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in
# all copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
# THE SOFTWARE.
set -e
show_usage()
{
echo "Usage: $0 [-i imagedir] [imagetarball]" >&2
exit 1
}
FX3UPSTREAM='https://www.nuand.com/fx3/bladeRF_fw_v2.3.2.img'
FX3CHECKSUM='c823ea5aa2c25c26bbaf4ab395ac559d'
FX3SHA256SUM='ef92cd41513ab3c3d36174143545b7eab6b033fdcaaf661fec1d710a489fadbf'
FX3IMGFILE='/usr/share/Nuand/bladeRF/bladeRF_fw.img'
FPGA115UPSTREAM='https://www.nuand.com/fpga/v0.11.0/hostedx115.rbf'
FPGA115CHECKSUM='bee4542c4b020077c71ae630ef0d0fc8'
FPGA115SHA256SUM='604b12af77ce4f34db061e9eca4a38d804f676b8ad73ceacf49b6de3473a86f7'
FPGA115RBFFILE='/usr/share/Nuand/bladeRF/hostedx115.rbf'
FPGA40UPSTREAM='https://www.nuand.com/fpga/v0.11.0/hostedx40.rbf'
FPGA40CHECKSUM='7a9b8e7f0f81af6d393132d7eb3e6e18'
FPGA40SHA256SUM='a26e07b8ad0b4c20327f97ae89a89dbe2e00c7f90e70dae36902e62e233bd290'
FPGA40RBFFILE='/usr/share/Nuand/bladeRF/hostedx40.rbf'
FPGAA4UPSTREAM='https://www.nuand.com/fpga/v0.11.0/hostedxA4.rbf'
FPGAA4CHECKSUM='b23bf6088aff5cff90bdea9488a35d89'
FPGAA4SHA256SUM='c172e35c4a92cf1e0ca3b37347a84d8376b275ece16cb9c5142b72b82b16fe8e'
FPGAA4RBFFILE='/usr/share/Nuand/bladeRF/hostedxA4.rbf'
FPGAA9UPSTREAM='https://www.nuand.com/fpga/v0.11.0/hostedxA9.rbf'
FPGAA9CHECKSUM='a17a2859e4f28fdc3952de78aca1dabe'
FPGASHA256SUM='99f60e91598ea5b998873922eba16cbab60bfd5812ebc1438f49b420ba79d7e1'
FPGAA9RBFFILE='/usr/share/Nuand/bladeRF/hostedxA9.rbf'
ADSBA4UPSTREAM='https://www.nuand.com/fpga/adsbxA4.rbf'
ADSBA4CHECKSUM='7317e69e9bea3595a7babeadeb3633b0'
ADSBA4SHA256SUM='8e1dcde86203f89dcf8bec77e3740ea31917ec335f6b12e3f9194cedbb833e19'
ADSBA4RBFFILE='/usr/share/Nuand/bladeRF/adsbxA4.rbf'
ADSBA9UPSTREAM='https://www.nuand.com/fpga/adsbxA9.rbf'
ADSBA9CHECKSUM='9e70f6069680d7a2434ec9fb88ce2a36'
ADSBA9SHA256SUM='343241eba0942538d74a5290e47a4cdded8dbe810d19e6328dcf496efac676f1'
ADSBA9RBFFILE='/usr/share/Nuand/bladeRF/adsbxA9.rbf'
ADSB40UPSTREAM='https://www.nuand.com/fpga/adsbx40.rbf'
ADSB40CHECKSUM='15b7e988fcee2881f92df296bfcee9bf'
ADSB40SHA256SUM='a491fe4adc310b9ac71cab5017d2b99897b3d314b51130ed9b3c4c965d3ad4c4'
ADSB40RBFFILE='/usr/share/Nuand/bladeRF/adsbx40.rbf'
ADSB115UPSTREAM='https://www.nuand.com/fpga/adsbx115.rbf'
ADSB115CHECKSUM='30583f92aa4a3ec5660714eccae30082'
ADSB115SHA256SUM='c908baca2848efebc4c1aacec239179b548182406f398e608ad99dbbf0b72836'
ADSB115RBFFILE='/usr/share/Nuand/bladeRF/adsbx115.rbf'
# Default values:
# The imagedir is the path bladerf-host and libbladerf packages
# use to find firmware.
imagedir="/usr/share/Nuand/bladeRF"
# The imagetarball is the source of firmware built with matching
# source code.
fpgaimageurl=""
usbimageurl=""
while [ "$1" != "" ]; do
case $1 in
-h | --help ) show_usage
exit 0
;;
-i | --imagedir ) shift
imagedir=$1
;;
-f | --fpgafile ) shift
fpgaimageurl=$1
;;
-u | --usbfile ) shift
usbimageurl=$1
;;
* ) fpgaimageurl=$1
;;
esac
shift
done
if mkdir -p $imagedir ; then
if [ -w $imagedir ] ;then
echo Using imagedir: $imagedir
else
echo You need to run this script as a user who can write to $imagedir
exit 1
fi
else
echo You need to run this script as a user who can create $imagedir
exit 1
fi
tdir=`mktemp -d`
fetchlist=""
echo "Using tempdir:" $tdir
if [ "x$fpgaimageurl" = "x" ] && [ "x$usbimageurl" = "x" ] ; then
fetchlist="$FX3UPSTREAM $FPGA40UPSTREAM $FPGA115UPSTREAM $FPGAA4UPSTREAM $FPGAA9UPSTREAM \
$ADSB40UPSTREAM $ADSB115UPSTREAM $ADSBA4UPSTREAM $ADSBA9UPSTREAM"
else
if [ "x$fpgaimageurl" != "x" ] ; then
fetchlist="$fetchlist $fpgaimageurl"
fi
if [ "x$usbimageurl" != "x" ] ; then
fetchlist="$fetchlist $usbimageurl"
fi
fi
for item in $fetchlist; do
echo "Using: " $item
# if URL, fetch it first
if echo $item | grep -q :// ; then
echo Fetching $item ;
if [ -x /usr/bin/wget ] ; then
/usr/bin/wget --user-agent="Debian BladeRF image installer" -O $tdir/`basename $item` $item
else
curl --user-agent "Debian BladeRF image installer" -o $tdir/`basename $item` $item
fi
else
if [ -f $item ] ; then
echo Copying $item
cp -p $item $tdir/
else
echo "Cannot find" $item;
show_usage
exit 1
fi
fi;
if [ `basename $item` = "bladeRF_fw_v2.3.2.img" ] ; then
md5sum --check - <<- EOF
$FX3CHECKSUM $tdir/`basename $item`
EOF
sha256sum --check - <<- EOF
$FX3SHA256SUM $tdir/`basename $item`
EOF
cp -p $tdir/`basename $item` $imagedir/bladeRF_fw.img ;
fi
if [ `basename $item` = "hostedx40.rbf" ] ; then
md5sum --check - <<- EOF
$FPGA40CHECKSUM $tdir/`basename $item`
EOF
sha256sum --check - <<- EOF
$FPGA40SHA256SUM $tdir/`basename $item`
EOF
fi
if [ `basename $item` = "hostedx115.rbf" ] ; then
md5sum --check - <<- EOF
$FPGA115CHECKSUM $tdir/`basename $item`
EOF
sha256sum --check - <<- EOF
$FPGA115SHA256SUM $tdir/`basename $item`
EOF
fi
if [ `basename $item` = "hostedxa4.rbf" ] ; then
md5sum --check - <<- EOF
$FPGAA4CHECKSUM $tdir/`basename $item`
EOF
sha256sum --check - <<- EOF
$FPGAA4SHA256SUM $tdir/`basename $item`
EOF
fi
if [ `basename $item` = "hostedxa9.rbf" ] ; then
md5sum --check - <<- EOF
$FPGAA9CHECKSUM $tdir/`basename $item`
EOF
sha256sum --check - <<- EOF
$FPGAA9SHA256SUM $tdir/`basename $item`
EOF
fi
cp -p $tdir/`basename $item` $imagedir/`basename $item`
done
for file in `ls $imagedir`; do md5sum $imagedir/$file ; done
rm -i -rf $tdir
exit 0

54
debian/bladeRF-install-firmware.1 vendored Normal file
View File

@ -0,0 +1,54 @@
.TH "bladeRF-install-firmware" 1 "3.7.1" BLADERF "Nuand"
.SH NAME
bladeRF-install-firmware \- BladeRF Firmware Utility
.SH SYNOPSIS
.B bladeRF-install-firmware
[\fI-h\fR] [\fIshow help\fR]
[\fI-i imagedir\fR] [\fIimage_directory\fR]
[\fI-f fpgaimage\fR] [\fIfpkg_image_file\fR]
[\fI-u usbimage\fR] [\fIfx3_image_file\fR]
.SH OPTIONS
This program works best without any arguments. If you already
have the firmware tarball and are wanting to install it on a
system without Internet access, then you can run this script
with that file as an argument.
.SH DESCRIPTION
The FPGA image is built using non-free software and is not
distributed by Debian. This program makes it easier for the
end user to get recommended images from Nuand.com.
.LP
The bladeRF-cli application is used to load the FX3 firmware
and the FPGA firmware.
.LP
The FX3 firmware only needs to be loaded once: it is stored
in flash, and survives power cycling. The FPGA image needs
to be loaded every time.
.LP
Recommended firmware and FPGA images to use:
FX3 Image: https://nuand.com/fx3/latest.img
FPGA: https://nuand.com/fpga
.SH AUTHOR
This manual page was written by Maitland Bottoms for the Debian
project (but may be used by others).
.SH COPYRIGHT
Copyright (c) 2013 A. Maitland Bottoms <bottoms@debian.org>
.LP
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
.LP
The above copyright notice and this permission notice shall be included in
all copies or substantial portions of the Software.
.LP
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
THE SOFTWARE.
.SH SEE ALSO
bladeRF-cli(1)

View File

@ -1 +1 @@
/usr/share/Nuand/bladeRF
/usr/share/Nuand/bladeRF

View File

@ -1,7 +1,9 @@
#!/bin/sh -e
#!/bin/sh
set -e
UPSTREAM='https://www.nuand.com/fx3/bladeRF_fw_v2.3.1.img'
CHECKSUM='4f873859f4a3cae49f9ecc95f8650d6f'
UPSTREAM='https://www.nuand.com/fx3/bladeRF_fw_v2.3.2.img'
CHECKSUM='c823ea5aa2c25c26bbaf4ab395ac559d'
SHA256SUM='ef92cd41513ab3c3d36174143545b7eab6b033fdcaaf661fec1d710a489fadbf'
DATAFILE='/usr/share/Nuand/bladeRF/bladeRF_fw.img'
DESCRIPT='firmware'
MYNAMEIS='bladerf-firmware-fx3'
@ -11,6 +13,9 @@ checkfile () {
md5sum --check <<- EOMD5SUM
${CHECKSUM} $1
EOMD5SUM
sha256sum --check <<- EOMD5SUM
${SHA256SUM} $1
EOMD5SUM
}
# Fetch firmware if needed

View File

@ -1,4 +1,5 @@
#!/bin/sh -e
#!/bin/sh
set -e
IMGFILE=/usr/share/Nuand/bladeRF/bladeRF_fw.img
@ -7,4 +8,4 @@ if [ "$1" = "remove" -o "$1" = "purge" ]; then
rm -f $IMGFILE
fi
#DEBHELPER#
#DEBHELPER#

View File

@ -1 +1 @@
/usr/share/Nuand/bladeRF
/usr/share/Nuand/bladeRF

View File

@ -1,7 +1,9 @@
#!/bin/sh -e
#!/bin/sh
set -e
UPSTREAM='https://www.nuand.com/fpga/v0.10.2/hostedx115.rbf'
CHECKSUM='33641f8a126bef1c0b7e6ba8bedda93f'
UPSTREAM='https://www.nuand.com/fpga/v0.11.0/hostedx115.rbf'
CHECKSUM='bee4542c4b020077c71ae630ef0d0fc8'
SHA256SUM='604b12af77ce4f34db061e9eca4a38d804f676b8ad73ceacf49b6de3473a86f7'
DATAFILE='/usr/share/Nuand/bladeRF/hostedx115.rbf'
DESCRIPT='FPGA bitstream'
MYNAMEIS='bladerf-fpga-hostedx115'
@ -11,6 +13,9 @@ checkfile () {
md5sum --check <<- EOMD5SUM
${CHECKSUM} $1
EOMD5SUM
sha256sum --check <<- EOMD5SUM
${SHA256SUM} $1
EOMD5SUM
}
# Fetch firmware if needed

View File

@ -1,4 +1,5 @@
#!/bin/sh -e
#!/bin/sh
set -e
RBFFILE=/usr/share/Nuand/bladeRF/hostedx115.rbf
@ -7,4 +8,4 @@ if [ "$1" = "remove" -o "$1" = "purge" ]; then
rm -f $RBFFILE
fi
#DEBHELPER#
#DEBHELPER#

View File

@ -1 +1 @@
/usr/share/Nuand/bladeRF
/usr/share/Nuand/bladeRF

View File

@ -1,7 +1,9 @@
#!/bin/sh -e
#!/bin/sh
set -e
UPSTREAM='https://www.nuand.com/fpga/v0.10.2/hostedx40.rbf'
CHECKSUM='4aabf1617901423569f425db93598884'
UPSTREAM='https://www.nuand.com/fpga/v0.11.0/hostedx40.rbf'
CHECKSUM='7a9b8e7f0f81af6d393132d7eb3e6e18'
SHA256SUM='a26e07b8ad0b4c20327f97ae89a89dbe2e00c7f90e70dae36902e62e233bd290'
DATAFILE='/usr/share/Nuand/bladeRF/hostedx40.rbf'
DESCRIPT='FPGA bitstream'
MYNAMEIS='bladerf-fpga-hostedx40'
@ -11,6 +13,9 @@ checkfile () {
md5sum --check <<- EOMD5SUM
${CHECKSUM} $1
EOMD5SUM
sha256sum --check <<- EOMD5SUM
${SHA256SUM} $1
EOMD5SUM
}
# Fetch firmware if needed

View File

@ -1,4 +1,5 @@
#!/bin/sh -e
#!/bin/sh
set -e
RBFFILE=/usr/share/Nuand/bladeRF/hostedx40.rbf
@ -7,4 +8,4 @@ if [ "$1" = "remove" -o "$1" = "purge" ]; then
rm -f $RBFFILE
fi
#DEBHELPER#
#DEBHELPER#

View File

@ -1 +1 @@
/usr/share/Nuand/bladeRF
/usr/share/Nuand/bladeRF

View File

@ -1,7 +1,9 @@
#!/bin/sh -e
#!/bin/sh
set -e
UPSTREAM='https://www.nuand.com/fpga/v0.10.2/hostedxA4.rbf'
CHECKSUM='b3f8b37fccee3eacb85aeb4f9fe89b2b'
UPSTREAM='https://www.nuand.com/fpga/v0.11.0/hostedxA4.rbf'
CHECKSUM='b23bf6088aff5cff90bdea9488a35d89'
SHA256SUM='c172e35c4a92cf1e0ca3b37347a84d8376b275ece16cb9c5142b72b82b16fe8e'
DATAFILE='/usr/share/Nuand/bladeRF/hostedxA4.rbf'
DESCRIPT='FPGA bitstream'
MYNAMEIS='bladerf-fpga-hostedxa4'
@ -11,6 +13,9 @@ checkfile () {
md5sum --check <<- EOMD5SUM
${CHECKSUM} $1
EOMD5SUM
sha256sum --check <<- EOMD5SUM
${SHA256SUM} $1
EOMD5SUM
}
# Fetch firmware if needed

View File

@ -1,4 +1,5 @@
#!/bin/sh -e
#!/bin/sh
set -e
RBFFILE=/usr/share/Nuand/bladeRF/hostedxA4.rbf

View File

@ -1 +1 @@
/usr/share/Nuand/bladeRF
/usr/share/Nuand/bladeRF

View File

@ -1,7 +1,9 @@
#!/bin/sh -e
#!/bin/sh
set -e
UPSTREAM='https://www.nuand.com/fpga/v0.10.2/hostedxA9.rbf'
CHECKSUM='f4833d63f594b0a8c51c579d6f72181e'
UPSTREAM='https://www.nuand.com/fpga/v0.11.0/hostedxA9.rbf'
CHECKSUM='a17a2859e4f28fdc3952de78aca1dabe'
SHA256SUM='99f60e91598ea5b998873922eba16cbab60bfd5812ebc1438f49b420ba79d7e1'
DATAFILE='/usr/share/Nuand/bladeRF/hostedxA9.rbf'
DESCRIPT='FPGA bitstream'
MYNAMEIS='bladerf-fpga-hostedxa9'
@ -11,6 +13,9 @@ checkfile () {
md5sum --check <<- EOMD5SUM
${CHECKSUM} $1
EOMD5SUM
sha256sum --check <<- EOMD5SUM
${SHA256SUM} $1
EOMD5SUM
}
# Fetch firmware if needed

View File

@ -1,4 +1,5 @@
#!/bin/sh -e
#!/bin/sh
set -e
RBFFILE=/usr/share/Nuand/bladeRF/hostedxA9.rbf

57
debian/bladerf-tool.1 vendored Normal file
View File

@ -0,0 +1,57 @@
.TH BLADERF-TOOL "1" "August 2019" "Nuand.com" "User Commands"
.SH NAME
bladerf-tool: \- a Python command-line tool for bladeRF devices
.SH DESCRIPTION
The bladerf-tool utility is used to flash firmware files, load FPGA bitstreams,
and perform other tasks on the nuand bladeRF software-defined radio system.
.P
For more information on obtaining or building firmware files and
FPGA bitstreams, please visit http://nuand.com/.
.SH USAGE
bladerf\-tool [\-h] [\-\-device DEVICE]
.TP
info, probe, flash_fw, recover_fw, load_fpga,
flash_fpga, erase_fpga, rx, tx, version
.SS "optional arguments:"
.TP
\fB\-h\fR, \fB\-\-help\fR
show this help message and exit
.TP
\fB\-\-device\fR DEVICE, \fB\-d\fR DEVICE
device identifier
.SS "subcommands:"
.IP
info, probe, flash_fw, recover_fw, load_fpga,
flash_fpga, erase_fpga, rx, tx,version
.TP
info
get device info
.TP
probe
probe for devices
.TP
flash_fw
flash firmware
.TP
recover_fw
recover firmware
.TP
load_fpga
load fpga
.TP
flash_fpga
flash fpga
.TP
erase_fpga
erase fpga
.TP
rx
receive samples
.TP
tx
transmit samples
.TP
version
print version info
.SH "SEE ALSO"
bladeRF-cli(1), bladeRF-fsk(1), bladeRF-install-firmware(1)

2
debian/bladerf.docs vendored
View File

@ -1,4 +1,2 @@
COPYING
CONTRIBUTORS
README.md
legal/*

View File

@ -1 +1,2 @@
debian/bladeRF-install-firmware /usr/bin/
usr/bin/bladeRF-*

View File

@ -1 +1,3 @@
debian/bladeRF-fsk.1
debian/bladeRF-install-firmware.1
debian/tmp/usr/share/man/man1/*.1

283
debian/changelog vendored
View File

@ -1,14 +1,70 @@
bladerf (2018.12-rc2) unstable; urgency=low
bladerf (0.2019.07-7) unstable; urgency=medium
* Release candidate 2 for 2018.12. Please see the top-level CHANGELOG file,
as well as the sub-project CHANGELOG files, for more details.
* AD936x RFIC vendor library code moved to thirdparty/
* FPGA bitstream v0.10.2, FX3 FW v2.3.1, libbladeRF v2.2.0, bladeRF-cli
v1.7.1
* revert Build-Depends-Indep
-- Rey Sabrina Tucker (Nuand LLC) <rey.tucker@nuand.com> Fri, 21 Dec 2018 16:52:49 -0500
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 18 Dec 2020 07:43:16 -0500
bladerf (2018.10-rc1) unstable; urgency=low
bladerf (0.2019.07-6) unstable; urgency=medium
* Update Standards-Version (no changes)
* debhelper-compat 13
* update spelling patch, and other lintian gripes
-- A. Maitland Bottoms <bottoms@debian.org> Thu, 17 Dec 2020 22:11:31 -0500
bladerf (0.2019.07-5) unstable; urgency=medium
* Team upload.
* Cherry-pick two patches from upstream to fix gcc 10 compatibility.
(Closes: #957046)
* Add debian/gitlab-ci.yml.
* Import repository in the debian-hamradio-team.
* Remove bladerf.egg-info/ on clean.
-- Christoph Berg <myon@debian.org> Sat, 25 Jul 2020 13:49:05 +0200
bladerf (0.2019.07-4) unstable; urgency=medium
* Correct Breaks:/Replaces: (Closes: #935733)
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 30 Aug 2019 18:20:01 -0400
bladerf (0.2019.07-3) unstable; urgency=medium
* Handle upgrades with Breaks:/Replaces: (Closes: #935733)
-- A. Maitland Bottoms <bottoms@debian.org> Sun, 25 Aug 2019 15:20:11 -0400
bladerf (0.2019.07-2) unstable; urgency=medium
* Upload to unstable
-- A. Maitland Bottoms <bottoms@debian.org> Sat, 24 Aug 2019 21:33:40 -0400
bladerf (0.2019.07-1) experimental; urgency=medium
* New upstream release
* Build with gcc 9 (Closes: #925644)
* bump libbladerf ABI and upload to experimental
-- A. Maitland Bottoms <bottoms@debian.org> Wed, 14 Aug 2019 23:38:16 -0400
bladerf (0.2018.10~rc1-2) experimental; urgency=medium
* place new installer packages in contrib
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 14 Dec 2018 21:11:18 -0500
bladerf (0.2018.10~rc1-1) experimental; urgency=medium
* New upstream to experimental due to soversion bump
* New libbladerf-doc and python3-bladerf packages
* libbladerf2 uses soversion in all paths
* libbladerf-dev now includes patch to provide modern CMake targets
-- A. Maitland Bottoms <bottoms@debian.org> Sun, 09 Dec 2018 19:01:06 -0500
bladerf (0.2018.10~rc1) unstable; urgency=low
* Release candidate 1 for 2018.10. Please see the top-level CHANGELOG file,
as well as the sub-project CHANGELOG files, for more details.
@ -70,24 +126,48 @@ bladerf (2018.08-rc1) unstable; urgency=low
-- Rey Tucker <pgp@reytucker.us> Wed, 15 Aug 2018 21:07:42 -0400
bladerf (2017.12-rc1) unstable; urgency=low
bladerf (0.2017.12~rc1-2) unstable; urgency=medium
* Release candidate 1 for the 2017.12 release
* FPGA bitstream v0.7.1, FX3 FW v2.0.0, libbladeRF v1.9.0, bladeRF-cli v1.5.1
* Fix AppStream metainfo
-- Rey Tucker <pgp@reytucker.us> Fri, 08 Dec 2017 11:35:12 -0500
-- A. Maitland Bottoms <bottoms@debian.org> Tue, 17 Apr 2018 22:56:41 -0400
bladerf (2017.07) unstable; urgency=low
bladerf (0.2017.12~rc1-1) unstable; urgency=medium
* 15 commits past rc1 is like a New upstream release
* Update to 2017.12-rc1-19-g23c6379e
* Include AppStream metainfo
* update bladerf udev rules (Closes: #841678)
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 06 Apr 2018 21:47:02 -0400
bladerf (0.2017.07-1) experimental; urgency=medium
* update to bladeRF-cli_v1.5.0-49-g4ec41d2f
* use ID_SOFTWARE_RADIO in udev rules (Closes: #841678)
* Start transition in experimental
[ Robert Ghilduta ]
* Add Automatic Gain Control
* Add Automatic Gain Control
[ Rey Tucker ]
* debian: fix permissions on FPGA and firmware binaries after downloading
* debian: fix permissions on FPGA and firmware binaries after downloading
-- Robert Ghilduta <robert.ghilduta@nuand.com> Sun, 02 Jul 2017 21:14:15 -0400
-- A. Maitland Bottoms <bottoms@debian.org> Tue, 21 Nov 2017 23:49:08 -0500
bladerf (2016.06) unstable; urgency=low
bladerf (0.2016.06-2) unstable; urgency=medium
* Upstream AGC CMake, and gcc7 patches (closes: #869889, #853332)
* Added support for Automatic Gain Control
-- A. Maitland Bottoms <bottoms@debian.org> Sat, 05 Aug 2017 14:31:27 -0400
bladerf (0.2016.06-1) unstable; urgency=medium
* New upstream release
* Depend upon ca-certificates. Thanks Andreas and piuparts! (Closes: #825690)
-- A. Maitland Bottoms <bottoms@debian.org> Sat, 09 Jul 2016 19:35:35 -0400
bladerf (0.2016.06) unstable; urgency=low
* Added synchronization trigger functionality
* Added SMB clock port control to libbladeRF API
@ -97,6 +177,42 @@ bladerf (2016.06) unstable; urgency=low
-- Jon Szymaniak <jon.szymaniak@nuand.com> Wed, 29 Jun 2016 16:10:35 -0400
bladerf (0.2016.01~rc1-5) unstable; urgency=medium
* remove incorrect dependency. Thanks Andreas and Steven! (Closes:#815341)
* Lintian fixes (copyright format, spelling)
-- A. Maitland Bottoms <bottoms@debian.org> Tue, 26 Apr 2016 20:05:18 -0400
bladerf (0.2016.01~rc1-4) unstable; urgency=medium
* update to 2015.06-rc1.1-269-g5367663
-- A. Maitland Bottoms <bottoms@debian.org> Mon, 25 Apr 2016 22:55:35 -0400
bladerf (0.2016.01~rc1-3) unstable; urgency=medium
* update to 1be8b76
use upstream fixes for big-endian builds
* single Debian kFreeBSD support patch
* spelling fixes
-- A. Maitland Bottoms <bottoms@debian.org> Tue, 12 Jan 2016 21:31:17 -0500
bladerf (0.2016.01~rc1-2) unstable; urgency=medium
* Apply fixes for big-endian builds
* Apply fixes for Debian kFreeBSD support
-- A. Maitland Bottoms <bottoms@debian.org> Mon, 11 Jan 2016 12:21:43 -0500
bladerf (0.2016.01~rc1-1) unstable; urgency=medium
* New upstream release candidate
update to 6e35ea3
-- A. Maitland Bottoms <bottoms@debian.org> Sun, 10 Jan 2016 15:51:33 -0500
bladerf (2016.01-rc1) unstable; urgency=low
* Added support for VCTCXO taming using 1.8V 1 PPS or 10 MHz input signal
@ -110,6 +226,42 @@ bladerf (2016.01-rc1) unstable; urgency=low
-- Jon Szymaniak <jon.szymaniak@nuand.com> Thu, 07 Jan 2016 16:35:09 -0500
bladerf (0.2015.07-4) unstable; urgency=medium
* Update to 2015.06-rc1.1-106-gc262e84
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 27 Nov 2015 22:16:54 -0500
bladerf (0.2015.07-3) unstable; urgency=low
* fix-bladerf-big-endian (Closes: #795456)
* Update to 6919e9e
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 14 Aug 2015 10:23:34 -0400
bladerf (0.2015.07-2) unstable; urgency=medium
* place optional installer packages in contrib (Closes: #795210)
-- A. Maitland Bottoms <bottoms@debian.org> Wed, 12 Aug 2015 00:53:59 -0400
bladerf (0.2015.07-1) unstable; urgency=low
* New upstream release
* Adopt upstream packaging, Thanks to Ryan Tucker <bladerf@ryantucker.us>
- always install udev rules (no libbladerf-udev package necessary)
- ship bladeRF-install-firmware script in bladerf package
-- A. Maitland Bottoms <bottoms@debian.org> Sat, 08 Aug 2015 21:21:45 -0400
bladerf (0.2015.06-rc1) unstable; urgency=low
* New upstream release
* Adopt upstream packaging, Thanks to Ryan Tucker <bladerf@ryantucker.us>
always install udev rules (no libbladerf-udev package necessary)
-- A. Maitland Bottoms <bottoms@debian.org> Sat, 01 Aug 2015 00:12:45 -0400
bladerf (2015.07) unstable; urgency=low
* FPGA: Fixed bug where TX_NOW bursts could cause metadata/sample FIFO slips
@ -176,6 +328,53 @@ bladerf (2014.11-rc3) unstable; urgency=low
-- Jon Szymaniak <jon.szymaniak@gmail.com> Thu, 30 Oct 2014 21:59:38 -0400
bladerf (0.2014.09~rc2-5) unstable; urgency=low
* remove kfreebsd uninstallable dependency on libusb-1.0-0
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 12 Sep 2014 09:40:21 -0400
bladerf (0.2014.09~rc2-4) unstable; urgency=low
* update build dependency to libtecla-dev (due to libtecla 1.6.2)
-- A. Maitland Bottoms <bottoms@debian.org> Tue, 09 Sep 2014 14:49:14 -0400
bladerf (0.2014.09~rc2-3) unstable; urgency=low
* update usb library dependencies
-- A. Maitland Bottoms <bottoms@debian.org> Tue, 09 Sep 2014 01:27:32 -0400
bladerf (0.2014.09~rc2-2) unstable; urgency=low
* Update to 2014.09-rc2-49-g0bb0cce
-- A. Maitland Bottoms <bottoms@debian.org> Wed, 27 Aug 2014 02:37:36 -0400
bladerf (0.2014.09~rc2-1) unstable; urgency=low
* Update to 2014.09-rc2-39g0189d48
bladeRF-install-firmware checksums updated
* Second of three release candidates for 2014.09 release
* FPGA bitstream v0.0.6,
FX3 Firmware v1.7.1,
libbladeRF v0.16.2, bladeRF-cli v0.11.1
* [hdl (nios)] Defects present in gain/phase correction bug
* Frequency readback is incorrect when using xb200 bug
* Markdown-ify the bladeRF-cli interactive help
* bladeRF-cli: Clean up print/set lnagain bug
* [libbladeRF] LMS VTUNE not locking occasionally bug
* [bladeRF-Cli] Fix 'correct' command parameter ranges, cleanup usage and
help text
* [libbladeRF] Remove bladerf_* calls from lms.c enhancement
* [libbladeRF] Cleanup: Move bladerf_get/set_sampling to lms.c enhancement
* libbladeRF: LMS SELOUT[1:0] may be left in an invalid state upon exiting
loopback mode
* [CLI] After a calibrate command is issued, the bladeRF transmits a carrier
-- A. Maitland Bottoms <bottoms@debian.org> Wed, 20 Aug 2014 11:23:42 -0400
bladerf (2014.09-rc2) unstable; urgency=low
* Tagged release 2014.09-rc2 at dddc72f
@ -194,6 +393,12 @@ bladerf (2014.09-rc2) unstable; urgency=low
-- Ryan Tucker <rtucker@gmail.com> Thu, 24 Jul 2014 22:59:24 -0400
bladerf (0.2014.09~rc1-1) unstable; urgency=low
* New upstream release candidate
-- A. Maitland Bottoms <bottoms@debian.org> Sun, 06 Jul 2014 23:06:53 -0400
bladerf (2014.09-rc1) unstable; urgency=low
* Tagged release 2014.09-rc1 at 9c651b5
@ -219,12 +424,54 @@ bladerf (2014.09-rc1) unstable; urgency=low
-- Ryan Tucker <rtucker@gmail.com> Sat, 05 Jul 2014 14:56:29 -0400
bladerf (0.10.7.47.ebe70c4-4) unstable; urgency=low
* avoid help2man build failures on some architectures
-- A. Maitland Bottoms <bottoms@debian.org> Sat, 19 Apr 2014 19:07:28 -0400
bladerf (0.10.7.47.ebe70c4-3) unstable; urgency=low
* More kFreeBSD build fixes
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 18 Apr 2014 18:53:19 -0400
bladerf (0.10.7.47.ebe70c4-2) unstable; urgency=low
* Find libusb2 library on kFreeBSD
-- A. Maitland Bottoms <bottoms@debian.org> Sun, 13 Apr 2014 17:10:54 -0400
bladerf (0.10.7.47.ebe70c4-1) unstable; urgency=low
* Update to v0.10.7 47 ebe70c4
-- A. Maitland Bottoms <bottoms@debian.org> Sun, 13 Apr 2014 11:35:00 -0400
bladerf (0.9.0.15.8ba2499-1~bpo70+1) wheezy-backports; urgency=low
* Rebuild for wheezy-backports.
-- A. Maitland Bottoms <bottoms@debian.org> Tue, 21 Jan 2014 20:53:21 -0500
bladerf (0~20131229-1) unstable; urgency=low
* Rename libbladerf0-dev -> libbladerf-dev
-- Ryan Tucker <rtucker@gmail.com> Sun, 29 Dec 2013 16:04:17 -0500
bladerf (0.9.0.15.8ba2499-1) unstable; urgency=low
* new upstream version
-- A. Maitland Bottoms <bottoms@debian.org> Fri, 27 Dec 2013 12:15:29 -0500
bladerf (0.8.0.14.9126eac-1) unstable; urgency=low
* New Debian Package (Closes: #724967)
-- A. Maitland Bottoms <bottoms@debian.org> Mon, 25 Nov 2013 23:51:56 -0500
bladerf (0~20131006-1) unstable; urgency=low
* Another experimental release

1
debian/clean vendored Normal file
View File

@ -0,0 +1 @@
bladerf.egg-info/

5790
debian/compat_report.html vendored Normal file

File diff suppressed because it is too large Load Diff

129
debian/control vendored
View File

@ -1,23 +1,37 @@
Source: bladerf
Priority: optional
Maintainer: Rey Tucker <rey.tucker@nuand.com>
Build-Depends: debhelper (>=9), cmake (>= 2.8.5), pkg-config, doxygen,
libusb-1.0-0-dev (>= 1.0.12), libtecla-dev | libtecla1-dev, libncurses5-dev,
git, help2man, pandoc
Standards-Version: 4.1.4
Maintainer: A. Maitland Bottoms <bottoms@debian.org>
Build-Depends: cmake (>= 2.8.12),
debhelper-compat (= 13),
dh-python,
doxygen,
graphviz,
help2man,
libad9361-dev,
libedit-dev,
libncurses5-dev,
libtecla-dev | libtecla1-dev,
libusb-1.0-0-dev [!kfreebsd-any],
libusb2-dev [kfreebsd-any],
pandoc [!kfreebsd-any],
pkg-config,
python3-dev,
python3-setuptools
Standards-Version: 4.5.1
Rules-Requires-Root: no
Section: comm
Homepage: https://www.nuand.com/bladeRF
Vcs-Git: git://github.com/Nuand/bladeRF.git
Vcs-Browser: https://github.com/Nuand/bladeRF
Homepage: https://www.Nuand.com/bladeRF
Vcs-Browser: https://salsa.debian.org/debian-hamradio-team/bladerf
Vcs-Git: https://salsa.debian.org/debian-hamradio-team/bladerf.git
Package: libbladerf2
Section: libs
Architecture: any
Multi-Arch: same
Pre-Depends: ${misc:Pre-Depends}
Depends: ${shlibs:Depends}, ${misc:Depends}, libusb-1.0-0 (>= 1.0.12)
Recommends: bladerf-fpga, libbladerf-udev
Suggests: bladerf-firmware
Depends: ${misc:Depends}, ${shlibs:Depends}
Recommends: bladerf
Suggests: bladerf-firmware, bladerf-fpga
Description: Nuand bladeRF software-defined radio device
The Nuand bladeRF is an open-source software-defined radio (SDR) system,
comprised of an RF transceiver, a field-programmable gate array (FPGA),
@ -30,7 +44,10 @@ Package: libbladerf-dev
Section: libdevel
Architecture: any
Multi-Arch: same
Depends: libbladerf2 (= ${binary:Version}), libc6-dev | libc-dev, ${misc:Depends}
Depends: libbladerf2 (= ${binary:Version}),
libc6-dev | libc-dev,
${misc:Depends}
Suggests: libbladerf-doc
Description: Nuand bladeRF software-defined radio device (header files)
The Nuand bladeRF is an open-source software-defined radio (SDR) system,
comprised of an RF transceiver, a field-programmable gate array (FPGA),
@ -42,8 +59,10 @@ Description: Nuand bladeRF software-defined radio device (header files)
Package: libbladerf-doc
Section: doc
Architecture: any
Depends: ${misc:Depends}
Architecture: all
Depends: libjs-mathjax, ${misc:Depends}
Breaks: libbladerf-dev (<< 0.2019.07)
Replaces: libbladerf-dev (<< 0.2019.07)
Description: Nuand bladeRF software-defined radio device (API documentation)
The Nuand bladeRF is an open-source software-defined radio (SDR) system,
comprised of an RF transceiver, a field-programmable gate array (FPGA),
@ -52,26 +71,10 @@ Description: Nuand bladeRF software-defined radio device (API documentation)
.
This package contains libbladeRF API documentation.
Package: libbladerf-udev
Section: libs
Architecture: any
Multi-Arch: same
Depends: ${shlibs:Depends}, ${misc:Depends}, udev
Conflicts: libbladerf0
Description: Nuand bladeRF software-defined radio device (header files)
The Nuand bladeRF is an open-source software-defined radio (SDR) system,
comprised of an RF transceiver, a field-programmable gate array (FPGA),
a microcontroller driving a USB 3.0 interface, and a suite of host
libraries and drivers to facilitate interaction with the device.
.
This package contains udev rules to ensure that the USB device is
configured correctly when connected.
Package: bladerf
Section: comm
Architecture: any
Multi-Arch: foreign
Depends: libbladerf2 (= ${binary:Version}), ${shlibs:Depends}, ${misc:Depends}, libbladerf-udev
Depends: libbladerf2 (= ${binary:Version}), ${misc:Depends}, ${shlibs:Depends}
Provides: bladerf-host
Conflicts: bladerf-host
Replaces: bladerf-host
@ -83,18 +86,33 @@ Description: Nuand bladeRF software-defined radio device (tools)
.
This package provides command-line tools for controlling the bladeRF.
Package: bladerf-fpga-hostedx40
Section: comm
Package: python3-bladerf
Section: python
Architecture: any
Depends: wget, ${shlibs:Depends}, ${misc:Depends}
Multi-Arch: foreign
Depends: libbladerf-dev (= ${binary:Version}),
python3, ${python3:Depends},
${misc:Depends}
Description: Nuand bladeRF software-defined radio device (Python)
The Nuand bladeRF is an open-source software-defined radio (SDR) system,
comprised of an RF transceiver, a field-programmable gate array (FPGA),
a microcontroller driving a USB 3.0 interface, and a suite of host
libraries and drivers to facilitate interaction with the device.
.
This package provides Python bindings for controlling the bladeRF.
Package: bladerf-fpga-hostedx40
Section: contrib/comm
Architecture: all
Depends: ca-certificates, libbladerf2, wget, ${misc:Depends}
Recommends: bladerf
Suggests: bladerf-firmware
Provides: bladerf-fpga
Description: Nuand bladeRF FPGA bitstream downloader (hostedx40)
This package will, at the time of installation, download an appropriate
This empty package will, at the time of installation, download an appropriate
FPGA bitstream for using the Nuand bladeRF in a hosted (USB-controlled)
configuration. The FPGA bitstream will be downloaded from
https://nuand.com/fpga/ and saved to /usr/share/Nuand/bladeRF.
http://Nuand.com/fpga/ and saved to /usr/share/Nuand/bladeRF.
.
This bitstream is for the bladeRF x40 with the Altera Cyclone IV
EP4CE40 FPGA.
@ -103,17 +121,17 @@ Description: Nuand bladeRF FPGA bitstream downloader (hostedx40)
with the bladeRF-cli utility.
Package: bladerf-fpga-hostedx115
Section: comm
Architecture: any
Depends: wget, ${shlibs:Depends}, ${misc:Depends}
Section: contrib/comm
Architecture: all
Depends: ca-certificates, libbladerf2, wget, ${misc:Depends}
Recommends: bladerf
Suggests: bladerf-firmware
Provides: bladerf-fpga
Description: Nuand bladeRF FPGA bitstream downloader (hostedx115)
This package will, at the time of installation, download an appropriate
This empty package will, at the time of installation, download an appropriate
FPGA bitstream for using the Nuand bladeRF in a hosted (USB-controlled)
configuration. The FPGA bitstream will be downloaded from
https://nuand.com/fpga/ and saved to /usr/share/Nuand/bladeRF.
http://Nuand.com/fpga/ and saved to /usr/share/Nuand/bladeRF.
.
This bitstream is for the bladeRF x115 with the Altera Cyclone IV
EP4CE115 FPGA.
@ -122,14 +140,14 @@ Description: Nuand bladeRF FPGA bitstream downloader (hostedx115)
with the bladeRF-cli utility.
Package: bladerf-fpga-hostedxa4
Section: comm
Architecture: any
Depends: wget, ${shlibs:Depends}, ${misc:Depends}
Section: contrib/comm
Architecture: all
Depends: wget, ${misc:Depends}
Recommends: bladerf
Suggests: bladerf-firmware
Provides: bladerf-fpga
Description: Nuand bladeRF FPGA bitstream downloader (hostedxA4)
This package will, at the time of installation, download an appropriate
This empty package will, at the time of installation, download an appropriate
FPGA bitstream for using the Nuand bladeRF in a hosted (USB-controlled)
configuration. The FPGA bitstream will be downloaded from
https://nuand.com/fpga/ and saved to /usr/share/Nuand/bladeRF.
@ -141,14 +159,14 @@ Description: Nuand bladeRF FPGA bitstream downloader (hostedxA4)
with the bladeRF-cli utility.
Package: bladerf-fpga-hostedxa9
Section: comm
Architecture: any
Depends: wget, ${shlibs:Depends}, ${misc:Depends}
Section: contrib/comm
Architecture: all
Depends: wget, ${misc:Depends}
Recommends: bladerf
Suggests: bladerf-firmware
Provides: bladerf-fpga
Description: Nuand bladeRF FPGA bitstream downloader (hostedxA9)
This package will, at the time of installation, download an appropriate
This empty package will, at the time of installation, download an appropriate
FPGA bitstream for using the Nuand bladeRF in a hosted (USB-controlled)
configuration. The FPGA bitstream will be downloaded from
https://nuand.com/fpga/ and saved to /usr/share/Nuand/bladeRF.
@ -160,20 +178,19 @@ Description: Nuand bladeRF FPGA bitstream downloader (hostedxA9)
with the bladeRF-cli utility.
Package: bladerf-firmware-fx3
Section: comm
Architecture: any
Depends: wget, ${shlibs:Depends}, ${misc:Depends}
Section: contrib/comm
Architecture: all
Depends: ca-certificates, libbladerf2, wget, ${misc:Depends}
Recommends: bladerf
Suggests: bladerf-fpga
Provides: bladerf-firmware
Description: Nuand bladeRF firmware downloader (FX3)
This package will, at the time of installation, download an appropriate
This empty package will, at the time of installation, download an appropriate
firmware image for using the Nuand bladeRF with a Cypress FX3 USB
controller. The image will be downloaded from https://nuand.com/fx3/
controller. The image will be downloaded from http://Nuand.com/fx3/
and saved to /usr/share/Nuand/bladeRF.
.
This bitstream will work for either the Nuand bladeRF x40 or the x115,
as well as the bladeRF 2.0 Micro xA4 or xA9.
This bitstream will work for either the Nuand bladeRF x40 or the x115.
.
Note that this will not upgrade the bladeRF itself. That can be done
with the bladeRF-cli utility.

166
debian/copyright vendored
View File

@ -1,11 +1,13 @@
# vim:sw=1
Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Format: https://www.debian.org/doc/packaging-manuals/copyright-format/1.0/
Upstream-Name: bladerf
Upstream-Contact: Nuand LLC <bladerf@nuand.com>
Source: <https://github.com/Nuand/bladeRF/>
Comment: Harmony copyright assignment agreements are in effect. Only the host/
and fpga_common/ directories of the source are used to build the
binary Debian packages.
Source: https://github.com/Nuand/bladeRF/
Comment: Harmony copyright assignment agreements are in effect.
Only the host/ directory of the source is used to build the binary
Debian packages.
X-Note: Upstream package source tarball obtained from:
git archive --format=tar --prefix=bladerf-0.2018.07/ 2019.19.07 | xz > ../../bladerf_0.2019.07.orig.tar.xz
Files: *
Copyright: 2012-2018 Nuand LLC
@ -16,31 +18,32 @@ Comment: All metadata (Makefiles, CMake scripts, etc.) are MIT license unless
Files: hdl/*
firmware_common/*
fx3_firmware/*
Copyright: 2013-2018 Nuand LLC
Copyright: 2013 Nuand LLC
Comment: Not used in building Debian packages
License: MIT
Files: hdl/fpga/ip/altera/*
Copyright: 1991-2016 Altera Corporation
Copyright: 1991-2012 Altera Corporation
Comment: Not used in building Debian packages
Boilerplate Altera copyright for Nuand LLC design licensed MIT
License: Altera-AMPP
Files: hdl/fpga/ip/analogdevicesinc/*
Copyright: 2011 Analog Devices, Inc.
Comment: Not used in building Debian packages
Boilerplate Analog Devices copyright
License: AnalogDevices
Files: hdl/fpga/ip/nuand/arbiter/*
Copyright: 2017 Nuand LLC
Comment: Not used in building Debian packages
License: AGPL-3+
License: ALTERA-NUAND-MIT
Your use of Altera Corporation's design tools, logic functions
and other software and tools, and its AMPP partner logic
functions, and any output files from any of the foregoing
(including device programming or simulation files), and any
associated documentation or information are expressly subject
to the terms and conditions of the Altera Program License
Subscription Agreement, Altera MegaCore Function License
Agreement, or other applicable license agreement, including,
without limitation, that your use is for the sole purpose of
programming logic devices manufactured by Altera and sold by
Altera or its authorized distributors. Please refer to the
applicable agreement for further details.
Files: hdl/fpga/ip/opencores/i2c/*
Copyright: 2000-2004 Richard Herveille richard@asics.ws
Comment: Not used in building Debian packages
License: OpenCores-I2C
License: OPENCORES-MIT
This source file may be used and distributed without
restriction provided that this copyright statement is not
removed from the file and that any derivative work contains
@ -62,7 +65,7 @@ License: OpenCores-I2C
Files: host/cmake/modules/FindLibPThreadsWin32.cmake
Copyright: 2008-2009 Hendrik Sattler
2013-2018 Nuand LLC
2013 Nuand LLC
License: GPL-2+
Comment: This is file is based off of the FindLibUSB.cmake file written by
Hendrik Sattler, from the OpenOBEX project (licensed GPLv2/LGPL). (If
@ -73,7 +76,7 @@ Comment: This is file is based off of the FindLibUSB.cmake file written by
Files: host/cmake/modules/FindLibUSB.cmake
Copyright: 2008-2009 Hendrik Sattler
2013-2018 Nuand LLC
2013 Nuand LLC
License: GPL-2+
Comment: This is a *slightly* modified version of the file written by
Hendrik Sattler, from the OpenOBEX project (licensed GPLv2/LGPL).
@ -89,63 +92,35 @@ Copyright: 2007-11, Andrea Vedaldi and Brian Fulkerson
Comment: Not used in building Debian packages
License: BSD-2-clause
Files: host/common/include/windows/inttypes_msvc.h
Copyright: 2006-2013 Alexander Chemeris
Comment: Not used in building Debian packages
License: BSD-3-clause
Files: host/drivers/linux/*
Copyright: 2013-2018 Nuand LLC
Files: host/drivers/linux/bladeRF.c
Copyright: 2013 Nuand LLC
2013 Robert Ghilduta
License: GPL-2+
Files: host/libraries/*
Copyright: 2013-2018 Nuand LLC
Copyright: 2013 Nuand LLC
2013 Daniel Gröber
License: LGPL-2.1+
Files: host/utilities/*
Copyright: 2013-2018 Nuand LLC
Copyright: 2013 Nuand LLC
2013 Daniel Gröber
License: GPL-2+
Files: host/utilities/common/include/ezusb.h
host/utilities/common/src/ezusb.c
Copyright: 2001 Stephen Williams (steve@icarus.com)
2001-2002 David Brownell (dbrownell@users.sourceforge.net)
2008 Roger Williams (rawqux@users.sourceforge.net)
2012 Pete Batard (pete@akeo.ie)
2013 Federico Manzan (f.manzan@gmail.com)
License: GPL-2+
Files: host/libraries/libbladeRF/src/thirdparty/sha256.c
Copyright: 2005 Colin Percival
2011 Guillem Jover
2013 Daniel Gröber
License: BSD-2-clause and BSD-3-clause
Files: host/libraries/libbladeRF/src/thirdparty/sha256.h
Files: host/common/include/sha256.h
Copyright: 2005 Colin Percival
2013 Daniel Gröber
License: BSD-2-clause
Files: thirdparty/analogdevicesinc/no-OS/*
Copyright: 2013-2015 Analog Devices, Inc.
License: AnalogDevices
Files: host/common/src/sha256.c
Copyright: 2005 Colin Percival
2011 Guillem Jover <guillem@hadrons.org>
2013 Daniel Gröber
License: BSD-3-clause
License: AGPL-3+
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as
published by the Free Software Foundation, either version 3 of the
License, or (at your option) any later version.
.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU Affero General Public License for more details.
.
You should have received a copy of the GNU Affero General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
Files: host/common/include/windows/c99/inttypes.h
Copyright: 2006-2013 Alexander Chemeris
License: BSD.msc_inttypes
License: GPL-2+
This package is free software; you can redistribute it and/or modify
@ -246,51 +221,28 @@ License: BSD-3-clause
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
License: Altera-AMPP
Copyright (C) 1991-2016 Altera Corporation. All rights reserved.
Your use of Altera Corporation's design tools, logic functions
and other software and tools, and its AMPP partner logic
functions, and any output files from any of the foregoing
(including device programming or simulation files), and any
associated documentation or information are expressly subject
to the terms and conditions of the Altera Program License
Subscription Agreement, the Altera Quartus Prime License Agreement,
the Altera MegaCore Function License Agreement, or other
applicable license agreement, including, without limitation,
that your use is for the sole purpose of programming logic
devices manufactured by Altera and sold by Altera or its
authorized distributors. Please refer to the applicable
agreement for further details.
License: AnalogDevices
All rights reserved.
.
License: BSD.msc_inttypes
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following conditions are met:
- Redistributions of source code must retain the above copyright
notice, this list of conditions and the following disclaimer.
- Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in
the documentation and/or other materials provided with the
distribution.
- Neither the name of Analog Devices, Inc. nor the names of its
contributors may be used to endorse or promote products derived
from this software without specific prior written permission.
- The use of this software may or may not infringe the patent rights
of one or more patent holders. This license does not release you
from the requirement that you obtain separate licenses from these
patent holders to use this software.
- Use of the software either in source or binary form, must be run
on or directly connected to an Analog Devices Inc. component.
.
THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES "AS IS" AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, NON-INFRINGEMENT, MERCHANTABILITY
AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
1. Redistributions of source code must retain the above copyright notice,
this list of conditions and the following disclaimer.
.
IN NO EVENT SHALL ANALOG DEVICES BE LIABLE FOR ANY DIRECT, INDIRECT,
INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
LIMITED TO, INTELLECTUAL PROPERTY RIGHTS, PROCUREMENT OF SUBSTITUTE GOODS OR
SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
2. Redistributions in binary form must reproduce the above copyright
notice, this list of conditions and the following disclaimer in the
documentation and/or other materials provided with the distribution.
.
3. Neither the name of the product nor the names of its contributors may
be used to endorse or promote products derived from this software
without specific prior written permission.
.
THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED
WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

13
debian/firmware.txt vendored Normal file
View File

@ -0,0 +1,13 @@
BladeRF fx3 firmware and fpga configuration files
are expected to be in /usr/share/Nuand/bladeRF/
by default.
Install the bladerf-firmware-fx3 package and
at least one of:
bladerf-fpga-hostedx40
bladerf-fpga-hostedx115
bladerf-fpga-hostedxa4
bladerf-fpga-hostedxa9
packages, as appropriate for your hardware.
Or, run `bladeRF-install-firmware` from the bladerf package.

6
debian/gitlab-ci.yml vendored Normal file
View File

@ -0,0 +1,6 @@
include:
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/salsa-ci.yml
- https://salsa.debian.org/salsa-ci-team/pipeline/raw/master/pipeline-jobs.yml
reprotest:
extends: .test-reprotest-diffoscope

BIN
debian/libbladerf-dev.abi.tar.gz.amd64 vendored Normal file

Binary file not shown.

12
debian/libbladerf-dev.acc vendored Normal file
View File

@ -0,0 +1,12 @@
<?xml version="1.0" encoding="utf-8"?>
<descriptor>
<headers>
debian/libbladerf-dev/usr/include/
</headers>
<libs>
debian/libbladerf1/usr/lib/
</libs>
</descriptor>

View File

@ -1,2 +1,2 @@
usr/lib
usr/include
usr/lib

View File

@ -1,3 +1,3 @@
usr/lib/*/lib*.so
usr/include/*
usr/lib/*/lib*.so
usr/lib/*/pkgconfig/*

8
debian/libbladerf-doc.doc-base vendored Normal file
View File

@ -0,0 +1,8 @@
Document: libbladerf-doc
Title: Nuand bladeRF library
Author: Nuand
Section: Programming
Format: HTML
Index: /usr/share/doc/libbladerf-doc/html/index.html
Files: /usr/share/doc/libbladerf-doc/html/*

View File

@ -1,4 +1,5 @@
COPYING
CONTRIBUTORS
COPYING
README.md
legal/*
debian/compat_report.html

View File

@ -1 +1,2 @@
usr/share/doc/libbladerf-doc/*
host/examples usr/share/doc/libbladerf-doc/

View File

@ -1 +1 @@
usr/lib
/usr/share/Nuand/bladeRF

View File

@ -1,4 +1,3 @@
COPYING
CONTRIBUTORS
README.md
legal/*
debian/firmware.txt

View File

@ -1 +1,3 @@
debian/libbladerf2.metainfo.xml usr/share/metainfo
lib/udev/rules.d/*
usr/lib/*/lib*.so.*

21
debian/libbladerf2.metainfo.xml vendored Normal file
View File

@ -0,0 +1,21 @@
<?xml version="1.0" encoding="UTF-8"?>
<component>
<id>com.nuand.bladerf</id>
<metadata_license>MIT</metadata_license>
<name>bladerf</name>
<summary>Nuand bladeRF radio interface</summary>
<description>
<p>
The nuand bladeRF is an open-source software-defined radio (SDR) system,
comprised of an RF transceiver, a field-programmable gate array (FPGA),
a microcontroller driving a USB 3.0 interface, and a suite of host
libraries and drivers to facilitate interaction with the device.
</p>
</description>
<provides>
<modalias>usb:v1D50p6066d*</modalias>
<modalias>usb:v2CF0p5246d*</modalias>
<modalias>usb:v2CF0p5250d*</modalias>
<modalias>usb:v04B4p00F3d*</modalias>
</provides>
</component>

View File

@ -0,0 +1,42 @@
From aa0df261a03fe58f56f3d317b0079e4626345bea Mon Sep 17 00:00:00 2001
From: Robert Ghilduta <Robert.Ghilduta@nuand.com>
Date: Fri, 2 Aug 2019 01:38:38 -0500
Subject: [PATCH 1/4] debian: add 2019.07 release
---
debian/changelog | 9 +++++++++
debian/control | 2 +-
2 files changed, 10 insertions(+), 1 deletion(-)
diff --git a/debian/changelog b/debian/changelog
index e10cbb34..4ce3802d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,12 @@
+bladerf (2019.07) unstable; urgency=low
+
+ * Release for 2019.07 tag
+ * Various libbladeRF and HDL fixes
+ * FPGA bitstream v0.11.2, FX3 FW v2.3.2, libbladeRF v2.2.1, bladeRF-cli
+ v1.8.0
+
+ -- Robert Ghilduta (Nuand LLC) <robert.ghilduta@nuand.com> Thu, 01 Aug 2019 22:54:28 -0400
+
bladerf (2018.12-rc2) unstable; urgency=low
* Release candidate 2 for 2018.12. Please see the top-level CHANGELOG file,
diff --git a/debian/control b/debian/control
index 9a09fc94..8e152ce3 100644
--- a/debian/control
+++ b/debian/control
@@ -1,6 +1,6 @@
Source: bladerf
Priority: optional
-Maintainer: Rey Tucker <rey.tucker@nuand.com>
+Maintainer: Nuand LLC <bladeRF@nuand.com>
Build-Depends: debhelper (>=9), cmake (>= 2.8.5), pkg-config, doxygen,
libusb-1.0-0-dev (>= 1.0.12), libtecla-dev | libtecla1-dev, libncurses5-dev,
git, help2man, pandoc
--
2.20.1

View File

@ -0,0 +1,175 @@
From 055c7dfb29e4e93f3ccef6f8627f693ef1664eec Mon Sep 17 00:00:00 2001
From: Robert Ghilduta <Robert.Ghilduta@nuand.com>
Date: Fri, 2 Aug 2019 01:39:16 -0500
Subject: [PATCH 2/4] docker: add recent distribution
---
host/misc/docker/ubuntu-disco-i386.Dockerfile | 74 +++++++++++++++++++
host/misc/docker/ubuntu-disco.Dockerfile | 74 +++++++++++++++++++
2 files changed, 148 insertions(+)
create mode 100644 host/misc/docker/ubuntu-disco-i386.Dockerfile
create mode 100644 host/misc/docker/ubuntu-disco.Dockerfile
diff --git a/host/misc/docker/ubuntu-disco-i386.Dockerfile b/host/misc/docker/ubuntu-disco-i386.Dockerfile
new file mode 100644
index 00000000..c7aa8511
--- /dev/null
+++ b/host/misc/docker/ubuntu-disco-i386.Dockerfile
@@ -0,0 +1,74 @@
+# This file is part of the bladeRF project:
+# http://www.github.com/nuand/bladeRF
+#
+# Copyright (c) 2019 Nuand LLC.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+FROM i386/ubuntu:disco
+
+LABEL maintainer="Nuand LLC <bladeRF@nuand.com>"
+LABEL version="0.0.2"
+LABEL description="CI build environment for the bladeRF project"
+LABEL com.nuand.ci.distribution.name="Ubuntu"
+LABEL com.nuand.ci.distribution.codename="disco-i386"
+LABEL com.nuand.ci.distribution.version="19.04"
+
+# Install things
+RUN apt-get update \
+ && apt-get install -y \
+ build-essential \
+ clang \
+ cmake \
+ doxygen \
+ git \
+ help2man \
+ libtecla-dev \
+ libusb-1.0-0-dev \
+ pandoc \
+ pkg-config \
+ usbutils \
+ && apt-get clean
+
+# Copy in our build context
+COPY --from=nuand/bladerf-buildenv:base /root/bladeRF /root/bladeRF
+COPY --from=nuand/bladerf-buildenv:base /root/.config /root/.config
+WORKDIR /root/bladeRF
+
+# Build arguments
+ARG compiler=gcc
+ARG buildtype=Release
+ARG taggedrelease=NO
+ARG parallel=1
+
+# Do the build!
+RUN cd /root/bladeRF/ \
+ && mkdir -p build \
+ && cd build \
+ && cmake \
+ -DBUILD_DOCUMENTATION=ON \
+ -DCMAKE_C_COMPILER=${compiler} \
+ -DCMAKE_BUILD_TYPE=${buildtype} \
+ -DENABLE_FX3_BUILD=OFF \
+ -DENABLE_HOST_BUILD=ON \
+ -DTAGGED_RELEASE=${taggedrelease} \
+ ../ \
+ && make -j${parallel} \
+ && make install \
+ && ldconfig
diff --git a/host/misc/docker/ubuntu-disco.Dockerfile b/host/misc/docker/ubuntu-disco.Dockerfile
new file mode 100644
index 00000000..c2507084
--- /dev/null
+++ b/host/misc/docker/ubuntu-disco.Dockerfile
@@ -0,0 +1,74 @@
+# This file is part of the bladeRF project:
+# http://www.github.com/nuand/bladeRF
+#
+# Copyright (c) 2019 Nuand LLC.
+#
+# Permission is hereby granted, free of charge, to any person obtaining a copy
+# of this software and associated documentation files (the "Software"), to deal
+# in the Software without restriction, including without limitation the rights
+# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+# copies of the Software, and to permit persons to whom the Software is
+# furnished to do so, subject to the following conditions:
+#
+# The above copyright notice and this permission notice shall be included in
+# all copies or substantial portions of the Software.
+#
+# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
+# THE SOFTWARE.
+
+FROM ubuntu:disco
+
+LABEL maintainer="Nuand LLC <bladeRF@nuand.com>"
+LABEL version="0.0.2"
+LABEL description="CI build environment for the bladeRF project"
+LABEL com.nuand.ci.distribution.name="Ubuntu"
+LABEL com.nuand.ci.distribution.codename="disco"
+LABEL com.nuand.ci.distribution.version="19.04"
+
+# Install things
+RUN apt-get update \
+ && apt-get install -y \
+ build-essential \
+ clang \
+ cmake \
+ doxygen \
+ git \
+ help2man \
+ libtecla-dev \
+ libusb-1.0-0-dev \
+ pandoc \
+ pkg-config \
+ usbutils \
+ && apt-get clean
+
+# Copy in our build context
+COPY --from=nuand/bladerf-buildenv:base /root/bladeRF /root/bladeRF
+COPY --from=nuand/bladerf-buildenv:base /root/.config /root/.config
+WORKDIR /root/bladeRF
+
+# Build arguments
+ARG compiler=gcc
+ARG buildtype=Release
+ARG taggedrelease=NO
+ARG parallel=1
+
+# Do the build!
+RUN cd /root/bladeRF/ \
+ && mkdir -p build \
+ && cd build \
+ && cmake \
+ -DBUILD_DOCUMENTATION=ON \
+ -DCMAKE_C_COMPILER=${compiler} \
+ -DCMAKE_BUILD_TYPE=${buildtype} \
+ -DENABLE_FX3_BUILD=OFF \
+ -DENABLE_HOST_BUILD=ON \
+ -DTAGGED_RELEASE=${taggedrelease} \
+ ../ \
+ && make -j${parallel} \
+ && make install \
+ && ldconfig
--
2.20.1

View File

@ -0,0 +1,26 @@
From 553335bb10428db37d815a5b2dd46edf9aba19c7 Mon Sep 17 00:00:00 2001
From: Robert Ghilduta <robert.ghilduta@nuand.com>
Date: Tue, 20 Aug 2019 03:10:15 -0700
Subject: [PATCH 3/4] bladeRF2: update RX parameters
To align RX1 and RX2, flip RX2 phase inversion
---
fpga_common/src/ad936x_params.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/fpga_common/src/ad936x_params.c b/fpga_common/src/ad936x_params.c
index b1e1234a..7606074a 100644
--- a/fpga_common/src/ad936x_params.c
+++ b/fpga_common/src/ad936x_params.c
@@ -242,7 +242,7 @@ AD9361_InitParam bladerf2_rfic_init_params = {
5, // TX_DATA/TX_FRAME delay = 1.5 ns // tx_data_delay *** adi,tx-data-delay
300, // LVDS driver bias 300 mV // lvds_bias_mV *** adi,lvds-bias-mV
1, // Enable LVDS on-chip termination // lvds_rx_onchip_termination_enable *** adi,lvds-rx-onchip-termination-enable
- 0, // RX1 and RX2 are not phase-aligned // rx1rx2_phase_inversion_en *** adi,rx1-rx2-phase-inversion-enable
+ 1, // RX1 and RX2 are not phase-aligned // rx1rx2_phase_inversion_en *** adi,rx1-rx2-phase-inversion-enable
0xFF, // Default signal inversion mappings // lvds_invert1_control *** adi,lvds-invert1-control
0x0F, // Default signal inversion mappings // lvds_invert2_control *** adi,lvds-invert2-control
1, // CLK_OUT drive increased by ~20% // clk_out_drive
--
2.20.1

View File

@ -0,0 +1,29 @@
From 994b19a73eafb808cb93722892ca9c2f0e76097a Mon Sep 17 00:00:00 2001
From: Robert Ghilduta <robert.ghilduta@nuand.com>
Date: Wed, 21 Aug 2019 01:23:41 -0700
Subject: [PATCH 4/4] Revert "fpga_common: make the bladeRF2 default gain mode
manual"
This reverts commit a739a73096786ce1a4542b699e89327483d643a6.
---
fpga_common/src/ad936x_params.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/fpga_common/src/ad936x_params.c b/fpga_common/src/ad936x_params.c
index 7606074a..9e665ba5 100644
--- a/fpga_common/src/ad936x_params.c
+++ b/fpga_common/src/ad936x_params.c
@@ -78,8 +78,8 @@ AD9361_InitParam bladerf2_rfic_init_params = {
CLKOUT_DISABLE, // disable clkout pin (see enum ad9361_clkout) // clk_output_mode_select *** adi,clk-output-mode-select
/* Gain Control */
- RF_GAIN_MGC, // RX1 BLADERF_GAIN_DEFAULT = slow attack AGC // gc_rx1_mode *** adi,gc-rx1-mode
- RF_GAIN_MGC, // RX2 BLADERF_GAIN_DEFAULT = slow attack AGC // gc_rx2_mode *** adi,gc-rx2-mode
+ RF_GAIN_SLOWATTACK_AGC, // RX1 BLADERF_GAIN_DEFAULT = slow attack AGC // gc_rx1_mode *** adi,gc-rx1-mode
+ RF_GAIN_SLOWATTACK_AGC, // RX2 BLADERF_GAIN_DEFAULT = slow attack AGC // gc_rx2_mode *** adi,gc-rx2-mode
58, // magic AGC setting, see AD9361 docs // gc_adc_large_overload_thresh *** adi,gc-adc-large-overload-thresh
4, // magic AGC setting, see AD9361 docs // gc_adc_ovr_sample_size *** adi,gc-adc-ovr-sample-size
47, // magic AGC setting, see AD9361 docs // gc_adc_small_overload_thresh *** adi,gc-adc-small-overload-thresh
--
2.20.1

View File

@ -0,0 +1,45 @@
commit 163425d48a3b7d8c100d7295220d3648c050d0dd
Author: Robert Ghilduta <robert.ghilduta@nuand.com>
Date: Mon May 25 21:36:44 2020 -0500
libbladeRF: unambiguous flash_arch macro name
diff --git a/host/libraries/libbladeRF/src/board/bladerf1/bladerf1.c b/host/libraries/libbladeRF/src/board/bladerf1/bladerf1.c
index cd4c18b9..3dcc74ba 100644
--- a/host/libraries/libbladeRF/src/board/bladerf1/bladerf1.c
+++ b/host/libraries/libbladeRF/src/board/bladerf1/bladerf1.c
@@ -838,7 +838,7 @@ static int bladerf1_open(struct bladerf *dev, struct bladerf_devinfo *devinfo)
board_data->module_format[BLADERF_RX] = -1;
board_data->module_format[BLADERF_TX] = -1;
- dev->flash_arch->status = STATE_UNINITIALIZED;
+ dev->flash_arch->status = STATUS_FLASH_UNINITIALIZED;
dev->flash_arch->manufacturer_id = 0x0;
dev->flash_arch->device_id = 0x0;
diff --git a/host/libraries/libbladeRF/src/board/bladerf2/bladerf2.c b/host/libraries/libbladeRF/src/board/bladerf2/bladerf2.c
index 5e1367c0..9d82aa17 100644
--- a/host/libraries/libbladeRF/src/board/bladerf2/bladerf2.c
+++ b/host/libraries/libbladeRF/src/board/bladerf2/bladerf2.c
@@ -280,7 +280,7 @@ static int bladerf2_open(struct bladerf *dev, struct bladerf_devinfo *devinfo)
board_data->module_format[BLADERF_RX] = -1;
board_data->module_format[BLADERF_TX] = -1;
- dev->flash_arch->status = STATE_UNINITIALIZED;
+ dev->flash_arch->status = STATUS_FLASH_UNINITIALIZED;
dev->flash_arch->manufacturer_id = 0x0;
dev->flash_arch->device_id = 0x0;
diff --git a/host/libraries/libbladeRF/src/board/board.h b/host/libraries/libbladeRF/src/board/board.h
index db8128c3..66873069 100644
--- a/host/libraries/libbladeRF/src/board/board.h
+++ b/host/libraries/libbladeRF/src/board/board.h
@@ -446,7 +446,7 @@ struct board_fns {
/* Information about the (SPI) flash architecture */
struct bladerf_flash_arch {
- enum { STATUS_UNINITIALIZED, STATUS_SUCCESS, STATUS_ASSUMED } status;
+ enum { STATUS_FLASH_UNINITIALIZED, STATUS_SUCCESS, STATUS_ASSUMED } status;
uint8_t manufacturer_id; /**< Raw manufacturer ID */
uint8_t device_id; /**< Raw device ID */

View File

@ -0,0 +1,19 @@
commit 5cf9fd299a396a5ae5b4402215713fd2a84e607b
Author: Robert Ghilduta <robert.ghilduta@nuand.com>
Date: Mon May 25 21:36:50 2020 -0500
libbladeRF: define bladerf2_state_to_string as extern in header
diff --git a/host/libraries/libbladeRF/src/board/bladerf2/common.h b/host/libraries/libbladeRF/src/board/bladerf2/common.h
index 23187ba6..efbebc86 100644
--- a/host/libraries/libbladeRF/src/board/bladerf2/common.h
+++ b/host/libraries/libbladeRF/src/board/bladerf2/common.h
@@ -207,7 +207,7 @@ extern const float ina219_r_shunt;
/* Constants */
/******************************************************************************/
-char const *bladerf2_state_to_string[4];
+extern char const *bladerf2_state_to_string[4];
/******************************************************************************/

55
debian/patches/debian-kfreebsd vendored Normal file
View File

@ -0,0 +1,55 @@
Description: Handle Debian kFreeBSD architecture.
Author: A. Maitland Bottoms <bottoms@debian.org>
--- a/host/cmake/modules/FindLibUSB.cmake
+++ b/host/cmake/modules/FindLibUSB.cmake
@@ -48,18 +48,15 @@
endif()
# FreeBSD has built-in libusb since 800069
-if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+if((${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") OR (${CMAKE_SYSTEM_NAME} MATCHES "kFreeBSD") )
exec_program(sysctl ARGS -n kern.osreldate OUTPUT_VARIABLE FREEBSD_VERSION)
- set(MIN_FREEBSD_VERSION 800068)
- if(FREEBSD_VERSION GREATER ${MIN_FREEBSD_VERSION})
- set(LIBUSB_FOUND TRUE)
- set(LIBUSB_SKIP_VERSION_CHECK TRUE)
- set(LIBUSB_INCLUDE_DIRS "/usr/include")
- set(LIBUSB_HEADER_FILE "${LIBUSB_INCLUDE_DIRS}/libusb.h")
- set(LIBUSB_LIBRARIES "usb")
- set(LIBUSB_LIBRARY_DIRS "/usr/lib/")
- endif(FREEBSD_VERSION GREATER ${MIN_FREEBSD_VERSION})
-endif(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+ set(LIBUSB_FOUND TRUE)
+ set(LIBUSB_SKIP_VERSION_CHECK TRUE)
+ set(LIBUSB_INCLUDE_DIRS "/usr/include")
+ set(LIBUSB_HEADER_FILE "${LIBUSB_INCLUDE_DIRS}/libusb.h")
+ set(LIBUSB_LIBRARIES "usb")
+ set(LIBUSB_LIBRARY_DIRS "/usr/lib/")
+endif((${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") OR (${CMAKE_SYSTEM_NAME} MATCHES "kFreeBSD") )
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
--- a/host/libraries/libbladeRF/CMakeLists.txt
+++ b/host/libraries/libbladeRF/CMakeLists.txt
@@ -494,17 +494,18 @@
@ONLY
)
-if(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+if((${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") AND NOT (CMAKE_SYSTEM_NAME STREQUAL "kFreeBSD"))
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/libbladeRF.pc
DESTINATION ${CMAKE_INSTALL_PREFIX}/libdata/pkgconfig
)
else()
+# Debian kFreeBSD uses the same location as Debian Linux
install(
FILES ${CMAKE_CURRENT_BINARY_DIR}/libbladeRF.pc
DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig/
)
-endif(${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD")
+endif((${CMAKE_SYSTEM_NAME} MATCHES "FreeBSD") AND NOT (CMAKE_SYSTEM_NAME STREQUAL "kFreeBSD"))
################################################################################

88
debian/patches/modern-cmake-targets vendored Normal file
View File

@ -0,0 +1,88 @@
--- a/host/libraries/libbladeRF/CMakeLists.txt
+++ b/host/libraries/libbladeRF/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 2.8.5)
+cmake_minimum_required(VERSION 2.8.12)
project(libbladeRF C)
@@ -511,13 +511,30 @@
################################################################################
# Library installation information
################################################################################
+configure_file(
+ ${CMAKE_CURRENT_SOURCE_DIR}/cmake/BladeRFConfigVersion.cmake.in
+ ${CMAKE_CURRENT_BINARY_DIR}/BladeRFConfigVersion.cmake
+ @ONLY
+)
install(TARGETS libbladerf_shared
+ EXPORT BLADERF-export
LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} # .so/.dylib
ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} # .a/.lib
RUNTIME DESTINATION ${CMAKE_INSTALL_LIBDIR} # .dll
)
+install(EXPORT BLADERF-export
+ FILE BladeRFTargets.cmake
+ NAMESPACE BladeRF::
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/BladeRF/
+ )
+
+install( FILES
+ ${CMAKE_CURRENT_SOURCE_DIR}/cmake/BladeRFConfig.cmake
+ ${CMAKE_CURRENT_BINARY_DIR}/BladeRFConfigVersion.cmake
+ DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/BladeRF/
+)
################################################################################
# Informational output
--- a/host/libraries/CMakeLists.txt
+++ b/host/libraries/CMakeLists.txt
@@ -1,3 +1,3 @@
-cmake_minimum_required(VERSION 2.8)
+cmake_minimum_required(VERSION 2.8.12)
add_subdirectory(libbladeRF)
add_subdirectory(libbladeRF_test)
--- a/host/libraries/libbladeRF_test/CMakeLists.txt
+++ b/host/libraries/libbladeRF_test/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 2.8)
+cmake_minimum_required(VERSION 2.8.12)
add_subdirectory(test_async)
add_subdirectory(test_bootloader_recovery)
--- a/host/CMakeLists.txt
+++ b/host/CMakeLists.txt
@@ -1,4 +1,4 @@
-cmake_minimum_required(VERSION 2.8.4)
+cmake_minimum_required(VERSION 2.8.12)
project(bladeRF C)
################################################################################
--- /dev/null
+++ b/host/libraries/libbladeRF/cmake/BladeRFConfig.cmake
@@ -0,0 +1,5 @@
+get_filename_component(BLADERF_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" PATH)
+
+if(NOT TARGET BladeRF::bladerf)
+ include("${BLADERF_CMAKE_DIR}/VolkTargets.cmake")
+endif()
--- /dev/null
+++ b/host/libraries/libbladeRF/cmake/BladeRFConfigVersion.cmake.in
@@ -0,0 +1,15 @@
+set(MAJOR_VERSION @VERSION_INFO_MAJOR@)
+set(MINOR_VERSION @VERSION_INFO_MINOR@)
+set(MAINT_VERSION @VERSION_INFO_PATCH@)
+
+set(PACKAGE_VERSION
+ ${MAJOR_VERSION}.${MINOR_VERSION}.${MAINT_VERSION})
+
+if(${PACKAGE_FIND_VERSION_MAJOR} EQUAL ${MAJOR_VERSION})
+ if(${PACKAGE_FIND_VERSION_MINOR} EQUAL ${MINOR_VERSION})
+ if(NOT ${PACKAGE_FIND_VERSION_PATCH} GREATER ${MAINT_VERSION})
+ set(PACKAGE_VERSION_EXACT 1) # exact match for API version
+ set(PACKAGE_VERSION_COMPATIBLE 1) # compat for minor/patch version
+ endif(NOT ${PACKAGE_FIND_VERSION_PATCH} GREATER ${MINOR_VERSION})
+ endif(${PACKAGE_FIND_VERSION_MINOR} EQUAL ${MINOR_VERSION})
+endif(${PACKAGE_FIND_VERSION_MAJOR} EQUAL ${MAJOR_VERSION})

11
debian/patches/series vendored
View File

@ -0,0 +1,11 @@
# 0001-debian-add-2019.07-release.patch
0002-docker-add-recent-distribution.patch
0003-bladeRF2-update-RX-parameters.patch
0004-Revert-fpga_common-make-the-bladeRF2-default-gain-mo.patch
spelling
debian-kfreebsd
try-hurd-build
update-bladerf-udev-rules
# modern-cmake-targets
163425d48a3b7d8c100d7295220d3648c050d0dd
5cf9fd299a396a5ae5b4402215713fd2a84e607b

194
debian/patches/spelling vendored Normal file
View File

@ -0,0 +1,194 @@
From: A. Maitland Bottoms <bottoms@debian.org>
Date: Tue, 26 Apr 2016 19:24:11 -0400
Subject: spelling
---
comparitor -> comparator
paramter -> parameter
suppored -> supported
tranfers -> transfers
paremeter -> parameter
evironment -> environment
--- a/host/libraries/libbladeRF/src/backend/usb/libusb.c
+++ b/host/libraries/libbladeRF/src/backend/usb/libusb.c
@@ -854,7 +854,7 @@
*device_speed = BLADERF_DEVICE_SPEED_UNKNOWN;
if (speed == LIBUSB_SPEED_FULL) {
- log_debug("Full speed connection is not suppored.\n");
+ log_debug("Full speed connection is not supported.\n");
status = BLADERF_ERR_UNSUPPORTED;
} else if (speed == LIBUSB_SPEED_LOW) {
log_debug("Low speed connection is not supported.\n");
@@ -1251,7 +1251,7 @@
malloc(num_transfers * sizeof(struct libusb_transfer *));
if (stream_data->transfers == NULL) {
- log_error("Failed to allocate libusb tranfers\n");
+ log_error("Failed to allocate libusb transfers\n");
status = BLADERF_ERR_MEM;
goto error;
}
--- a/host/utilities/bladeRF-cli/src/cmd/doc/interactive-help.md
+++ b/host/utilities/bladeRF-cli/src/cmd/doc/interactive-help.md
@@ -355,10 +355,10 @@
- `<pa|lna|aux> [on|off]`
Enable or disable the power amplifier (PA), low-noise amplifier (lna) or
- auxillary LNA (aux). The current state if the specified device is printed
+ auxiliary LNA (aux). The current state if the specified device is printed
if [on|off] is not specified.
- Note: The auxillary path on the XB-300 is not populated with components by
+ Note: The auxiliary path on the XB-300 is not populated with components by
default; the `aux` control will have no effect upon the RX signal.
This option is available for users to modify their board with custom
hardware.
@@ -784,7 +784,7 @@
6. Re-configure the master and slaves to clear fire requests and re-arm.
- Steps 1 through 5 may be repeated as neccessary.
+ Steps 1 through 5 may be repeated as necessary.
7. Disable triggering on all slaves
--- a/host/utilities/bladeRF-cli/src/cmd/doc/cmd_help.man.in
+++ b/host/utilities/bladeRF-cli/src/cmd/doc/cmd_help.man.in
@@ -478,11 +478,11 @@
.RS 2
.PP
Enable or disable the power amplifier (PA), low\-noise amplifier (lna)
-or auxillary LNA (aux).
+or auxiliary LNA (aux).
The current state if the specified device is printed if [on|off] is not
specified.
.PP
-Note: The auxillary path on the XB\-300 is not populated with components
+Note: The auxiliary path on the XB\-300 is not populated with components
by default; the \f[C]aux\f[] control will have no effect upon the RX
signal.
This option is available for users to modify their board with custom
@@ -1190,7 +1190,7 @@
.IP
.nf
\f[C]
-Steps\ 1\ through\ 5\ may\ be\ repeated\ as\ neccessary.
+Steps\ 1\ through\ 5\ may\ be\ repeated\ as\ necessary.
\f[]
.fi
.RE
--- a/host/utilities/bladeRF-cli/src/cmd/doc/cmd_help.h.in
+++ b/host/utilities/bladeRF-cli/src/cmd/doc/cmd_help.h.in
@@ -754,7 +754,7 @@
"6. Re-configure the master and slaves to clear fire requests and\n" \
" re-arm.\n" \
"\n" \
- " Steps 1 through 5 may be repeated as neccessary.\n" \
+ " Steps 1 through 5 may be repeated as necessary.\n" \
"\n" \
"7. Disable triggering on all slaves\n" \
"\n" \
--- a/host/utilities/bladeRF-cli/src/input/input.h
+++ b/host/utilities/bladeRF-cli/src/input/input.h
@@ -52,7 +52,7 @@
char * input_expand_path(const char *path);
/**
- * Notify input support that we caught CTRL-C. This is neccessary if
+ * Notify input support that we caught CTRL-C. This is necessary if
* the underlying support doesn't catch signals, such as the simple fgets-based
* implementation.
*/
--- a/host/common/include/dc_calibration.h
+++ b/host/common/include/dc_calibration.h
@@ -107,7 +107,7 @@
*
* This requires use of both RX and TX modules in an internal loopback mode;
* neither should be in use when this function is called. It should not
- * be neccessary to disconnect the RX and TX ports, but it is still recommended,
+ * be necessary to disconnect the RX and TX ports, but it is still recommended,
* just to err on the side of caution.
*
* @pre dc_calibration_lms6() should have been called for all modules prior to
--- a/host/libraries/libbladeRF_bindings/matlab/CHANGELOG
+++ b/host/libraries/libbladeRF_bindings/matlab/CHANGELOG
@@ -58,7 +58,7 @@
Changes:
* libbladeRF-proto.m now searches the current working directory and
- MATLABPATH for the neccessary THUNK library file.
+ MATLABPATH for the necessary THUNK library file.
v0.1.0 (2015-12-31)
--- a/fpga_common/src/lms.c
+++ b/fpga_common/src/lms.c
@@ -2907,7 +2907,7 @@
return status;
}
- /* Power DC comparitors down, per FAQ 5.26 (rev 1.0r10) */
+ /* Power DC comparators down, per FAQ 5.26 (rev 1.0r10) */
status = lms_set(dev, 0x6e, (3 << 6));
if (status != 0) {
return status;
--- a/host/utilities/bladeRF-cli/src/cmd/lms_reg_info.c
+++ b/host/utilities/bladeRF-cli/src/cmd/lms_reg_info.c
@@ -621,8 +621,8 @@
break;
case 0x6e:
- PRINT_BITS("PD[7] DC cal comparitor for VGA2B", 7, 7, value);
- PRINT_BITS("PD[6] DC cal comparitor for VGA2A", 6, 6, value);
+ PRINT_BITS("PD[7] DC cal comparator for VGA2B", 7, 7, value);
+ PRINT_BITS("PD[6] DC cal comparator for VGA2A", 6, 6, value);
PRINT_BITS("SPARE0[5:0]", 5, 0, value);
break;
--- a/thirdparty/analogdevicesinc/no-OS/drivers/ad9371/mykonos.c
+++ b/thirdparty/analogdevicesinc/no-OS/drivers/ad9371/mykonos.c
@@ -5008,7 +5008,7 @@
* Rx gainMode structure member is updated with the new value
*
* \retval MYKONOS_ERR_OK Function completed successfully
- * \retval MYKONOS_ERR_INV_RX_GAIN_MODE_PARM Invalid AGC mode pass in function mode paramter
+ * \retval MYKONOS_ERR_INV_RX_GAIN_MODE_PARM Invalid AGC mode pass in function mode parameter
*/
mykonosErr_t MYKONOS_setRxGainControlMode(mykonosDevice_t *device, mykonosGainMode_t mode)
{
@@ -7269,9 +7269,9 @@
case MYKONOS_ERR_RXFRAMER_INV_FK_PARAM:
return "Invalid FK parameter detected in MYKONOS_setupJesd204bFramer()\n";
case MYKONOS_ERR_OBSRXFRAMER_INV_FK_PARAM:
- return "Invalid FK paramter detected in MYKONOS_setupJesd204bObsRxFramer()\n";
+ return "Invalid FK parameter detected in MYKONOS_setupJesd204bObsRxFramer()\n";
case MYKONOS_ERR_INV_OBSRXFRAMER_PCLKDIV_PARM:
- return "Invalid PCLKDIV paramter detected in MYKONOS_setupSerializers()\n";
+ return "Invalid PCLKDIV parameter detected in MYKONOS_setupSerializers()\n";
case MYKONOS_ERR_PU_OBSRXPATH_INV_LOSOURCE_PARAM:
return "Invalid LO Source for OBSRX data path \n";
case MYKONOS_ERR_ARM_RADIOON_FAILED:
--- a/host/utilities/bladeRF-cli/src/cmd/rxtx.c
+++ b/host/utilities/bladeRF-cli/src/cmd/rxtx.c
@@ -555,7 +555,7 @@
status = CLI_RET_INVPARAM;
} else if (tmp % RXTX_SAMPLES_MIN != 0) {
cli_err(s, argv0,
- "The '%s' paramter must be a multiple of %u.\n", param,
+ "The '%s' parameter must be a multiple of %u.\n", param,
RXTX_SAMPLES_MIN);
status = CLI_RET_INVPARAM;
} else {
--- a/host/libraries/libbladeRF/src/board/bladerf1/bladerf1.c
+++ b/host/libraries/libbladeRF/src/board/bladerf1/bladerf1.c
@@ -2994,7 +2994,7 @@
*/
if (!getenv(env_override) && !is_valid_fw_size(length)) {
log_info("Detected potentially invalid firmware file.\n");
- log_info("Define BLADERF_SKIP_FW_SIZE_CHECK in your evironment "
+ log_info("Define BLADERF_SKIP_FW_SIZE_CHECK in your environment "
"to skip this check.\n");
return BLADERF_ERR_INVAL;
}

27
debian/patches/try-hurd-build vendored Normal file
View File

@ -0,0 +1,27 @@
From: A. Maitland Bottoms <bottoms@debian.org>
Subject: try hurd build
Debian builds on GNU hurd-i386.
--- a/host/CMakeLists.txt
+++ b/host/CMakeLists.txt
@@ -179,6 +179,8 @@
)
add_definitions(-D_CRT_SECURE_NO_WARNINGS)
+elseif(${CMAKE_SYSTEM_NAME} MATCHES "GNU")
+ message(WARNING "Unsupported host operating system: ${CMAKE_SYSTEM_NAME}")
else()
message(FATAL_ERROR "Unsupported host operating system: ${CMAKE_SYSTEM_NAME}")
endif()
--- a/host/cmake/modules/FindLibUSB.cmake
+++ b/host/cmake/modules/FindLibUSB.cmake
@@ -60,7 +60,7 @@
find_package(PkgConfig)
if(PKG_CONFIG_FOUND)
- pkg_check_modules(PKGCONFIG_LIBUSB libusb-1.0 QUIET)
+ pkg_check_modules(PKGCONFIG_LIBUSB QUIET libusb-1.0 libusb)
endif(PKG_CONFIG_FOUND)
if(PKGCONFIG_LIBUSB_FOUND AND NOT LIBUSB_FOUND)

View File

@ -0,0 +1,28 @@
Author: "A. Maitland Bottoms" <bottoms@debian.org>
Description: update bladerf udev rules
use TAG+="uaccess"
--- a/host/misc/udev/88-nuand-bladerf1.rules.in
+++ b/host/misc/udev/88-nuand-bladerf1.rules.in
@@ -1,5 +1,5 @@
# Nuand bladeRF
-ATTR{idVendor}=="2cf0", ATTR{idProduct}=="5246", MODE="660", GROUP="@BLADERF_GROUP@"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2cf0", ATTR{idProduct}=="5246", ENV{ID_SOFTWARE_RADIO}="1", TAG+="uaccess"
# Nuand bladeRF, legacy VID/PID
-ATTR{idVendor}=="1d50", ATTR{idProduct}=="6066", MODE="660", GROUP="@BLADERF_GROUP@"
+SUBSYSTEM=="usb", ATTR{idVendor}=="1d50", ATTR{idProduct}=="6066", ENV{ID_SOFTWARE_RADIO}="1", TAG+="uaccess"
\ No newline at end of file
--- a/host/misc/udev/88-nuand-bladerf2.rules.in
+++ b/host/misc/udev/88-nuand-bladerf2.rules.in
@@ -1,2 +1,2 @@
# Nuand bladeRF 2.0 micro
-ATTR{idVendor}=="2cf0", ATTR{idProduct}=="5250", MODE="660", GROUP="@BLADERF_GROUP@"
+SUBSYSTEM=="usb", ATTR{idVendor}=="2cf0", ATTR{idProduct}=="5250", ENV{ID_SOFTWARE_RADIO}="1", TAG+="uaccess"
--- a/host/misc/udev/88-nuand-bootloader.rules.in
+++ b/host/misc/udev/88-nuand-bootloader.rules.in
@@ -1,2 +1,2 @@
# Cypress FX3 Bootloader, used by bladeRF in recovery mode
-ATTR{idVendor}=="04b4", ATTR{idProduct}=="00f3", MODE="660", GROUP="@BLADERF_GROUP@"
+SUBSYSTEM=="usb", ATTR{idVendor}=="04b4", ATTR{idProduct}=="00f3", ENV{ID_SOFTWARE_RADIO}="1", TAG+="uaccess"

2
debian/python3-bladerf.docs vendored Normal file
View File

@ -0,0 +1,2 @@
host/libraries/libbladeRF_bindings/python/README.md
host/libraries/libbladeRF_bindings/python/CHANGELOG

4
debian/python3-bladerf.install vendored Normal file
View File

@ -0,0 +1,4 @@
usr/lib/python3*/site-packages/* usr/lib/python3/dist-packages/
host/libraries/libbladeRF_bindings/python/bladerf usr/lib/python3/dist-packages/
host/misc/python/* usr/share/doc/python-bladerf/
usr/bin/bladerf-tool

1
debian/python3-bladerf.manpages vendored Normal file
View File

@ -0,0 +1 @@
debian/bladerf-tool.1

43
debian/rules vendored
View File

@ -1,31 +1,33 @@
#!/usr/bin/make -f
# -*- makefile -*-
# vim:noet
include /usr/share/dpkg/pkg-info.mk
# Uncomment this to turn on verbose mode.
export DH_VERBOSE=1
#export DH_VERBOSE=1
py3default = $(subst .,,$(shell py3versions -dv))
# Test to see if we're a snapshot build by looking for the word
# "SNAPSHOT" in our version. If so, infer our current version and inject
# it into the build process.
DEB_VERSION_STRING ?= $(shell dpkg-parsechangelog | grep ^Version: | cut -d' ' -f2-)
DEB_HOST_MULTIARCH ?= $(shell dpkg-architecture -qDEB_HOST_MULTIARCH)
ifneq (,$(findstring SNAPSHOT,$(DEB_VERSION_STRING)))
ifneq (,$(findstring SNAPSHOT,$(DEB_VERSION)))
# Format is like: 0.9.0+1SNAPSHOT20131027041813-gitedc468d~saucy
DVS_SPLIT := $(subst ~, ,$(subst -git, ,$(DEB_VERSION_STRING)))
DVS_SPLIT := $(subst ~, ,$(subst -git, ,$(DEB_VERSION)))
# Format is like: 0.9.0+1SNAPSHOT20131027041813 edc468d saucy
DEB_VERSION_GITHASH := $(word 2,$(DVS_SPLIT))
DEB_VERSION_SERIES := $(word 3,$(DVS_SPLIT))
# Produce a version suffix like: git-edc468d-ppasaucy
VERSION_INFO_OVERRIDE := git-$(DEB_VERSION_GITHASH)-ppa$(DEB_VERSION_SERIES)
else
VERSION_INFO_OVERRIDE := $(DEB_VERSION)
endif
# For tagged PPA release builds, we have a slightly different format...
ifneq (,$(findstring 1ppa,$(DEB_VERSION_STRING)))
ifneq (,$(findstring 1ppa,$(DEB_VERSION)))
# Format is like: 2014.09-rc1-1ppa1~saucy
DVS_SPLIT := $(subst ~, ,$(subst -1ppa, ,$(DEB_VERSION_STRING)))
DVS_SPLIT := $(subst ~, ,$(subst -1ppa, ,$(DEB_VERSION)))
# Format is like: 2014.09-rc1 1 saucy
DEB_VERSION_TAG := $(word 1,$(DVS_SPLIT))
DEB_VERSION_BUILD := $(word 2,$(DVS_SPLIT))
@ -34,14 +36,37 @@ ifneq (,$(findstring 1ppa,$(DEB_VERSION_STRING)))
VERSION_INFO_OVERRIDE := $(DEB_VERSION_TAG)-$(DEB_VERSION_BUILD)-ppa$(DEB_VERSION_SERIES)
endif
override_dh_acc:
- dh_acc $@
- cat logs/libbladerf-dev/*/log.txt
override_dh_auto_configure:
dh_auto_configure -- -DVERSION_INFO_OVERRIDE:STRING=$(VERSION_INFO_OVERRIDE) \
-DCMAKE_INSTALL_LIBDIR="lib/${DEB_HOST_MULTIARCH}" \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_DOCDIR="share/doc/libbladerf-doc" \
-DENABLE_HOST_BUILD=ON \
-DENABLE_LIBTECLA=ON \
-DENABLE_LIBEDIT=ON \
-DENABLE_FX3_BUILD=OFF \
-DBUILD_DOCUMENTATION=ON \
-DUDEV_RULES_PATH=/lib/udev/rules.d
override_dh_auto_build:
dh_auto_build
python3 host/libraries/libbladeRF_bindings/python/setup.py build
override_dh_auto_install:
dh_auto_install
# Use locally installed Mathjax.js
(cd debian/tmp/usr/share/doc/libbladerf-doc/html && ln -s /usr/share/javascript/mathjax/MathJax.js MathJax.js)
(cd debian/tmp/usr/share/doc/libbladerf-doc/html && sed --in-place 's_http://cdn.mathjax.org/mathjax/latest/MathJax.js_MathJax.js_' *.html)
# library soversion named udev rules
#mv debian/tmp/lib/udev/rules.d/88-nuand.rules debian/tmp/lib/udev/rules.d/88-libbladerf2.rules
# Python3 bindings
python3 host/libraries/libbladeRF_bindings/python/setup.py install --root=debian/tmp/ --prefix=/usr
# per lintian
rm -f host/examples/bladeRF-cli/sync_trx/.gitignore
rm -f host/examples/python/txrx/.gitignore
%:
dh $@
dh $@ --with python3

1
debian/source/include-binaries vendored Normal file
View File

@ -0,0 +1 @@
debian/libbladerf-dev.abi.tar.gz.amd64

4
debian/watch vendored
View File

@ -1,3 +1,3 @@
version=3
opts=filenamemangle=s/.+\/v?(\d\S*)\.tar\.gz/bladeRF-$1.tar.gz/ \
https://github.com/Nuand/bladeRF/tags .*/v?(\d\S*)\.tar\.gz
opts="filenamemangle=s/.+\/v?(\d\S*)\.tar\.gz/bladeRF-$1.tar.gz/,uversionmangle=s/(\d)[_\.\-\+]?((RC|rc|pre|dev|beta|alpha)\d*)$/0.$1~$2/" \
https://github.com/Nuand/bladeRF/tags .*/v?(\d\S*)\.(?:tgz|tbz|txz|(?:tar\.(?:gz|bz2|xz)))