1723853180
* Improve by changing from legacy extraConfig to the structuredExtraConfig style kerenl configuration. * Remove few unneeded kernel modules from default configuration. * Make kernelPatches, structuredExtraConfig and extraMeta overrideable. * Change callPackage-style function to actually take the individual attributes from pkgs. * Get rid of recursive syntax. Signed-off-by: Mika Tammi <mika.tammi@unikie.com>
66 lines
1.6 KiB
Nix
66 lines
1.6 KiB
Nix
{ lib, buildLinux, fetchFromGitHub
|
|
, kernelPatches ? []
|
|
, structuredExtraConfig ? {}
|
|
, extraMeta ? {}
|
|
, argsOverride ? {}
|
|
, ... } @ args:
|
|
|
|
let
|
|
version = "6.1.43-linux4microchip+fpga-2023.09";
|
|
in buildLinux (args // {
|
|
inherit version kernelPatches extraMeta;
|
|
|
|
# modDirVersion needs to be x.y.z, will automatically add .0 if needed
|
|
modDirVersion = version;
|
|
|
|
defconfig = "mpfs_defconfig";
|
|
|
|
autoModules = false;
|
|
|
|
structuredExtraConfig = with lib.kernel; {
|
|
OF_OVERLAY = yes;
|
|
OF_CONFIGFS = yes;
|
|
MFD_SENSEHAT_CORE = module;
|
|
INPUT_JOYDEV = module;
|
|
INPUT_JOYSTICK = yes;
|
|
JOYSTICK_SENSEHAT = module;
|
|
AUXDISPLAY = yes;
|
|
SENSEHAT_DISPLAY = module;
|
|
HTS221 = module;
|
|
IIO_ST_PRESS = module;
|
|
IIO_ST_LSM6DSX = module;
|
|
IIO_ST_MAGN_3AXIS = module;
|
|
POLARFIRE_SOC_DMA_NONCOHERENT = yes;
|
|
MTD_SPI_NOR_USE_4K_SECTORS = no;
|
|
MTD_UBI = yes;
|
|
MTD_CMDLINE_PARTS = yes;
|
|
UBIFS_FS = yes;
|
|
USB_UAS = module;
|
|
EFI_STUB = yes;
|
|
EFI = yes;
|
|
USBIP_CORE = module;
|
|
USBIP_VHCI_HCD = module;
|
|
USBIP_HOST = module;
|
|
USBIP_VUDC = module;
|
|
CRYPTO_TLS = module;
|
|
MD = yes;
|
|
BLK_DEV_MD = module;
|
|
MD_LINEAR = module;
|
|
MD_RAID0 = module;
|
|
MD_RAID1 = module;
|
|
MD_RAID10 = module;
|
|
MD_RAID456 = module;
|
|
|
|
# This device doesn't have any kind of display output at all
|
|
FRAMEBUFFER_CONSOLE_DEFERRED_TAKEOVER = lib.mkForce no;
|
|
FB_EFI = lib.mkForce no;
|
|
} // structuredExtraConfig;
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "linux4microchip";
|
|
repo = "linux";
|
|
rev = "25e35c7c54ad853d03c14a02b189b408cb5b5eb3";
|
|
sha256 = "sha256-wj7lz247MkhxmhSHUcNeWmcZK+DL+5PAnLwTmALD97M=";
|
|
};
|
|
} // argsOverride)
|