Add ARM64 VirtIO profile
This commit is contained in:
parent
d1e1a5af7b
commit
072ec3e54c
12
arm64.nix
Normal file
12
arm64.nix
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
{ lib, ... }: with lib.kernel; {
|
||||||
|
ARM64_VA_BITS_48 = yes;
|
||||||
|
ARM64_PAN = yes;
|
||||||
|
ARM64_USE_LSE_ATOMICS = yes;
|
||||||
|
ARM64_CNP = yes;
|
||||||
|
ARM64_PTR_AUTH = yes;
|
||||||
|
ARM64_EPAN = yes;
|
||||||
|
|
||||||
|
ACPI_CPPC_CPUFREQ = yes;
|
||||||
|
|
||||||
|
ARM_SMMU_V3 = yes;
|
||||||
|
}
|
6
arm64/qemu-virtio.nix
Normal file
6
arm64/qemu-virtio.nix
Normal file
|
@ -0,0 +1,6 @@
|
||||||
|
{ lib, ... }@args: with lib.kernel;
|
||||||
|
|
||||||
|
import ../qemu-virtio.nix args // {
|
||||||
|
SERIAL_AMBA_PL011 = yes;
|
||||||
|
SERIAL_AMBA_PL011_CONSOLE = yes;
|
||||||
|
}
|
5
base.nix
5
base.nix
|
@ -186,6 +186,7 @@
|
||||||
|
|
||||||
PCI = yes;
|
PCI = yes;
|
||||||
PCI_MSI = yes;
|
PCI_MSI = yes;
|
||||||
|
PCI_HOST_GENERIC = yes;
|
||||||
PCIE_BUS_PERFORMANCE = option yes;
|
PCIE_BUS_PERFORMANCE = option yes;
|
||||||
|
|
||||||
DEVTMPFS = yes;
|
DEVTMPFS = yes;
|
||||||
|
@ -226,6 +227,9 @@
|
||||||
VT_CONSOLE = yes;
|
VT_CONSOLE = yes;
|
||||||
UNIX98_PTYS = yes;
|
UNIX98_PTYS = yes;
|
||||||
|
|
||||||
|
SERIAL_DEV_BUS = yes;
|
||||||
|
SERIAL_DEV_CTRL_TTYPORT = yes;
|
||||||
|
|
||||||
TCG_TPM = yes;
|
TCG_TPM = yes;
|
||||||
TCG_TPM2_HMAC = yes;
|
TCG_TPM2_HMAC = yes;
|
||||||
TCG_TIS = yes;
|
TCG_TIS = yes;
|
||||||
|
@ -343,3 +347,4 @@
|
||||||
} // lib.optionalAttrs hostPlatform.is64bit {
|
} // lib.optionalAttrs hostPlatform.is64bit {
|
||||||
"64BIT" = option yes;
|
"64BIT" = option yes;
|
||||||
} // lib.optionalAttrs hostPlatform.isx86 (import ./x86.nix args)
|
} // lib.optionalAttrs hostPlatform.isx86 (import ./x86.nix args)
|
||||||
|
// lib.optionalAttrs hostPlatform.isAarch64 (import ./arm64.nix args)
|
||||||
|
|
|
@ -21,7 +21,11 @@
|
||||||
CRYPTO_AES_RISCV64 = yes;
|
CRYPTO_AES_RISCV64 = yes;
|
||||||
CRYPTO_SHA256_RISCV64 = yes;
|
CRYPTO_SHA256_RISCV64 = yes;
|
||||||
} // lib.optionalAttrs hostPlatform.isAarch64 {
|
} // lib.optionalAttrs hostPlatform.isAarch64 {
|
||||||
|
CRYPTO_AES_ARM64 = yes;
|
||||||
CRYPTO_AES_ARM64_CE = yes;
|
CRYPTO_AES_ARM64_CE = yes;
|
||||||
CRYPTO_AES_ARM64_CE_BLK = yes;
|
CRYPTO_AES_ARM64_CE_BLK = yes;
|
||||||
|
CRYPTO_AES_ARM64_NEON_BLK = yes;
|
||||||
|
CRYPTO_AES_ARM64_BS = yes;
|
||||||
CRYPTO_AEGIS128_SIMD = yes;
|
CRYPTO_AEGIS128_SIMD = yes;
|
||||||
|
CRYPTO_SHA256_ARM64 = yes;
|
||||||
}
|
}
|
||||||
|
|
|
@ -33,4 +33,11 @@
|
||||||
firmware = [ ];
|
firmware = [ ];
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
aarch64-linux = {
|
||||||
|
qemu-virtio = {
|
||||||
|
arch = "armv8-a";
|
||||||
|
config = ./arm64/qemu-virtio.nix;
|
||||||
|
firmware = [ ];
|
||||||
|
};
|
||||||
|
};
|
||||||
}
|
}
|
||||||
|
|
54
qemu-virtio.nix
Normal file
54
qemu-virtio.nix
Normal file
|
@ -0,0 +1,54 @@
|
||||||
|
{ lib, ... }:
|
||||||
|
|
||||||
|
with lib.kernel; {
|
||||||
|
NR_CPUS = freeform "8";
|
||||||
|
|
||||||
|
HYPERVISOR_GUEST = yes;
|
||||||
|
PARAVIRT = yes;
|
||||||
|
PARAVIRT_SPINLOCKS = yes;
|
||||||
|
KVM_GUEST = yes;
|
||||||
|
ARCH_CPUIDLE_HALTPOLL = yes;
|
||||||
|
PARAVIRT_CLOCK = yes;
|
||||||
|
|
||||||
|
HALTPOLL_CPUIDLE = yes;
|
||||||
|
|
||||||
|
FW_CFG_SYSFS = yes;
|
||||||
|
|
||||||
|
BLK_MQ_VIRTIO = yes;
|
||||||
|
VIRTIO_BLK = yes;
|
||||||
|
VIRTIO_NET = yes;
|
||||||
|
VIRTIO_CONSOLE = yes;
|
||||||
|
|
||||||
|
HW_RANDOM = yes;
|
||||||
|
HW_RANDOM_VIRTIO = yes;
|
||||||
|
|
||||||
|
I6300ESB_WDT = yes;
|
||||||
|
|
||||||
|
DRM = yes;
|
||||||
|
DRM_FBDEV_EMULATION = yes;
|
||||||
|
DRM_VIRTIO_GPU = yes;
|
||||||
|
DRM_VIRTIO_GPU_KMS = yes;
|
||||||
|
DRM_BOCHS = yes;
|
||||||
|
DRM_SIMPLEDRM = yes;
|
||||||
|
|
||||||
|
VIRT_DRIVERS = yes;
|
||||||
|
VMGENID = yes;
|
||||||
|
|
||||||
|
VIRTIO = yes;
|
||||||
|
VIRTIO_PCI = yes;
|
||||||
|
VIRTIO_PCI_LEGACY = no;
|
||||||
|
VIRTIO_BALLOON = yes;
|
||||||
|
VIRTIO_INPUT = yes;
|
||||||
|
|
||||||
|
VIRTIO_IOMMU = yes;
|
||||||
|
|
||||||
|
EXT4_FS = yes;
|
||||||
|
EXT4_USE_FOR_EXT2 = yes;
|
||||||
|
EXT4_FS_POSIX_ACL = yes;
|
||||||
|
BTRFS_FS = yes;
|
||||||
|
BTRFS_FS_POSIX_ACL = yes;
|
||||||
|
VIRTIO_FS = yes;
|
||||||
|
|
||||||
|
CRYPTO_HW = yes;
|
||||||
|
CRYPTO_DEV_VIRTIO = yes;
|
||||||
|
}
|
|
@ -57,6 +57,8 @@
|
||||||
CRYPTO_AES_ARM64_CE = option yes;
|
CRYPTO_AES_ARM64_CE = option yes;
|
||||||
CRYPTO_AES_ARM64_CE_BLK = option yes;
|
CRYPTO_AES_ARM64_CE_BLK = option yes;
|
||||||
CRYPTO_SHA1_ARM64_CE = option yes;
|
CRYPTO_SHA1_ARM64_CE = option yes;
|
||||||
|
CRYPTO_SHA256_ARM64 = option yes;
|
||||||
CRYPTO_SHA2_ARM64_CE = option yes;
|
CRYPTO_SHA2_ARM64_CE = option yes;
|
||||||
|
CRYPTO_SHA512_ARM64 = option yes;
|
||||||
CRYPTO_SHA512_ARM64_CE = option yes;
|
CRYPTO_SHA512_ARM64_CE = option yes;
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,49 +1,3 @@
|
||||||
{ lib, ... }:
|
{ lib, ... }@args:
|
||||||
|
|
||||||
with lib.kernel; {
|
import ../qemu-virtio.nix args
|
||||||
NR_CPUS = freeform "8";
|
|
||||||
|
|
||||||
HYPERVISOR_GUEST = yes;
|
|
||||||
PARAVIRT = yes;
|
|
||||||
PARAVIRT_SPINLOCKS = yes;
|
|
||||||
KVM_GUEST = yes;
|
|
||||||
ARCH_CPUIDLE_HALTPOLL = yes;
|
|
||||||
PARAVIRT_CLOCK = yes;
|
|
||||||
|
|
||||||
HALTPOLL_CPUIDLE = yes;
|
|
||||||
|
|
||||||
FW_CFG_SYSFS = yes;
|
|
||||||
|
|
||||||
BLK_MQ_VIRTIO = yes;
|
|
||||||
VIRTIO_BLK = yes;
|
|
||||||
VIRTIO_NET = yes;
|
|
||||||
VIRTIO_CONSOLE = yes;
|
|
||||||
|
|
||||||
HW_RANDOM = yes;
|
|
||||||
HW_RANDOM_VIRTIO = yes;
|
|
||||||
|
|
||||||
I6300ESB_WDT = yes;
|
|
||||||
|
|
||||||
DRM = yes;
|
|
||||||
DRM_FBDEV_EMULATION = yes;
|
|
||||||
DRM_BOCHS = yes;
|
|
||||||
DRM_SIMPLEDRM = yes;
|
|
||||||
|
|
||||||
VIRT_DRIVERS = yes;
|
|
||||||
VMGENID = yes;
|
|
||||||
VIRTIO = yes;
|
|
||||||
VIRTIO_PCI = yes;
|
|
||||||
VIRTIO_BALLOON = yes;
|
|
||||||
|
|
||||||
VIRTIO_IOMMU = yes;
|
|
||||||
|
|
||||||
EXT4_FS = yes;
|
|
||||||
EXT4_USE_FOR_EXT2 = yes;
|
|
||||||
EXT4_FS_POSIX_ACL = yes;
|
|
||||||
BTRFS_FS = yes;
|
|
||||||
BTRFS_FS_POSIX_ACL = yes;
|
|
||||||
VIRTIO_FS = yes;
|
|
||||||
|
|
||||||
CRYPTO_HW = yes;
|
|
||||||
CRYPTO_DEV_VIRTIO = yes;
|
|
||||||
}
|
|
||||||
|
|
Reference in a new issue