Skip to content

Commit 1274755

Browse files
committed
Add a front-io-server to service the front-io board
1 parent 0056474 commit 1274755

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

49 files changed

+2110
-1045
lines changed

Cargo.lock

Lines changed: 58 additions & 34 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

app/medusa/base.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -263,7 +263,7 @@ memory-size = 33_554_432 # 256 Mib / 32 MiB
263263
slot-count = 16 # 2 MiB slots
264264

265265
[[auxflash.blobs]]
266-
file = "drv/sidecar-front-io/sidecar_qsfp_x32_controller_rev_b_c.bit"
266+
file = "drv/front-io-api/sidecar_qsfp_x32_controller_rev_b_c.bit"
267267
compress = true
268268
tag = "QSFP"
269269

app/medusa/src/main.rs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@ fn main() -> ! {
2121

2222
const CYCLES_PER_MS: u32 = 400_000;
2323

24-
#[cfg(feature = "traptrace")]
25-
kern::profiling::configure_events_table(tracing::table());
26-
2724
unsafe { kern::startup::start_kernel(CYCLES_PER_MS) }
2825
}
2926

app/sidecar/base.toml

Lines changed: 29 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -87,7 +87,7 @@ task-slots = ["sys"]
8787
[tasks.net]
8888
name = "task-net"
8989
stacksize = 10000
90-
priority = 5
90+
priority = 6
9191
features = ["mgmt", "h753", "sidecar", "vlan", "vpd-mac", "use-spi-core", "spi3"]
9292
max-sizes = {flash = 131072, ram = 131072, sram1_mac = 16384}
9393
sections = {eth_bulk = "sram1_mac"}
@@ -103,7 +103,7 @@ task-slots = ["sys", "packrat", { seq = "sequencer" }, "jefe"]
103103

104104
[tasks.control_plane_agent]
105105
name = "task-control-plane-agent"
106-
priority = 7
106+
priority = 8
107107
# This is a big number -- do we need to tune this?
108108
stacksize = 12000
109109
start = true
@@ -121,9 +121,9 @@ task-slots = [
121121
"sequencer",
122122
"sprot",
123123
"sys",
124-
"transceivers",
125124
"update_server",
126125
"validate",
126+
"front_io",
127127
"vpd",
128128
]
129129
features = ["sidecar", "vlan", "auxflash", "vpd"]
@@ -146,7 +146,7 @@ interrupts = {"spi4.irq" = "spi-irq"}
146146

147147
[tasks.udpecho]
148148
name = "task-udpecho"
149-
priority = 6
149+
priority = 7
150150
max-sizes = {flash = 16384, ram = 8192}
151151
stacksize = 4096
152152
start = true
@@ -156,7 +156,7 @@ notifications = ["socket"]
156156

157157
[tasks.udpbroadcast]
158158
name = "task-udpbroadcast"
159-
priority = 6
159+
priority = 7
160160
max-sizes = {flash = 16384, ram = 8192}
161161
stacksize = 4096
162162
start = true
@@ -171,7 +171,7 @@ max-sizes = {flash = 262144, ram = 16384}
171171
features = ["mgmt", "sidecar", "vlan", "use-spi-core", "h753", "spi2"]
172172
stacksize = 4096
173173
start = true
174-
task-slots = ["ecp5_front_io", "sys", { seq = "sequencer" }]
174+
task-slots = ["front_io", "sys", { seq = "sequencer" }]
175175
uses = ["spi2"]
176176
notifications = ["spi-irq", "wake-timer"]
177177
interrupts = {"spi2.irq" = "spi-irq"}
@@ -240,20 +240,32 @@ interrupts = {"spi1.irq" = "spi-irq"}
240240
[tasks.transceivers]
241241
name = "drv-transceivers-server"
242242
features = ["vlan", "thermal-control"]
243-
priority = 6
243+
priority = 7
244244
max-sizes = {flash = 65536, ram = 16384}
245245
stacksize = 4096
246246
start = true
247247
task-slots = [
248-
"i2c_driver",
249248
"net",
250249
"sensor",
251250
"sys",
252251
"thermal",
253-
{front_io = "ecp5_front_io"},
252+
"front_io",
254253
{seq = "sequencer"}]
255254
notifications = ["socket", "timer"]
256255

256+
[tasks.front_io]
257+
name = "drv-front-io-server"
258+
priority = 4
259+
max-sizes = {flash = 65536, ram = 16384}
260+
stacksize = 4096
261+
start = true
262+
task-slots = [
263+
"sys",
264+
"auxflash",
265+
"i2c_driver",
266+
{front_io = "ecp5_front_io"}]
267+
notifications = ["timer"]
268+
257269
[tasks.packrat]
258270
name = "task-packrat"
259271
priority = 3
@@ -264,22 +276,22 @@ task-slots = []
264276

265277
[tasks.sequencer]
266278
name = "drv-sidecar-seq-server"
267-
priority = 4
279+
priority = 5
268280
stacksize = 4096
269281
start = true
270282
task-slots = [
271283
"sys",
272284
"i2c_driver",
273285
"auxflash",
274286
"packrat",
275-
{mainboard = "ecp5_mainboard"},
276-
{front_io = "ecp5_front_io"}]
287+
"front_io",
288+
{mainboard = "ecp5_mainboard"}]
277289
notifications = ["timer"]
278290

279291
[tasks.thermal]
280292
name = "task-thermal"
281293
features = ["sidecar"]
282-
priority = 5
294+
priority = 6
283295
max-sizes = {flash = 32768, ram = 16384 }
284296
stacksize = 8096
285297
start = true
@@ -307,7 +319,7 @@ task-slots = ["i2c_driver"]
307319
[tasks.ignition]
308320
name = "drv-ignition-server"
309321
features = ["sequencer"]
310-
priority = 5
322+
priority = 6
311323
max-sizes = {flash = 16384, ram = 8192}
312324
stacksize = 2048
313325
start = true
@@ -324,7 +336,7 @@ stacksize = 800
324336

325337
[tasks.dump_agent]
326338
name = "task-dump-agent"
327-
priority = 6
339+
priority = 7
328340
max-sizes = {flash = 32768, ram = 16384 }
329341
start = true
330342
task-slots = ["sprot", "jefe", "net"]
@@ -335,7 +347,7 @@ features = ["net", "vlan"]
335347

336348
[tasks.idle]
337349
name = "task-idle"
338-
priority = 8
350+
priority = 10
339351
max-sizes = {flash = 128, ram = 256}
340352
stacksize = 256
341353
start = true
@@ -1168,7 +1180,7 @@ memory-size = 33_554_432 # 256 Mib / 32 MiB
11681180
slot-count = 16 # 2 MiB slots
11691181

11701182
[[auxflash.blobs]]
1171-
file = "drv/sidecar-front-io/sidecar_qsfp_x32_controller_rev_b_c.bit"
1183+
file = "drv/front-io-api/sidecar_qsfp_x32_controller_rev_b_c.bit"
11721184
compress = true
11731185
tag = "QSFP"
11741186

build/fpga-regmap/src/lib.rs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -202,7 +202,10 @@ fn write_reg_fields(
202202
writeln!(
203203
output,
204204
"
205-
{prefix} #[derive(Copy, Clone, Eq, PartialEq)]
205+
{prefix} use hubpack::SerializedSize;
206+
{prefix} use serde::{{Deserialize, Serialize}};
207+
{prefix} #[derive(Copy, Clone, Eq, PartialEq, Deserialize, Serialize, SerializedSize)]
208+
{prefix} #[repr(u8)]
206209
{prefix} #[allow(dead_code)]
207210
{prefix} pub enum {encode_name} {{"
208211
)

0 commit comments

Comments
 (0)