linradio toolkit - Information for developers

linradio toolkit - Information for developers

The driver in linradio-toolkit can be compiled either as a user-mode library or as a loadable linux kernel module. Both versions can be used transparently through liblinradio.so and wrapi.h.


User-mode driver:

  • Portable and easy to install (does not depend on kernel version)
  • Requires root privileges for ISA cards
  • Requires explicit save/restore of receiver state
  • Detecting and initializing the receiver takes several seconds
  • Low-level code in liblinradio.so (header: wrapi.h)


Loadable module:

  • Persistent driver state
  • No initialization delay
  • Applications don't need root privileges
  • Mutual exclusion
  • Low-level code in linradio.o (kernel module)
  • ioctl-based access through /dev/winradio*
  • liblibradio.so transparently maps C function calls to ioctls
  • Same API as the user-mode driver (wrapi.h)