Hi *,
I have issues enabling spi on a raspberry pi 4 by applying the corresponding device tree overlay. The current approach seems to have no effect as there is no /dev/spidev0.0
device after applying the configuration.
boot = {
kernelPackages = lib.mkForce pkgs.linuxPackages_latest;
loader = {
raspberryPi.version = 4;
generic-extlinux-compatible.enable = lib.mkDefault true;
grub.enable = lib.mkDefault false;
};
};
hardware.raspberry-pi."4".apply-overlays-dtmerge.enable = true;
hardware.deviceTree = {
enable = true;
filter = "*rpi*.dtb";
overlays = [
{ name = "spi0-0cs.dtbo"; dtboFile = "${pkgs.device-tree_rpi.overlays}/spi0-0cs.dtbo"; }
{ name = "ssd1306-spi.dtbo"; dtboFile = "${pkgs.device-tree_rpi.overlays}/ssd1306-spi.dtbo"; }
];
};
users.groups.spi = {};
services.udev = {
extraRules = ''
KERNEL=="gpiochip0*", GROUP="wheel", MODE="0660"
SUBSYSTEM=="spidev", KERNEL=="spidev0.0", GROUP="spi", MODE="0660"
'';
};
The image is build with sd-image-aarch64-new-kernel-no-zfs-installer.nix
from current nixos-unstable
.
Am I doing something wrong or is this a bug?
Many thanks