2009-12-19 13:12:24 +01:00
|
|
|
{ system, pkgs}:
|
|
|
|
with pkgs;
|
|
|
|
{
|
|
|
|
pc = assert system == "i686-linux" || system == "x86_64-linux"; {
|
|
|
|
name = "pc";
|
|
|
|
uboot = null;
|
|
|
|
kernelBaseConfig = "defconfig";
|
2010-02-16 20:27:51 +01:00
|
|
|
# Build whatever possible as a module, if not stated in the extra config.
|
|
|
|
kernelAutoModules = true;
|
2010-02-18 12:34:48 +01:00
|
|
|
kernelTarget = "bzImage";
|
2010-02-19 15:25:15 +01:00
|
|
|
# This next line makes uboot happy, more than being ever used in the kernel build.
|
|
|
|
kernelArch = if (system == "i686-linux") then "x86" else "x86_64";
|
2009-12-19 13:12:24 +01:00
|
|
|
kernelExtraConfig =
|
|
|
|
''
|
|
|
|
# Virtualisation (KVM, Xen...).
|
|
|
|
PARAVIRT_GUEST y
|
|
|
|
KVM_CLOCK y
|
|
|
|
KVM_GUEST y
|
|
|
|
XEN y
|
|
|
|
KSM y
|
|
|
|
|
|
|
|
# We need 64 GB (PAE) support for Xen guest support.
|
|
|
|
HIGHMEM64G? y
|
|
|
|
'';
|
|
|
|
};
|
|
|
|
|
2010-02-17 23:20:56 +01:00
|
|
|
sheevaplug = {
|
2009-12-19 13:12:24 +01:00
|
|
|
name = "sheevaplug";
|
2009-12-28 11:35:34 +01:00
|
|
|
kernelBaseConfig = "kirkwood_defconfig";
|
|
|
|
kernelArch = "arm";
|
2010-02-16 20:27:51 +01:00
|
|
|
kernelAutoModules = false;
|
2009-12-28 11:35:34 +01:00
|
|
|
kernelExtraConfig =
|
|
|
|
''
|
2009-12-28 18:47:01 +01:00
|
|
|
BLK_DEV_RAM y
|
|
|
|
BLK_DEV_INITRD y
|
2009-12-28 23:29:17 +01:00
|
|
|
MD y
|
2009-12-28 18:47:01 +01:00
|
|
|
|
2009-12-28 11:35:34 +01:00
|
|
|
# Fail to build
|
|
|
|
DRM n
|
|
|
|
SCSI_ADVANSYS n
|
|
|
|
USB_ISP1362_HCD n
|
|
|
|
SND_SOC n
|
|
|
|
SND_ALI5451 n
|
|
|
|
FB_SAVAGE n
|
|
|
|
SCSI_NSP32 n
|
|
|
|
ATA_SFF n
|
|
|
|
SUNGEM n
|
|
|
|
IRDA n
|
|
|
|
ATM_HE n
|
|
|
|
SCSI_ACARD n
|
|
|
|
BLK_DEV_CMD640_ENHANCED n
|
|
|
|
'';
|
2010-02-17 23:20:56 +01:00
|
|
|
kernelTarget = "uImage";
|
2010-02-17 22:09:27 +01:00
|
|
|
uboot = ubootSheevaplug;
|
|
|
|
# Only for uboot = uboot :
|
|
|
|
ubootConfig = "sheevaplug_config";
|
2009-12-19 13:12:24 +01:00
|
|
|
};
|
|
|
|
|
2010-02-17 23:20:56 +01:00
|
|
|
versatileARM = {
|
2009-12-19 13:12:24 +01:00
|
|
|
name = "versatileARM";
|
2009-12-28 11:35:34 +01:00
|
|
|
kernelBaseConfig = "versatile_defconfig";
|
|
|
|
kernelArch = "arm";
|
2010-02-16 20:27:51 +01:00
|
|
|
kernelAutoModules = false;
|
2010-02-17 23:20:56 +01:00
|
|
|
kernelTarget = "zImage";
|
2009-12-19 13:12:24 +01:00
|
|
|
uboot = null;
|
|
|
|
};
|
2010-02-17 22:09:27 +01:00
|
|
|
|
|
|
|
integratorCP = {
|
2010-02-18 22:10:49 +01:00
|
|
|
name = "integratorCP";
|
|
|
|
kernelBaseConfig = "integrator_defconfig";
|
|
|
|
kernelArch = "arm";
|
|
|
|
kernelAutoModules = false;
|
|
|
|
kernelTarget = "zImage";
|
|
|
|
kernelExtraConfig =
|
|
|
|
''
|
|
|
|
# needed for qemu integrator/cp
|
|
|
|
SERIAL_AMBA_PL011 y
|
|
|
|
SERIAL_AMBA_PL011_CONSOLE y
|
|
|
|
SERIAL_AMBA_PL010 n
|
|
|
|
SERIAL_AMBA_PL010_CONSOLE n
|
|
|
|
'';
|
|
|
|
uboot = null;
|
|
|
|
ubootConfig = "integratorcp_config";
|
|
|
|
};
|
|
|
|
|
|
|
|
integratorCPuboot = {
|
2010-02-17 22:09:27 +01:00
|
|
|
name = "integratorCP";
|
|
|
|
kernelBaseConfig = "integrator_defconfig";
|
|
|
|
kernelArch = "arm";
|
|
|
|
kernelAutoModules = false;
|
2010-02-17 23:20:56 +01:00
|
|
|
kernelTarget = "uImage";
|
2010-02-18 22:10:49 +01:00
|
|
|
kernelExtraConfig =
|
|
|
|
''
|
|
|
|
# needed for qemu integrator/cp
|
|
|
|
SERIAL_AMBA_PL011 y
|
|
|
|
SERIAL_AMBA_PL011_CONSOLE y
|
|
|
|
SERIAL_AMBA_PL010 n
|
|
|
|
SERIAL_AMBA_PL010_CONSOLE n
|
|
|
|
'';
|
2010-02-17 23:20:56 +01:00
|
|
|
uboot = uboot;
|
2010-02-17 22:09:27 +01:00
|
|
|
ubootConfig = "integratorcp_config";
|
|
|
|
};
|
2009-12-19 13:12:24 +01:00
|
|
|
}
|