Skip to content

BeagleLogic release: Kernel Module and PRU Firmware

Latest
Compare
Choose a tag to compare
@abhishek-kakkar abhishek-kakkar released this 05 Jul 02:01
· 140 commits to master since this release

BeagleLogic Kernel driver v1.1 and PRU Firmware v0.2

This release freezes the kernel ABI until code is structured and refactored to be sent into the mainline, which would be v2.0.

BeagleBone kernels released "bone60" onwards should include the v1.1 kernel driver for BeagleLogic which can be loaded using modprobe beaglelogic


Kernel Driver

v1.1:

  • Implement nonblocking I/O using poll() required for sigrok bindings to function
  • mmap() was present since 1.0 but has been tested and validated in this release
  • extend lseek() to update read cursor. This is required for mmap() and poll() to work correctly
  • lower sample rate limit is now 1 Hz. However the minimum buffer size is 4 MB (2x2 MB) [and it's also the minimum amount of samples that have to collected before they can be read out], so advisable to choose a sample rate accordingly.

v1.0:

  • First release to BeagleBoard.org kernel [bone57+]
  • Separated from pru_rproc
  • DTS for overlaying and enabling BeagleLogic support

PRU Firmware

v0.2:

  • Switch to CLPRU v2.0.0 & remoteproc from PASM & UIO
  • Unified support for all samplerates (100 / n MHz) and 8/16-bit sampling
  • Test pattern generation (n=0)

If you are not on the latest kernel

Download Device Tree Overlay Blob, and the PRU Firmware and install them into /lib/firmware of your BeagleBone [Black] below.

The patchset 0001, 0002 and 0003 has to be applied to your BeagleBoard 3.8.13 kernel tree and the kernel rebuilt. You will have to build and install the beaglelogic module from the sources as well.

[UPDATE] For kernel releases bone60 and above, you only need to download 'beaglelogic-pru0' and 'beaglelogic-pru1' here as the kernel patches and the device tree are already installed.