78 lines
1.7 KiB
Nix
78 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" ];
|
|
}
|