41 lines
No EOL
813 B
Markdown
41 lines
No EOL
813 B
Markdown
## Setup env
|
|
|
|
On NixOS:
|
|
|
|
- Ensure Linux Kernel is the same as you configuration.
|
|
Otherwise, change linux_dev variable with you kernel variant and change flake.lock nixpkgs with your version.
|
|
- Use direnv allow or nix develop to setup shell.
|
|
|
|
|
|
On other distros:
|
|
|
|
- You need to setup LINUX_MODULES_FOLDER to linux modules folder of your distro (ex: `/lib/modules/$(uname -r)/build`) in flake.nix
|
|
|
|
## make : targets list
|
|
|
|
- all : Compiling kernel
|
|
- clean : Cleaning build folder
|
|
|
|
All subfolder is configured to use LINUX_MODULES_FOLDER env variable set by flake develop
|
|
|
|
## How test module
|
|
|
|
Step 1: Load module
|
|
|
|
```bash
|
|
sudo insmod [module_name].ko
|
|
```
|
|
|
|
**Warning**: Can fail if secure boot is enabled
|
|
|
|
Step 2: Check logs
|
|
|
|
```bash
|
|
sudo dmesg | tail
|
|
```
|
|
|
|
Step 3: Unload module
|
|
|
|
```bash
|
|
sudo rmmod [module_name].ko
|
|
``` |