Fix little-rascal touchpad support and update AMD GPU config

- Add ITE8353 touchpad support with I2C HID modules
- Configure libinput for proper touchpad functionality
- Add udev rules for touchpad device permissions
- Simplify AMD GPU config to use open source drivers only
- Remove ROCm and 32-bit support for cleaner configuration
- Add diagnostic script for touchpad troubleshooting
This commit is contained in:
Geir Okkenhaug Jerstad 2025-06-30 18:41:06 +02:00
parent 5c9c5bbbc4
commit e4cbaff3e0
4 changed files with 170 additions and 8 deletions

View file

@ -21,6 +21,7 @@
../../modules/desktop/niri.nix
../../modules/desktop/cosmic.nix
../../modules/desktop/fonts.nix
../../modules/desktop/input.nix
# Development
../../modules/development/tools.nix

View file

@ -20,11 +20,22 @@
"usb_storage"
"sd_mod"
"sdhci_pci"
# I2C modules for touchpad support
"i2c_hid"
"i2c_hid_acpi"
"i2c_piix4"
];
kernelModules = [];
};
kernelModules = ["kvm-amd"]; # AMD Ryzen system
kernelModules = [
"kvm-amd" # AMD Ryzen system
# HID and input modules for touchpad
"hid_generic"
"hid_multitouch"
"i2c_hid"
"i2c_hid_acpi"
];
extraModulePackages = [];
};
@ -58,20 +69,18 @@
enableRedistributableFirmware = true;
# Graphics configuration - AMD Radeon Vega (integrated)
# Using open source driver without ROCm and 32-bit support
graphics = {
enable = true;
enable32Bit = true;
enable32Bit = false; # Disabled 32-bit support
# AMD integrated graphics drivers
# AMD open source graphics drivers only
extraPackages = with pkgs; [
amdvlk # AMD Vulkan driver
rocmPackages.clr.icd # OpenCL support
# Removed ROCm packages for simpler configuration
];
# 32-bit support for compatibility
extraPackages32 = with pkgs.driversi686Linux; [
amdvlk
];
# No 32-bit support packages needed
};
# Bluetooth support for Intel AX200
@ -81,6 +90,15 @@
};
};
# Additional services for touchpad support
services.udev.extraRules = ''
# ITE8353 touchpad support
SUBSYSTEM=="i2c", KERNEL=="i2c-ITE8353:00", MODE="0664", GROUP="input"
SUBSYSTEM=="input", ATTRS{name}=="ITE8353:00*", MODE="0664", GROUP="input"
# Additional HID rules for touchpads
KERNEL=="hidraw*", ATTRS{idVendor}=="048d", ATTRS{idProduct}=="8353", MODE="0664", GROUP="input"
'';
# Power management for AMD Ryzen 7 4700U
powerManagement = {
enable = true;
@ -106,6 +124,10 @@
boot.kernelParams = [
# Enable AMD graphics performance
"amdgpu.ppfeaturemask=0xffffffff"
# I2C HID touchpad parameters
"i2c_hid.debug=1"
# Ensure ACPI devices are properly detected
"acpi_enforce_resources=lax"
];
# TLP for better power management (alternative to power-profiles-daemon)