Update 'Linux kernel modules'

Triss 2021-07-30 17:57:30 +00:00
parent 83d3c3c71c
commit 478f1187c2
1 changed files with 8 additions and 0 deletions

@ -1,5 +1,13 @@
### Available modules ### Available modules
Currently, 5 modules exist:
* `dmj`: This module is responsible for binding to the [USB vendor interface](USB-config-%26-command-protocol), handling the low-level command transfer protocol, exposing this functionality to the other modules, and auto-loading the other modules when their functionality is available on the device. Not to be used directly.
* `dmj-char` implements a character device driver (`/dev/dmj-*`), exposing the USB vendor interface (in use by the kernel) to userspace. Mainly for use with [`dmctl`](dmctl), not to be used directly.
* `spi-dmj` exposes a SPI controller to the kernel. If the `spidev` module has been loaded (load it using `modprobe`), a `/dev/spidevA.B` device should be available to access the device's SPI bus.
* `i2c-dmj` exposes an I2C controller to the kernel. If the `i2c-dev` module has been loaded (load it using `modprobe`), a `/dev/i2c-BUSNUM` device should be available to access the device's I2C bus.
* `dmj-hwmon` implements the temperature sensor functionality as a Linux hardware monitoring device. Its readout should be available in the output of the `sensors` command, from the `lm_sensors` package.
### Compiling and loading the modules ### Compiling and loading the modules
The source code of the modules can be found in the `host/modules/` folder in the source tree. A `Makefile` is made available to compile these for the Linux kernel you are currently running. Linux 5.4 and up have been tested to work. The source code of the modules can be found in the `host/modules/` folder in the source tree. A `Makefile` is made available to compile these for the Linux kernel you are currently running. Linux 5.4 and up have been tested to work.