/
Cargo.toml
92 lines (86 loc) · 2.64 KB
/
Cargo.toml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
[package]
authors = ["Jonathan 'theJPster' Pallant <github@thejpster.org.uk>"]
edition = "2018"
resolver = "2"
readme = "README.md"
license = "GPL-3.0-or-later"
name = "neotron-pico-bios"
version = "0.7.0"
[dependencies]
# Useful Cortex-M specific functions (e.g. SysTick)
cortex-m = "0.7"
# The Raspberry Pi Pico BSP
rp-pico = { version = "0.8", default-features = false, features = [
"rt",
"critical-section-impl",
"rom-func-cache"
] }
# The Raspberry Pi RP2040 HAL (so we can turn defmt on)
rp2040-hal = { version = "0.9", features = [ "defmt" ] }
# Cortex-M run-time (or start-up) code
cortex-m-rt = "0.7"
# The BIOS to OS API
neotron-common-bios = "0.12.0"
# For the RP2040 bootloader
rp2040-boot2 = "0.3.0"
# For hardware abstraction traits
embedded-hal = "0.2"
# Gives us formatted PC-side logging
defmt = "=0.3.2"
# Sends defmt logs to the SWD debugger
defmt-rtt = "0.4"
# Send panics to the debugger
panic-probe = "0.2"
# RP2040 PIO assembler
pio = "0.2.1"
# Macros for RP2040 PIO assembler
pio-proc = "0.2"
# Hardware locks for sharing data with interrupts
critical-section = "1.0"
# Commands for talking to a Neotron BMC. The tag is for the repo as a whole, of which the commands crate is a small part.
neotron-bmc-commands = { version = "0.2.0" }
# Protocol for talking to a Neotron BMC. The tag is for the repo as a whole, of which the protocol crate is a small part.
neotron-bmc-protocol = { version = "0.1.0", features = ["defmt"] }
# Time and frequency related functions
fugit = "0.3"
# PS/2 scancode decoding
pc-keyboard = "0.7.0"
# Useful queues and other structures
heapless = "0.7"
# The Dallas DS1307 RTC driver
ds1307 = "0.5.0"
# The Microchip MCP7940x RTC driver
mcp794xx = "0.3.0"
# I2C Bus Sharing
shared-bus = "0.3"
# Gets us compare-swap atomic operations
atomic-polyfill = "1.0.2"
# SD Card driver
embedded-sdmmc = { version = "0.6", default-features = false, features = [
"defmt-log"
] }
# CODEC register control
tlv320aic23 = "0.1.0"
[build-dependencies]
neotron-common-bios = "0.12.0"
vte = "0.11"
[[bin]]
name = "neotron-pico-bios"
test = false
bench = false
[profile.release]
# better optimizations
codegen-units = 1
# symbols are nice and they don't increase the size on Flash
debug = true
# better optimizations
lto = true
# Set the optimisation level to optimise for space. This also happens to be a
# good choice for performance on the RP2040, where code executes from external
# SPI Flash and has to be buffered in a small on-chip cache memory.
opt-level = "s"
[features]
check-stack = []
[patch.crates-io]
# Patched to include the WriteIterRead trait on i2c
shared-bus = { git = "https://github.com/thejpster/shared-bus", rev = "639a2e6" }