mirror of
https://github.com/rcore-os/rCore.git
synced 2024-11-23 08:26:17 +04:00
047f4ffdcc
Read and parse dtb upon boot Implement virtio net device detection Negotiate feature bits for virtio-net Read MAC address from virtio-net device and detect virtqueues Receiving from virtio net device is working for the first time Implement driver interface and interrupt handling routines Rearrange drivers into upper directory Implement initial support for processing arp request and reply packet Refactor MAC address and IPv4 address into structs, and implement ICMP echo reply Fix typos Implement initial support for virtio gpu driver Complete first working version of virtio gpu driver with mandelbrot example Use smoltcp and implement a udp and tcp server on top of it Cleanup virtio net code
87 lines
2.7 KiB
TOML
87 lines
2.7 KiB
TOML
[package]
|
|
name = "rcore"
|
|
version = "0.1.0"
|
|
edition = "2018"
|
|
authors = [
|
|
"WangRunji <wangrunji0408@163.com>",
|
|
"Ben Pig Chu <benpichu@gmail.com>",
|
|
"dzy <daizy15@mails.tsinghua.edu.cn>",
|
|
"equation314 <equation618@gmail.com>",
|
|
"cfgbd <cfgbdv@163.com>",
|
|
"koumingyang <1761674434@qq.com>",
|
|
"lcy1996 <992195697@qq.com>",
|
|
"chenqiuhao <haohao0924@126.com>",
|
|
"maoyuchaxue <wangjt15@mails.tsinghua.edu.cn>"
|
|
]
|
|
|
|
[features]
|
|
# Disable paging (for riscv)
|
|
no_mmu = []
|
|
# Kernel in M-mode (for riscv)
|
|
m_mode = ["no_mmu"]
|
|
# (for aarch64 RaspberryPi3)
|
|
nographic = []
|
|
board_raspi3 = ["bcm2837"]
|
|
# (for riscv64)
|
|
board_k210 = ["m_mode"]
|
|
raspi3_use_generic_timer = ["bcm2837/use_generic_timer"]
|
|
|
|
[profile.dev]
|
|
# MUST >= 1 : Enable RVO to avoid stack overflow
|
|
opt-level = 1
|
|
|
|
[profile.release]
|
|
debug = true
|
|
|
|
[dependencies]
|
|
log = "0.4"
|
|
spin = "0.4"
|
|
once = "0.3"
|
|
xmas-elf = "0.6"
|
|
bitflags = "1.0"
|
|
bit_field = "0.9"
|
|
volatile = "0.2"
|
|
linked_list_allocator = "0.6"
|
|
device_tree = { git = "https://github.com/jiegec/device_tree-rs" }
|
|
lazy_static = { version = "1.2", features = ["spin_no_std"] }
|
|
smoltcp = { version = "0.5.0", default-features = false, features = ["alloc", "log", "proto-ipv4", "proto-igmp", "socket-icmp", "socket-udp", "socket-tcp"] }
|
|
bit-allocator = { path = "../crate/bit-allocator" }
|
|
rcore-memory = { path = "../crate/memory" }
|
|
rcore-process = { path = "../crate/process" }
|
|
simple-filesystem = { git = "https://github.com/wangrunji0408/SimpleFileSystem-Rust" }
|
|
|
|
[target.'cfg(target_arch = "x86_64")'.dependencies]
|
|
bootloader = { git = "https://github.com/wangrunji0408/bootloader" }
|
|
apic = { git = "https://github.com/wangrunji0408/APIC-Rust" }
|
|
x86_64 = "0.3"
|
|
raw-cpuid = "6.0"
|
|
uart_16550 = "0.1"
|
|
pc-keyboard = "0.3"
|
|
|
|
[target.'cfg(any(target_arch = "riscv32", target_arch = "riscv64"))'.dependencies]
|
|
riscv = { git = "https://github.com/riscv-and-rust-and-decaf/riscv" }
|
|
bbl = { path = "../crate/bbl" }
|
|
|
|
[target.'cfg(target_arch = "aarch64")'.dependencies]
|
|
aarch64 = { git = "https://github.com/equation314/aarch64" }
|
|
atags = { path = "../crate/atags" }
|
|
bcm2837 = { path = "../crate/bcm2837", optional = true }
|
|
|
|
[package.metadata.bootimage]
|
|
default-target = "targets/x86_64.json"
|
|
output = "target/x86_64/bootimage.bin"
|
|
minimum-image-size = 0 # The minimum output file size (in MiB)
|
|
# The command invoked on `bootimage run`
|
|
# (the "{}" will be replaced with the path to the bootable disk image)
|
|
run-command = ["qemu-system-x86_64",
|
|
"-drive", "format=raw,file={}",
|
|
# TODO: use SFSIMG environment variable
|
|
"-drive", "format=raw,file=../user/img/ucore-i386-pic.img,media=disk,cache=writeback",
|
|
"-serial", "mon:stdio",
|
|
"-device", "isa-debug-exit",
|
|
"-smp", "4"
|
|
]
|
|
|
|
[build-dependencies]
|
|
cc = "1.0"
|