2023-07-18 18:03:45 +03:00
|
|
|
[package]
|
|
|
|
name = "yggdrasil-kernel"
|
|
|
|
version = "0.1.0"
|
|
|
|
edition = "2021"
|
2023-08-05 16:32:12 +03:00
|
|
|
build = "build.rs"
|
2023-12-11 03:04:49 +02:00
|
|
|
authors = ["Mark Poliakov <mark@alnyan.me>"]
|
2023-07-18 18:03:45 +03:00
|
|
|
|
|
|
|
[dependencies]
|
2024-11-01 20:37:30 +02:00
|
|
|
abi-lib.workspace = true
|
2025-01-09 19:35:58 +02:00
|
|
|
abi-serde.workspace = true
|
2024-11-01 20:37:30 +02:00
|
|
|
yggdrasil-abi.workspace = true
|
|
|
|
kernel-arch-interface.workspace = true
|
|
|
|
libk.workspace = true
|
|
|
|
libk-util.workspace = true
|
|
|
|
libk-mm.workspace = true
|
|
|
|
elf.workspace = true
|
2024-12-02 10:19:48 +02:00
|
|
|
chrono.workspace = true
|
2024-03-12 13:46:24 +02:00
|
|
|
|
2024-11-01 20:37:30 +02:00
|
|
|
device-api = { workspace = true, features = ["derive"] }
|
|
|
|
device-api-macros.workspace = true
|
2023-07-18 18:03:45 +03:00
|
|
|
|
2024-11-01 20:37:30 +02:00
|
|
|
memtables.workspace = true
|
|
|
|
vmalloc.workspace = true
|
|
|
|
kernel-arch.workspace = true
|
2024-02-05 13:44:21 +02:00
|
|
|
|
2023-12-10 21:25:54 +02:00
|
|
|
# Drivers
|
2024-02-03 20:44:04 +02:00
|
|
|
ygg_driver_pci = { path = "driver/bus/pci" }
|
2024-02-26 23:04:51 +02:00
|
|
|
ygg_driver_usb = { path = "driver/bus/usb" }
|
2024-01-20 19:40:27 +02:00
|
|
|
ygg_driver_net_core = { path = "driver/net/core" }
|
2024-01-26 18:53:07 +02:00
|
|
|
ygg_driver_net_loopback = { path = "driver/net/loopback" }
|
2024-02-03 20:44:04 +02:00
|
|
|
ygg_driver_virtio_net = { path = "driver/virtio/net", features = ["pci"] }
|
2024-12-06 18:03:18 +02:00
|
|
|
ygg_driver_virtio_gpu = { path = "driver/virtio/gpu", features = ["pci"] }
|
2025-02-05 21:45:48 +02:00
|
|
|
ygg_driver_nvme = { path = "driver/block/nvme" }
|
2024-02-04 13:15:18 +02:00
|
|
|
ygg_driver_ahci = { path = "driver/block/ahci" }
|
2024-02-26 23:04:51 +02:00
|
|
|
ygg_driver_input = { path = "driver/input" }
|
2025-02-05 21:45:48 +02:00
|
|
|
ygg_driver_usb_xhci.path = "driver/usb/xhci"
|
|
|
|
ygg_driver_net_rtl81xx.path = "driver/net/rtl81xx"
|
2024-02-04 13:15:18 +02:00
|
|
|
|
2023-12-11 03:04:49 +02:00
|
|
|
memfs = { path = "driver/fs/memfs" }
|
2024-07-30 17:46:50 +03:00
|
|
|
ext2 = { path = "driver/fs/ext2" }
|
2025-02-07 23:18:03 +02:00
|
|
|
ygg_driver_fat32.path = "driver/fs/fat32"
|
2023-12-10 21:25:54 +02:00
|
|
|
|
2024-11-01 20:37:30 +02:00
|
|
|
log.workspace = true
|
|
|
|
bitflags.workspace = true
|
|
|
|
tock-registers.workspace = true
|
|
|
|
static_assertions.workspace = true
|
|
|
|
bytemuck.workspace = true
|
|
|
|
futures-util.workspace = true
|
|
|
|
crossbeam-queue.workspace = true
|
|
|
|
async-trait.workspace = true
|
2025-02-03 14:48:23 +02:00
|
|
|
cfg-if.workspace = true
|
2024-11-01 20:37:30 +02:00
|
|
|
|
2024-07-28 12:53:30 +03:00
|
|
|
git-version = "0.3.9"
|
2023-07-28 14:26:39 +03:00
|
|
|
|
2023-07-29 19:31:56 +03:00
|
|
|
[target.'cfg(target_arch = "aarch64")'.dependencies]
|
2024-11-01 20:37:30 +02:00
|
|
|
aarch64-cpu.workspace = true
|
|
|
|
device-tree.workspace = true
|
|
|
|
kernel-arch-aarch64.workspace = true
|
2023-07-29 19:31:56 +03:00
|
|
|
|
2025-01-17 02:25:49 +02:00
|
|
|
[target.'cfg(target_arch = "riscv64")'.dependencies]
|
2025-01-19 15:16:26 +02:00
|
|
|
device-tree.workspace = true
|
2025-01-17 02:25:49 +02:00
|
|
|
kernel-arch-riscv64.workspace = true
|
|
|
|
|
2023-07-28 14:26:39 +03:00
|
|
|
[target.'cfg(target_arch = "x86_64")'.dependencies]
|
2024-11-01 20:37:30 +02:00
|
|
|
yboot-proto.workspace = true
|
|
|
|
kernel-arch-x86_64.workspace = true
|
|
|
|
kernel-arch-x86.workspace = true
|
|
|
|
|
2025-02-05 12:35:38 +02:00
|
|
|
ygg_driver_acpi.path = "driver/acpi"
|
2024-11-01 20:37:30 +02:00
|
|
|
|
|
|
|
acpi.workspace = true
|
2023-08-08 20:00:24 +03:00
|
|
|
|
2024-10-10 18:06:54 +03:00
|
|
|
[target.'cfg(target_arch = "x86")'.dependencies]
|
2024-11-01 20:37:30 +02:00
|
|
|
kernel-arch-i686.workspace = true
|
|
|
|
kernel-arch-x86.workspace = true
|
2024-10-10 18:06:54 +03:00
|
|
|
|
2024-03-12 13:46:24 +02:00
|
|
|
[build-dependencies]
|
2024-11-01 20:37:30 +02:00
|
|
|
abi-generator.workspace = true
|
|
|
|
|
2024-03-12 13:46:24 +02:00
|
|
|
prettyplease = "0.2.15"
|
|
|
|
|
2024-04-25 16:02:00 +03:00
|
|
|
# To make rust-analyzer recognize those
|
|
|
|
[dev-dependencies]
|
2024-11-01 20:37:30 +02:00
|
|
|
aarch64-cpu.workspace = true
|
|
|
|
device-tree.workspace = true
|
|
|
|
kernel-arch-x86_64.workspace = true
|
|
|
|
kernel-arch-i686.workspace = true
|
|
|
|
kernel-arch-x86.workspace = true
|
|
|
|
kernel-arch-aarch64.workspace = true
|
2025-01-17 02:25:49 +02:00
|
|
|
kernel-arch-riscv64.workspace = true
|
2024-04-25 16:02:00 +03:00
|
|
|
|
2025-01-27 18:10:56 +02:00
|
|
|
ygg_driver_acpi.path = "driver/acpi"
|
|
|
|
|
2023-08-08 20:00:24 +03:00
|
|
|
[features]
|
2023-09-13 18:21:45 +03:00
|
|
|
default = ["fb_console"]
|
2023-09-06 18:48:00 +03:00
|
|
|
fb_console = []
|
2024-07-25 11:58:47 +03:00
|
|
|
|
2024-12-13 23:35:17 +02:00
|
|
|
# TODO replace this with a better configuration mechanism
|
|
|
|
aarch64_board_virt = ["kernel-arch-aarch64/aarch64_board_virt"]
|
|
|
|
aarch64_board_raspi4b = ["kernel-arch-aarch64/aarch64_board_raspi4b"]
|
|
|
|
|
2025-01-21 16:34:03 +02:00
|
|
|
riscv64_board_virt = ["kernel-arch-riscv64/riscv64_board_virt"]
|
|
|
|
riscv64_board_jh7110 = ["kernel-arch-riscv64/riscv64_board_jh7110"]
|
|
|
|
|
2024-11-19 19:33:08 +02:00
|
|
|
[lints]
|
|
|
|
workspace = true
|