mirror of
				https://github.com/NixOS/nixos-hardware.git
				synced 2025-11-04 17:27:14 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			79 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			79 lines
		
	
	
		
			1.7 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
{
 | 
						|
  lib,
 | 
						|
  ...
 | 
						|
}:
 | 
						|
 | 
						|
{
 | 
						|
  boot.loader = {
 | 
						|
    grub.enable = lib.mkDefault false;
 | 
						|
    # Enables the generation of /boot/extlinux/extlinux.conf.
 | 
						|
    generic-extlinux-compatible = {
 | 
						|
      enable = lib.mkDefault true;
 | 
						|
      useGenerationDeviceTree = true;
 | 
						|
    };
 | 
						|
  };
 | 
						|
 | 
						|
  # This file needs to be at the top of /boot
 | 
						|
  hardware.deviceTree.name = lib.mkDefault "../../rk3568-nanopi-r5s.dtb";
 | 
						|
 | 
						|
  boot.kernelParams = [
 | 
						|
    "console=tty1"
 | 
						|
    "console=ttyS2,1500000"
 | 
						|
    "earlycon=uart8250,mmio32,0xfe660000"
 | 
						|
  ];
 | 
						|
  boot.kernelPatches = [
 | 
						|
    {
 | 
						|
      name = "rockchip-config.patch";
 | 
						|
      patch = null;
 | 
						|
      extraConfig = ''
 | 
						|
        PCIE_ROCKCHIP_EP y
 | 
						|
        PCIE_ROCKCHIP_DW_HOST y
 | 
						|
        ROCKCHIP_VOP2 y
 | 
						|
      '';
 | 
						|
    }
 | 
						|
    {
 | 
						|
      name = "status-leds.patch";
 | 
						|
      patch = null;
 | 
						|
      extraConfig = ''
 | 
						|
        LED_TRIGGER_PHY y
 | 
						|
        USB_LED_TRIG y
 | 
						|
        LEDS_BRIGHTNESS_HW_CHANGED y
 | 
						|
        LEDS_TRIGGER_MTD y
 | 
						|
      '';
 | 
						|
    }
 | 
						|
  ];
 | 
						|
 | 
						|
  boot.initrd.availableKernelModules = [
 | 
						|
    ## Rockchip
 | 
						|
    ## Storage
 | 
						|
    "sdhci_of_dwcmshc"
 | 
						|
    "dw_mmc_rockchip"
 | 
						|
 | 
						|
    "analogix_dp"
 | 
						|
    "io-domain"
 | 
						|
    "rockchip_saradc"
 | 
						|
    "rockchip_thermal"
 | 
						|
    "rockchipdrm"
 | 
						|
    "rockchip-rga"
 | 
						|
    "pcie_rockchip_host"
 | 
						|
    "phy-rockchip-pcie"
 | 
						|
    "phy_rockchip_snps_pcie3"
 | 
						|
    "phy_rockchip_naneng_combphy"
 | 
						|
    "phy_rockchip_inno_usb2"
 | 
						|
    "dwmac_rk"
 | 
						|
    "dw_wdt"
 | 
						|
    "dw_hdmi"
 | 
						|
    "dw_hdmi_cec"
 | 
						|
    "dw_hdmi_i2s_audio"
 | 
						|
    "dw_mipi_dsi"
 | 
						|
  ];
 | 
						|
 | 
						|
  # Most Rockchip CPUs (especially with hybrid cores) work best with "schedutil"
 | 
						|
  powerManagement.cpuFreqGovernor = "schedutil";
 | 
						|
 | 
						|
  # Let's blacklist the Rockchips RTC module so that the
 | 
						|
  # battery-powered HYM8563 (rtc_hym8563 kernel module) will be used
 | 
						|
  # by default
 | 
						|
  boot.blacklistedKernelModules = [ "rtc_rk808" ];
 | 
						|
}
 |