aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* lib: revert implementing RGB233 modeSteve Markgraf2020-06-022-35/+7
| | | | | | | | | | | | | | | We will soon have support for a palette mode, which can replicate the RGB233 mode if required, or any custom arrangement of bits per color. Furthermore, the RGB233 mode did not work correctly in this state, as we did not implement swapping of the 32 bit words. This reverts the following commits: 58de0a5bccb6648ee3372643517ea51b3ab5b523 3f44f8fc224c6b0b45a824109619f993e0b87552 b82303f44fc8388817306235a673e0bfa671dd3f
* lib: fix hang on exitSteve Markgraf2020-05-261-0/+3
| | | | | As the sample worker thread might still be waiting for a buffer, we need to wake it up first before trying to join.
* lib: reuse hint message when zero-copy buffer alloc failsSteve Markgraf2020-05-261-8/+9
|
* lib: fixed rgb332 macrosSergey Alirzaev2020-05-231-1/+1
|
* lib: added utility macros for rgb332 modeSergey Alirzaev2020-05-191-0/+7
|
* lib: implement enabling RGB332 modeSergey Alirzaev2020-05-192-7/+28
| | | | | | | I've decided to provide a separate pointer for a raw buffer in case the library user comes up with a non-RGB332 use case that avoids byte rearrangement (and copying should be replaced with pulling from the user's pointer in this case)
* lib: fall back to iface 1 in case iface 0 altsetting 1 failsSteve Markgraf2020-01-261-2/+7
| | | | | | | Some people on the mailing list reported that with older kernels setting interface 0 altsetting 1 does not work, fall back to the old behavior in this case for now, while still investigating the root cause of this problem.
* lib: use interface 0 altsetting 1 instead of interface 1Steve Markgraf2020-01-191-3/+3
| | | | | | | | | This makes osmo-fl2k work again with Linux 5.5.0-rc6 or later, as the FL2000 shares the endpoints for interface 0 and 1, which is forbidden by the USB spec and the Kernel will not ignore this anymore. See: https://marc.info/?l=linux-usb&m=157944230213296&w=2
* set CMake policy CMP0075 if it existsSteve Markgraf2020-01-191-0/+5
| | | | Otherwise newer versions of CMake are throwing a warning.
* fix compiler warningsSteve Markgraf2020-01-192-5/+5
| | | | | | | | | warning: absolute value function ‘fabsf’ given an argument of type ‘double’ but has parameter of type ‘float’ which may cause truncation of value warning: ‘__builtin_strncpy’ specified bound 64 equals destination size
* fl2k_tcp: don't free buffer while lib still uses itSteve Markgraf2019-08-261-1/+1
| | | | | This sometimes caused a segfault when terminating fl2k_tcp.
* improve exit handling on device removalSteve Markgraf2019-08-265-11/+35
|
* lib: wait for sample worker thread before freeing buffersSteve Markgraf2019-08-251-0/+2
| | | | | | | This fixes a segfault when exiting, as sometimes it occured that the USB worker thread completed before the sample worker thread, and the buffers the latter was still accessing had already been freed.
* fl2k_file: check read return value before repeatingSteve Markgraf2019-08-251-1/+1
| | | | | In case of a FIFO that has been closed or a 0 byte file this will otherwise lead to an endless loop.
* fl2k_fm: make inline functions staticSteve Markgraf2019-08-251-7/+7
| | | | | Otherwise the linker will complain when building with -DCMAKE_BUILD_TYPE=Debug
* contrib/jenkins.sh: osmo-fl2k build verificationOliver Smith2019-08-011-0/+18
| | | | | | Related: OS#3203 Signed-off-by: Oliver Smith <osmith@sysmocom.de> Signed-off-by: Steve Markgraf <steve@steve-m.de>
* lib: Add workaround for Linux usbfs mmap() bugSteve Markgraf2018-10-071-2/+17
| | | | | | | | | | | | The Linux Kernel has a bug on ARM/ARM64 systems where the USB CMA memory is incorrectly mapped to userspace, breaking zerocopy. When the Kernel allocates the memory, it clears it with memset(). If the mapping worked correctly, we should have zeroed out buffers, if it doesn't, we get random Kernel memory. We now check for this, and fall back to buffers in userspace if that's the case. Signed-off-by: Steve Markgraf <steve@steve-m.de>
* lib: add I2C supportSteve Markgraf2018-06-172-0/+136
| | | | | | | Note that the FL2000 only supports I2C transfers with a fixed length of 4 bytes. Signed-off-by: Steve Markgraf <steve@steve-m.de>
* fix sleep durations on WindowsSteve Markgraf2018-06-174-39/+24
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* debian: build-dep on dh-autoreconf for Ubuntu 16.04/Debian8Harald Welte2018-06-031-1/+1
| | | | | | | | | | according to https://wiki.debian.org/Autoreconf: ... dh-autoreconf is enabled by default since debhelper compatibility level 10 (and the debhelper package Depends on dh-autoreconf since version 9.20160402). For lower compatibility levels: * Build-Depend on dh-autoreconf ...
* debian: Attempt to down-grade the debhelper version requirementHarald Welte2018-06-032-2/+2
| | | | ... so we can build on anything except unstable + ubuntu 18.04
* Add Debian packaging informationHarald Welte2018-06-0310-0/+187
| | | | | | This allows (among others) to build rtl-sdr nightly packages for a variety of distributions as part of the network:osmocom:nightly builds.
* enable multiarch build by means of GNUInstallDirsThorsten Alteholz2018-06-032-3/+7
| | | | This patch is taken from the osmo-fl2k debian package.
* libusb-1.0.22 deprecated libusb_set_debug() with libusb_set_option()Harald Welte2018-06-031-0/+4
| | | | | | | | | | | This avoids the following compiler warnings when using more recent versions of libusb: src/libosmo-fl2k.c:384:2: warning: ‘libusb_set_debug’ is deprecated: Use libusb_set_option instead [-Wdeprecated-declarations] libusb_set_debug(dev->ctx, 3); ^~~~~~~~~~~~~~~~ Details can be found at https://github.com/libusb/libusb/commit/539f22e2fd916558d11ab9a66f10f461c5593168
* fl2k_file: support reading from stdinSteve Markgraf2018-05-231-4/+11
| | | | | | Thanks to Ted Yapo for reporting. Signed-off-by: Steve Markgraf <steve@steve-m.de>
* lib: update output on zero-copy allocationSteve Markgraf2018-05-011-2/+3
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* lib: free zero-copy buffers in case of errorSteve Markgraf2018-05-011-4/+17
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* set version to 0.1gitSteve Markgraf2018-04-281-1/+1
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* update version to 0.1.1v0.1.1Steve Markgraf2018-04-281-1/+1
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* fl2k_fm: add missing help text for stereo and rdsSteve Markgraf2018-04-271-0/+2
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* fl2k_test: fix build on Mac OSSteve Markgraf2018-04-271-2/+2
| | | | | | Thanks to mot for reporting. Signed-off-by: Steve Markgraf <steve@steve-m.de>
* CMake: Make UDEV_RULES_PATH configurableMartin Hauke2018-04-241-1/+6
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* Fix build with MinGWMartin Hauke2018-04-243-3/+16
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* lib: libusb_dev_mem_free() is not present in old versionsSteve Markgraf2018-04-231-0/+2
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* fl2k_fm: add SPDX identifierSteve Markgraf2018-04-231-0/+2
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* add missing cmake modulesSteve Markgraf2018-04-193-0/+361
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* fl2k_fm: add stereo and RDS supportSteve Markgraf2018-04-185-11/+629
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* add fl2k_fmSteve Markgraf2018-04-172-1/+495
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* fl2k_file: only output on red DAC for nowSteve Markgraf2018-04-171-2/+0
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* fix ifdef in export headerSteve Markgraf2018-04-171-1/+1
| | | | Signed-off-by: Steve Markgraf <steve@steve-m.de>
* initial commitSteve Markgraf2018-04-1721-0/+5800
Signed-off-by: Steve Markgraf <steve@steve-m.de>