diff --git a/Cargo.lock b/Cargo.lock index b88b16c0e..d746b2f7c 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1625,6 +1625,8 @@ dependencies = [ "anyhow", "clap", "humility-core", + "humility-net-core", + "humility-probes-core", "indexmap 2.14.0", "parse_int", "regex", @@ -1640,8 +1642,6 @@ dependencies = [ "clap", "humility-cli", "humility-core", - "humility-net-core", - "humility-probes-core", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index 41030bdbd..be17a005f 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -113,8 +113,8 @@ humility = { path = "./humility-core", package = "humility-core" } humility-arch-arm = { path = "./humility-arch-arm" } humility-auxflash = { path = "./humility-auxflash" } humility-cortex = { path = "./humility-arch-cortex" } -humility-cmd = { path = "./humility-cmd", default-features = false } -humility-cli = { path = "./humility-cli" } +humility-cmd = { path = "./humility-cmd" } +humility-cli = { path = "./humility-cli", default-features = false } humility-dump-agent = { path = "./humility-dump-agent" } humility-doppel = { path = "./humility-doppel" } humility-hiffy = { path = "./humility-hiffy" } diff --git a/DEVELOPING.mkdn b/DEVELOPING.mkdn index 6d8f1bc9c..cdb27bbbc 100644 --- a/DEVELOPING.mkdn +++ b/DEVELOPING.mkdn @@ -38,8 +38,7 @@ So you've decided to add a subcommand to Humility. Here's what you need to do. 2. Review the settings in the `init` routine you cribbed from to make sure they reflect your subcommand. In particular, the name must appear a second time in - the `name:` field, and `kind` should reflect whether you need an attached - target and archive, or not. + the `name:` field. 3. Cite your new subcommand from the root `Cargo.toml`. This needs to happen in three places using two different names: in the `workspace.members` element diff --git a/cmd/auxflash/src/lib.rs b/cmd/auxflash/src/lib.rs index 2f5260837..00f8af0c6 100644 --- a/cmd/auxflash/src/lib.rs +++ b/cmd/auxflash/src/lib.rs @@ -13,10 +13,9 @@ use anyhow::Result; use clap::{CommandFactory, Parser}; use colored::Colorize; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; use humility_auxflash::AuxFlashHandler; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; #[derive(Parser, Debug)] #[clap(name = "auxflash", about = env!("CARGO_PKG_DESCRIPTION"))] @@ -99,9 +98,9 @@ fn auxflash_status(mut worker: AuxFlashHandler, verbose: bool) -> Result<()> { } fn auxflash(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = AuxFlashArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut worker = AuxFlashHandler::new(hubris, core, subargs.timeout)?; match subargs.cmd { @@ -132,14 +131,5 @@ fn auxflash(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: AuxFlashArgs::command(), - name: "auxflash", - run: auxflash, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: AuxFlashArgs::command(), name: "auxflash", run: auxflash } } diff --git a/cmd/console-proxy/src/lib.rs b/cmd/console-proxy/src/lib.rs index 0bf6d3cbc..caf09c5bb 100644 --- a/cmd/console-proxy/src/lib.rs +++ b/cmd/console-proxy/src/lib.rs @@ -10,7 +10,7 @@ use std::path::PathBuf; use clap::{CommandFactory, Parser}; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; #[cfg(not(windows))] mod posix; @@ -113,10 +113,5 @@ pub fn init() -> Command { app: UartConsoleArgs::command(), name: "console-proxy", run: console_proxy, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, } } diff --git a/cmd/console-proxy/src/posix.rs b/cmd/console-proxy/src/posix.rs index a73697017..e84f66409 100644 --- a/cmd/console-proxy/src/posix.rs +++ b/cmd/console-proxy/src/posix.rs @@ -314,9 +314,9 @@ impl UnrawTermiosGuard { } pub(super) fn console_proxy(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = UartConsoleArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut worker = UartConsoleHandler::new( hubris, core, diff --git a/cmd/counters/src/lib.rs b/cmd/counters/src/lib.rs index 7be2ad417..55f6c1554 100644 --- a/cmd/counters/src/lib.rs +++ b/cmd/counters/src/lib.rs @@ -206,7 +206,7 @@ use humility::core::Core; use humility::hubris::*; use humility::reflect::{self, Load, Value}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_doppel::{CountedRingbuf, CounterVariant, Counters}; use indexmap::IndexMap; use std::collections::BTreeMap; @@ -324,12 +324,11 @@ const LIST_HINT: &str = "use `humility counters list` to list all \ available counters"; fn counters(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - + let hubris = &context.cli.archive()?; let subargs = CountersArgs::try_parse_from(&context.cli.cmd)?; if let Some(Subcmd::Ipc(ipc)) = subargs.command { + let core = &mut *context.cli.attach_live_or_dump_match(hubris)?; return ipc.ipc_counter_dump(hubris, core); } let name = subargs.name(); @@ -428,6 +427,7 @@ fn counters(context: &mut ExecutionContext) -> Result<()> { } let mut json: IndexMap<&str, IndexMap<_, _>> = IndexMap::new(); + let core = &mut *context.cli.attach_live_or_dump_match(hubris)?; for (t, ctrs) in counters { // Try not to use `?` here, because it causes one bad counter to make // them all unavailable. Instead, construct an iterator of @@ -623,14 +623,5 @@ fn hint() -> impl std::fmt::Display { } pub fn init() -> Command { - Command { - app: CountersArgs::command(), - name: "counters", - run: counters, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Match, - }, - } + Command { app: CountersArgs::command(), name: "counters", run: counters } } diff --git a/cmd/dashboard/src/lib.rs b/cmd/dashboard/src/lib.rs index 740788be4..22e5d222c 100644 --- a/cmd/dashboard/src/lib.rs +++ b/cmd/dashboard/src/lib.rs @@ -29,7 +29,7 @@ use hif::*; use humility::core::Core; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use humility_idol::{self as idol, HubrisIdol}; use ratatui::{ @@ -736,11 +736,10 @@ where } fn dashboard(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_ref().unwrap(); - - let core = &mut **context.core.as_mut().unwrap(); - let subargs = DashboardArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; + let dashboard = Dashboard::new(hubris, core, &subargs)?; // setup terminal @@ -767,16 +766,7 @@ fn dashboard(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: DashboardArgs::command(), - name: "dashboard", - run: dashboard, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: DashboardArgs::command(), name: "dashboard", run: dashboard } } fn sensor_ops( diff --git a/cmd/debugmailbox/src/lib.rs b/cmd/debugmailbox/src/lib.rs index a78a4c366..6de6a9011 100644 --- a/cmd/debugmailbox/src/lib.rs +++ b/cmd/debugmailbox/src/lib.rs @@ -32,7 +32,7 @@ use anyhow::{Context, Result, bail}; use byteorder::{ByteOrder, LittleEndian, WriteBytesExt}; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; use probe_rs::{ DebugProbeError, DebugProbeSelector, Probe, architecture::arm::{ApAddress, ArmProbeInterface, DapError, DpAddress}, @@ -464,6 +464,5 @@ pub fn init() -> Command { app: DebugMailboxArgs::command(), name: "debugmailbox", run: debugmailboxcmd, - kind: CommandKind::Unattached { archive: Archive::Ignored }, } } diff --git a/cmd/diagnose/src/lib.rs b/cmd/diagnose/src/lib.rs index d64cb2b6f..fc2f7ccfa 100644 --- a/cmd/diagnose/src/lib.rs +++ b/cmd/diagnose/src/lib.rs @@ -19,24 +19,14 @@ use clap::{CommandFactory, Parser}; use humility::core::Core; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; use humility_doppel::{GenOrRestartCount, Task, TaskDesc, TaskState}; use std::num::NonZeroU32; use std::time::Duration; /// Command registration. pub fn init() -> Command { - Command { - app: DiagnoseArgs::command(), - name: "diagnose", - run: diagnose, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Booted, - }, - } + Command { app: DiagnoseArgs::command(), name: "diagnose", run: diagnose } } #[derive(Parser, Debug)] @@ -83,10 +73,9 @@ fn section(title: &str) { } fn diagnose(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = DiagnoseArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_or_dump_booted(hubris)?; section("Initial Inspection"); diff --git a/cmd/discover/src/lib.rs b/cmd/discover/src/lib.rs index e4490b2c7..4d3f19327 100644 --- a/cmd/discover/src/lib.rs +++ b/cmd/discover/src/lib.rs @@ -45,7 +45,7 @@ use colored::Colorize; use hubpack::SerializedSize; use humility::net::decode_iface; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; use serde::{Deserialize, Serialize}; #[derive(Parser, Debug)] @@ -313,9 +313,9 @@ fn discover_dump(seen: BTreeSet, image_id: Option<&[u8]>) { fn discover_run(context: &mut ExecutionContext) -> Result<()> { let subargs = DiscoverArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.try_archive()?; - let image_id = hubris.image_id(); + let image_id = hubris.as_ref().and_then(|h| h.image_id()); if image_id.is_none() { humility::warn!("no archive provided; not checking for compatibility"); } @@ -330,6 +330,5 @@ pub fn init() -> Command { app: DiscoverArgs::command(), name: "discover", run: discover_run, - kind: CommandKind::Detached { archive: Archive::Optional }, } } diff --git a/cmd/doc/src/lib.rs b/cmd/doc/src/lib.rs index 6a1cb1267..7a5982d61 100644 --- a/cmd/doc/src/lib.rs +++ b/cmd/doc/src/lib.rs @@ -13,7 +13,7 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; use std::collections::HashMap; use termimad::*; @@ -64,10 +64,5 @@ fn doc(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: DocArgs::command(), - name: "doc", - run: doc, - kind: CommandKind::Unattached { archive: Archive::Ignored }, - } + Command { app: DocArgs::command(), name: "doc", run: doc } } diff --git a/cmd/dump/src/lib.rs b/cmd/dump/src/lib.rs index a1180c2bd..ff4ea66a4 100644 --- a/cmd/dump/src/lib.rs +++ b/cmd/dump/src/lib.rs @@ -71,7 +71,7 @@ use humility::core::Core; use humility::hubris::*; use humility_arch_arm::ARMRegister; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_dump_agent::{ DumpAgent, DumpAgentCore, DumpAgentExt, DumpArea, DumpBreakdown, HiffyDumpAgent, UdpDumpAgent, task_areas, @@ -855,10 +855,9 @@ fn dump_agent_status( } fn dumpcmd(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = DumpArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_match(hubris)?; if subargs.force_dump_agent && core.is_net() { bail!("can only force the dump agent when attached via debug probe"); @@ -903,14 +902,5 @@ fn dumpcmd(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: DumpArgs::command(), - name: "dump", - run: dumpcmd, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Match, - }, - } + Command { app: DumpArgs::command(), name: "dump", run: dumpcmd } } diff --git a/cmd/ereport/src/lib.rs b/cmd/ereport/src/lib.rs index 391b39848..fa145d074 100644 --- a/cmd/ereport/src/lib.rs +++ b/cmd/ereport/src/lib.rs @@ -11,7 +11,7 @@ use humility::{ hubris::{HubrisArchive, HubrisTask}, }; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use anyhow::{Context, Result, anyhow}; use std::collections::VecDeque; @@ -337,10 +337,9 @@ fn pretty_print_value(value: &ciborium::Value, indent: usize, is_key: bool) { } fn ereport(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = EreportArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_or_dump_booted(hubris)?; match subargs.cmd { EreportCmd::Dump { flags } => ereport_print(hubris, core, flags), @@ -348,14 +347,5 @@ fn ereport(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: EreportArgs::command(), - name: "ereport", - run: ereport, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Booted, - }, - } + Command { app: EreportArgs::command(), name: "ereport", run: ereport } } diff --git a/cmd/exec/src/lib.rs b/cmd/exec/src/lib.rs index bea4e1dd7..a237a50b9 100644 --- a/cmd/exec/src/lib.rs +++ b/cmd/exec/src/lib.rs @@ -24,7 +24,7 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; use humility_log::msg; use serde_json::Value; use std::collections::BTreeMap; @@ -143,10 +143,5 @@ fn exec(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: ExecArgs::command(), - name: "exec", - run: exec, - kind: CommandKind::Unattached { archive: Archive::Ignored }, - } + Command { app: ExecArgs::command(), name: "exec", run: exec } } diff --git a/cmd/extract/src/lib.rs b/cmd/extract/src/lib.rs index e044375c0..e2f555987 100644 --- a/cmd/extract/src/lib.rs +++ b/cmd/extract/src/lib.rs @@ -132,7 +132,7 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Command, CommandKind}; +use humility_cmd::Command; use humility_log::msg; use std::fs::File; use std::io::Cursor; @@ -154,8 +154,7 @@ struct ExtractArgs { } fn extract(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_ref().unwrap(); - let archive = hubris.archive(); + let archive = context.cli.raw_archive()?; let subargs = ExtractArgs::try_parse_from(&context.cli.cmd)?; if subargs.list { @@ -234,10 +233,5 @@ fn extract(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: ExtractArgs::command(), - name: "extract", - run: extract, - kind: CommandKind::Raw, - } + Command { app: ExtractArgs::command(), name: "extract", run: extract } } diff --git a/cmd/flash/src/lib.rs b/cmd/flash/src/lib.rs index 4eb6902a8..6e23f982b 100644 --- a/cmd/flash/src/lib.rs +++ b/cmd/flash/src/lib.rs @@ -24,7 +24,7 @@ use clap::{CommandFactory, Parser}; use humility::{core::Core, hubris::*}; use humility_auxflash::AuxFlashHandler; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; #[derive(Parser, Debug)] #[clap(name = "flash", about = env!("CARGO_PKG_DESCRIPTION"))] @@ -77,7 +77,7 @@ struct FlashArgs { /// _not_ reflash). The core is left halted if we should reflash and is running /// otherwise. fn validate( - hubris: &mut HubrisArchive, + hubris: &HubrisArchive, core: &mut dyn humility::core::Core, subargs: &FlashArgs, ) -> Result<()> { @@ -124,7 +124,7 @@ fn validate( /// /// The core is halted when this function exits. fn get_image_state( - hubris: &mut HubrisArchive, + hubris: &HubrisArchive, core: &mut dyn humility::core::Core, full_check: bool, verbose: bool, @@ -189,7 +189,7 @@ fn get_image_state( } fn flashcmd(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_mut().unwrap(); + let hubris = &context.cli.archive()?; let subargs = FlashArgs::try_parse_from(&context.cli.cmd)?; let config = hubris.load_flash_config()?; @@ -345,12 +345,7 @@ fn program_auxflash( } pub fn init() -> Command { - Command { - app: FlashArgs::command(), - name: "flash", - run: flashcmd, - kind: CommandKind::Unattached { archive: Archive::Required }, - } + Command { app: FlashArgs::command(), name: "flash", run: flashcmd } } /// While it may sound like the impetus for an OSHA investigation at the North diff --git a/cmd/gimlet/src/lib.rs b/cmd/gimlet/src/lib.rs index 616bf18a4..16ace5f58 100644 --- a/cmd/gimlet/src/lib.rs +++ b/cmd/gimlet/src/lib.rs @@ -20,7 +20,7 @@ use anyhow::{Context, Result, bail}; use clap::{ArgGroup, CommandFactory, Parser}; use humility::net::ScopedV6Addr; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind, Dumper}; +use humility_cmd::{Command, Dumper}; /// This is defined in the gimlet TOML. const HARDCODED_PORT: u16 = 23547; @@ -133,10 +133,5 @@ fn run(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: Args::command(), - name: "gimlet", - run, - kind: CommandKind::Detached { archive: Archive::Ignored }, - } + Command { app: Args::command(), name: "gimlet", run } } diff --git a/cmd/gpio/src/lib.rs b/cmd/gpio/src/lib.rs index 194364cbf..23c6164e4 100644 --- a/cmd/gpio/src/lib.rs +++ b/cmd/gpio/src/lib.rs @@ -93,7 +93,7 @@ //! use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::HiffyContext; use std::str; @@ -150,9 +150,9 @@ struct GpioArgs { } fn gpio(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); let subargs = GpioArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; let gpio_toggle = context.get_function("GpioToggle", 2)?; @@ -327,14 +327,5 @@ fn gpio(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: GpioArgs::command(), - name: "gpio", - run: gpio, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: GpioArgs::command(), name: "gpio", run: gpio } } diff --git a/cmd/hash/src/lib.rs b/cmd/hash/src/lib.rs index 359408e81..f25243401 100644 --- a/cmd/hash/src/lib.rs +++ b/cmd/hash/src/lib.rs @@ -20,7 +20,7 @@ use anyhow::{Context, Result, anyhow, bail}; use clap::{ArgGroup, CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use sha2::{Digest, Sha256}; use std::fs::File; @@ -93,10 +93,10 @@ struct HashArgs { } fn hash(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let subargs = HashArgs::try_parse_from(&context.cli.cmd)?; - let archive = context.archive.as_ref().unwrap(); + let archive = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(archive)?; + let mut context = HiffyContext::new(archive, core, subargs.timeout)?; let scratch_size = context.scratch_size(); let mut ops = vec![]; @@ -474,14 +474,5 @@ fn print_hash(buf: &[u8]) { } pub fn init() -> Command { - Command { - app: HashArgs::command(), - name: "hash", - run: hash, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: HashArgs::command(), name: "hash", run: hash } } diff --git a/cmd/hiffy/src/lib.rs b/cmd/hiffy/src/lib.rs index 538235781..7f49c99a6 100644 --- a/cmd/hiffy/src/lib.rs +++ b/cmd/hiffy/src/lib.rs @@ -51,7 +51,7 @@ use clap::{CommandFactory, Parser}; use humility::hubris::*; use humility::warn; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Dumper, Validate}; +use humility_cmd::{Command, Dumper}; use humility_hiffy::*; use humility_idol as idol; use std::io::IsTerminal; @@ -200,14 +200,42 @@ pub fn hiffy_list(hubris: &HubrisArchive, filter: Vec) -> Result<()> { } fn hiffy(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = HiffyArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; if subargs.list { hiffy_list(hubris, subargs.filter)?; return Ok(()); + } else if subargs.listfuncs { + let funcs = HiffyContext::get_hiffy_functions(hubris)?; + let mut byid: Vec> = vec![]; + + byid.resize(funcs.len(), None); + + for (name, func) in &funcs.0 { + let ndx = func.id.0 as usize; + + if ndx >= byid.len() { + bail!("ID for function {} ({}) exceeds bounds", name, ndx); + } + + if let Some((_, _)) = byid[ndx] { + bail!("function ID {} has conflics", ndx); + } + + byid[ndx] = Some((name, func)); + } + + println!("{:>3} {:30} #ARGS", "ID", "FUNCTION"); + + for (i, id) in byid.iter().enumerate() { + if let Some((name, func)) = id { + println!("{:3} {:30} {}", i, name, func.args.len()); + } else { + bail!("missing function for ID {}", i); + } + } + return Ok(()); } else if !subargs.filter.is_empty() { // // It is likely that the user has provided an argument to a HIF @@ -224,19 +252,11 @@ fn hiffy(context: &mut ExecutionContext) -> Result<()> { ); } - // - // Before we create our HiffyContext, check to see if this is a call and - // we're on a dump; running call on a dump always fails (obviously?), but - // in the event that we have a HIF mismatch (or any other failure to - // create the HiffyContext) *and* we're running call on a dump, we would - // rather fail with the dump message rather than with the HiffyContext - // creation failure. (Note that -L will still create the HiffyContext, - // even if run on a dump.) - // - if subargs.call.is_some() && core.is_dump() { - bail!("can't make HIF calls on a dump"); + if subargs.call.is_none() { + bail!("expected one of -l, -L, or -c"); } + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; if let Some(call) = subargs.call { @@ -320,51 +340,9 @@ fn hiffy(context: &mut ExecutionContext) -> Result<()> { return Ok(()); } - if !subargs.listfuncs { - bail!("expected one of -l, -L, or -c"); - } - - let funcs = context.functions(); - let mut byid: Vec> = vec![]; - - byid.resize(funcs.len(), None); - - for (name, func) in &funcs.0 { - let ndx = func.id.0 as usize; - - if ndx >= byid.len() { - bail!("ID for function {} ({}) exceeds bounds", name, ndx); - } - - if let Some((_, _)) = byid[ndx] { - bail!("function ID {} has conflics", ndx); - } - - byid[ndx] = Some((name, func)); - } - - println!("{:>3} {:30} #ARGS", "ID", "FUNCTION"); - - for (i, id) in byid.iter().enumerate() { - if let Some((name, func)) = id { - println!("{:3} {:30} {}", i, name, func.args.len()); - } else { - bail!("missing function for ID {}", i); - } - } - Ok(()) } pub fn init() -> Command { - Command { - app: HiffyArgs::command(), - name: "hiffy", - run: hiffy, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Booted, - }, - } + Command { app: HiffyArgs::command(), name: "hiffy", run: hiffy } } diff --git a/cmd/host/src/lib.rs b/cmd/host/src/lib.rs index 21ccac1a2..32d78fbf4 100644 --- a/cmd/host/src/lib.rs +++ b/cmd/host/src/lib.rs @@ -106,7 +106,7 @@ use clap::{CommandFactory, Parser}; use humility::{core::Core, hubris::HubrisArchive, reflect, reflect::Load}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_doppel as doppel; use humility_hiffy::HiffyContext; use humility_idol::HubrisIdol; @@ -468,32 +468,34 @@ fn host_last_post_code( fn host(context: &mut ExecutionContext) -> Result<()> { let subargs = HostArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); - let core = &mut **context.core.as_mut().unwrap(); + let hubris = &context.cli.archive()?; match subargs.cmd { - HostCommand::BootFail => host_boot_fail(hubris, core), - HostCommand::LastPanic => host_last_panic(hubris, core), - HostCommand::Cosmo { cmd } => match cmd { - CosmoHostCommand::PostCodes { raw } => { - host_post_codes(hubris, core, raw) - } - CosmoHostCommand::LastPostCode { raw } => { - host_last_post_code(hubris, core, raw) + // BootFail and LastPanic just need to read memory, so they can attach + // to either a live system or a dump. + HostCommand::BootFail => { + let core = &mut *context.cli.attach_live_or_dump_match(hubris)?; + host_boot_fail(hubris, core) + } + HostCommand::LastPanic => { + let core = &mut *context.cli.attach_live_or_dump_match(hubris)?; + host_last_panic(hubris, core) + } + HostCommand::Cosmo { cmd } => { + // All cosmo subcommands require making hiffy calls on a live system + let core = &mut *context.cli.attach_live_booted(hubris)?; + match cmd { + CosmoHostCommand::PostCodes { raw } => { + host_post_codes(hubris, core, raw) + } + CosmoHostCommand::LastPostCode { raw } => { + host_last_post_code(hubris, core, raw) + } } - }, + } } } pub fn init() -> Command { - Command { - app: HostArgs::command(), - name: "host", - run: host, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Match, - }, - } + Command { app: HostArgs::command(), name: "host", run: host } } diff --git a/cmd/hydrate/src/lib.rs b/cmd/hydrate/src/lib.rs index 70fa0e5e1..ab4165921 100644 --- a/cmd/hydrate/src/lib.rs +++ b/cmd/hydrate/src/lib.rs @@ -22,7 +22,7 @@ use clap::{ArgGroup, CommandFactory, Parser}; use humility::hubris::HubrisFlashMap; use humility_arch_arm::ARMRegister; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; use humility_log::msg; use std::{collections::BTreeMap, io::Read, path::PathBuf}; @@ -172,9 +172,7 @@ fn run(context: &mut ExecutionContext) -> Result<()> { } // compare archive ID - let Some(archive) = &context.archive else { - bail!("could not get archive"); - }; + let archive = &context.cli.archive()?; let expected_id = archive .image_id() .ok_or_else(|| anyhow!("missing image ID in archive"))?; @@ -200,10 +198,5 @@ fn run(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: Args::command(), - name: "hydrate", - run, - kind: CommandKind::Detached { archive: Archive::Optional }, - } + Command { app: Args::command(), name: "hydrate", run } } diff --git a/cmd/i2c/src/lib.rs b/cmd/i2c/src/lib.rs index 8692124a9..6e008ccb0 100644 --- a/cmd/i2c/src/lib.rs +++ b/cmd/i2c/src/lib.rs @@ -94,7 +94,7 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use hif::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Dumper, Validate}; +use humility_cmd::{Command, Dumper}; use humility_hiffy::*; use humility_log::msg; @@ -424,10 +424,8 @@ fn i2c_done( } fn i2c(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = I2cArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; if !subargs.scan && subargs.scanreg.is_none() @@ -441,6 +439,7 @@ fn i2c(context: &mut ExecutionContext) -> Result<()> { ); } + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; let (fname, args) = if subargs.flash.is_some() { @@ -711,14 +710,5 @@ fn i2c(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: I2cArgs::command(), - name: "i2c", - run: i2c, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: I2cArgs::command(), name: "i2c", run: i2c } } diff --git a/cmd/ibc/src/lib.rs b/cmd/ibc/src/lib.rs index ea1014e79..2a88121fd 100644 --- a/cmd/ibc/src/lib.rs +++ b/cmd/ibc/src/lib.rs @@ -104,7 +104,6 @@ use anyhow::{Result, anyhow, bail}; use clap::{CommandFactory, Parser}; use colored::Colorize; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; use humility_idol::{self as idol, HubrisIdol}; use zerocopy::{ FromBytes, Immutable, IntoBytes, KnownLayout, @@ -115,7 +114,7 @@ use hif::*; use humility::core::Core; use humility::hubris::*; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; use humility_hiffy::HiffyContext; #[derive(Parser, Debug)] @@ -515,9 +514,9 @@ struct IbcEvent { //////////////////////////////////////////////////////////////////////////////// fn ibc(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = IbcArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut worker = IbcHandler::new(hubris, core, subargs.timeout)?; match subargs.cmd { @@ -529,14 +528,5 @@ fn ibc(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: IbcArgs::command(), - name: "ibc", - run: ibc, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: IbcArgs::command(), name: "ibc", run: ibc } } diff --git a/cmd/jefe/src/lib.rs b/cmd/jefe/src/lib.rs index 2b4bd221c..503cf5798 100644 --- a/cmd/jefe/src/lib.rs +++ b/cmd/jefe/src/lib.rs @@ -98,7 +98,7 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_jefe::{JefeRequest, send_request}; use std::num::NonZeroU32; @@ -132,10 +132,9 @@ struct JefeArgs { } fn jefe(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = JefeArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let request = if subargs.fault { JefeRequest::Fault @@ -172,14 +171,5 @@ fn jefe(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: JefeArgs::command(), - name: "jefe", - run: jefe, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: JefeArgs::command(), name: "jefe", run: jefe } } diff --git a/cmd/lpc55gpio/src/lib.rs b/cmd/lpc55gpio/src/lib.rs index 10d4350e3..ec05a3503 100644 --- a/cmd/lpc55gpio/src/lib.rs +++ b/cmd/lpc55gpio/src/lib.rs @@ -103,7 +103,7 @@ //! use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use std::str; @@ -164,10 +164,9 @@ struct GpioArgs { } fn gpio(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = GpioArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; let gpio_toggle = context.get_function("GpioToggle", 1)?; @@ -312,14 +311,5 @@ fn gpio(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: GpioArgs::command(), - name: "lpc55gpio", - run: gpio, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: GpioArgs::command(), name: "lpc55gpio", run: gpio } } diff --git a/cmd/lsusb/src/lib.rs b/cmd/lsusb/src/lib.rs index ce4316f60..4a52c7283 100644 --- a/cmd/lsusb/src/lib.rs +++ b/cmd/lsusb/src/lib.rs @@ -10,7 +10,7 @@ use anyhow::{Context, Result, anyhow}; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; use std::collections::HashMap; use std::time::Duration; @@ -141,10 +141,5 @@ fn list1( } pub fn init() -> Command { - Command { - app: Args::command(), - name: "lsusb", - run: lsusb, - kind: CommandKind::Unattached { archive: Archive::Ignored }, - } + Command { app: Args::command(), name: "lsusb", run: lsusb } } diff --git a/cmd/manifest/src/lib.rs b/cmd/manifest/src/lib.rs index cbc55620f..5b1d8b6fc 100644 --- a/cmd/manifest/src/lib.rs +++ b/cmd/manifest/src/lib.rs @@ -45,7 +45,7 @@ use anyhow::Result; use clap::{CommandFactory, Parser}; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; use std::collections::HashSet; #[derive(Parser, Debug)] @@ -58,7 +58,7 @@ struct ManifestArgs { #[allow(clippy::print_literal)] fn manifestcmd(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_ref().unwrap(); + let hubris = context.cli.archive()?; let manifest = &hubris.manifest; let subargs = ManifestArgs::try_parse_from(&context.cli.cmd)?; @@ -271,10 +271,5 @@ fn manifestcmd(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: ManifestArgs::command(), - name: "manifest", - run: manifestcmd, - kind: CommandKind::Unattached { archive: Archive::Required }, - } + Command { app: ManifestArgs::command(), name: "manifest", run: manifestcmd } } diff --git a/cmd/map/src/lib.rs b/cmd/map/src/lib.rs index d6dc4f76b..3ef6ae8fd 100644 --- a/cmd/map/src/lib.rs +++ b/cmd/map/src/lib.rs @@ -64,20 +64,18 @@ use anyhow::Result; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; #[derive(Parser, Debug)] #[clap(name = "map", about = env!("CARGO_PKG_DESCRIPTION"))] struct MapArgs {} fn mapcmd(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - core.op_start()?; - - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + // Use an archive core to easily read from flash + let core = &mut *humility::core::attach_archive(hubris)?; let regions = hubris.regions(core)?; - core.op_done()?; println!( "{:10} {:10} {:10} {:>7} {:6} {:2} TASK", @@ -138,10 +136,5 @@ fn mapcmd(context: &mut ExecutionContext) -> Result<()> { /// This is some init right here pub fn init() -> Command { - Command { - app: MapArgs::command(), - name: "map", - run: mapcmd, - kind: CommandKind::Unattached { archive: Archive::Required }, - } + Command { app: MapArgs::command(), name: "map", run: mapcmd } } diff --git a/cmd/monorail/src/lib.rs b/cmd/monorail/src/lib.rs index d3e452dca..898f182ba 100644 --- a/cmd/monorail/src/lib.rs +++ b/cmd/monorail/src/lib.rs @@ -172,7 +172,6 @@ use humility::core::Core; use humility::hubris::*; use humility::reflect::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, CommandKind, Validate}; use humility_hiffy::HiffyContext; use humility_idol::{HubrisIdol, IdolArgument}; @@ -197,18 +196,6 @@ struct MonorailArgs { cmd: Command, } -impl MonorailArgs { - /// Checks whether the given subcommand requires an attached target - /// (i.e. a microcontroller running Hubris, connected through a debugger) - fn requires_target(&self) -> bool { - !matches!( - &self.cmd, - Command::Info { .. } - | Command::Phy { cmd: PhyCommand::Info { .. }, .. } - ) - } -} - #[derive(Parser, Debug)] enum Command { /// Get info about a particular VSC7448 register @@ -1066,9 +1053,41 @@ fn monorail_counters( } fn monorail(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_mut().unwrap(); let subargs = MonorailArgs::try_parse_from(&context.cli.cmd)?; + + // Early exit for subcommands which don't require an archive or Core + match &subargs.cmd { + Command::Info { reg, value } => { + let reg = parse_reg_or_addr(reg)?; + println!("Register {reg}"); + println!("Register address: {:#x}", reg.address()); + + if let Some(v) = value { + println!("Register value: {:#x}", v); + pretty_print_fields(*v, reg.fields(), 0); + } else { + println!(" bits | field"); + for (f, field) in reg.fields() { + let range = if field.hi > field.lo + 1 { + format!(" {}:{}", field.hi - 1, field.lo) + } else { + format!("{}", field.lo) + }; + println!(" {range:>5} | {f}"); + } + } + return Ok(()); + } + Command::Phy { cmd: PhyCommand::Info { reg } } => { + let reg: PhyRegister = reg.parse()?; + println!("PHY register: {reg}"); + return Ok(()); + } + _ => (), + } + + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; match subargs.cmd { Command::Info { .. } => panic!("Called monorail with info subcommand"), @@ -1146,78 +1165,10 @@ fn monorail(context: &mut ExecutionContext) -> Result<()> { Ok(()) } -fn monorail_get_info(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_ref().unwrap(); - assert!(!hubris.loaded()); - let subargs = MonorailArgs::try_parse_from(&context.cli.cmd)?; - match subargs.cmd { - Command::Info { reg, value } => { - let reg = parse_reg_or_addr(®)?; - println!("Register {reg}"); - println!("Register address: {:#x}", reg.address()); - - if let Some(v) = value { - println!("Register value: {:#x}", v); - pretty_print_fields(v, reg.fields(), 0); - } else { - println!(" bits | field"); - for (f, field) in reg.fields() { - let range = if field.hi > field.lo + 1 { - format!(" {}:{}", field.hi - 1, field.lo) - } else { - format!("{}", field.lo) - }; - println!(" {range:>5} | {f}"); - } - } - } - Command::Phy { cmd: PhyCommand::Info { reg } } => { - let reg: PhyRegister = reg.parse()?; - println!("PHY register: {reg}"); - } - _ => panic!("Called monorail_get_info without info subcommand"), - } - Ok(()) -} - pub fn init() -> humility_cmd::Command { - // We do a bonus parse of the command-line arguments here to see if we're - // doing a `monorail info` subcommand, which doesn't require a Hubris image - // or attached device; skipping those steps improves runtime (especially - // in debug builds) - - let subcmd_attached = humility_cmd::Command { + humility_cmd::Command { app: MonorailArgs::command(), name: "monorail", run: monorail, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - }; - - let subcmd_unattached = humility_cmd::Command { - app: MonorailArgs::command(), - name: "monorail", - run: monorail_get_info, - kind: CommandKind::Unattached { archive: Archive::Ignored }, - }; - - // If there's a `monorail` subcommand, then attempt to parse the subcmd - let mut args = std::env::args().skip_while(|a| a != "monorail").peekable(); - if args.peek().is_some() { - if let Ok(args) = MonorailArgs::try_parse_from(args) { - if !args.requires_target() { - return subcmd_unattached; - } - } else { - // If the argument parse failed, then return the faster subcommand - // so that we don't have to attach to a device then fail parsing - // again. - return subcmd_unattached; - } } - - subcmd_attached } diff --git a/cmd/mwocp/src/lib.rs b/cmd/mwocp/src/lib.rs index d6a2f5abb..d46c835b2 100644 --- a/cmd/mwocp/src/lib.rs +++ b/cmd/mwocp/src/lib.rs @@ -35,7 +35,7 @@ use humility::hubris::*; use humility::msg; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use humility_i2c::I2cArgs; @@ -117,11 +117,9 @@ const MWOCP68_CHECKSUM_DELAY: u64 = 2; const MWOCP68_REBOOT_DELAY: u64 = 5; fn mwocp(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_mut().unwrap(); - - let core = &mut **context.core.as_mut().unwrap(); - let subargs = MwocpArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; @@ -579,14 +577,5 @@ fn mwocp(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: MwocpArgs::command(), - name: "mwocp", - run: mwocp, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: MwocpArgs::command(), name: "mwocp", run: mwocp } } diff --git a/cmd/net/src/lib.rs b/cmd/net/src/lib.rs index 690ca1c23..09d22e08f 100644 --- a/cmd/net/src/lib.rs +++ b/cmd/net/src/lib.rs @@ -43,9 +43,11 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use colored::Colorize; +use humility::core::Core; +use humility::hubris::HubrisArchive; use humility::reflect::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::HiffyContext; use humility_idol::HubrisIdol; @@ -87,14 +89,11 @@ struct NetArgs { cmd: NetCommand, } -fn net_ip(context: &mut ExecutionContext) -> Result<()> { - let subargs = NetArgs::try_parse_from(&context.cli.cmd)?; - - let hubris = context.archive.as_ref().unwrap(); - let core = &mut **context.core.as_mut().unwrap(); - - let mut hiffy_context = HiffyContext::new(hubris, core, subargs.timeout)?; - +fn net_ip( + hubris: &HubrisArchive, + core: &mut dyn Core, + mut hiffy_context: HiffyContext, +) -> Result<()> { let op = hubris.get_idol_command("Net.get_mac_address")?; let value = humility_hiffy::hiffy_call( @@ -146,14 +145,11 @@ pub fn mac_to_ip6(mac: [u8; 6]) -> String { out } -fn net_mac_table(context: &mut ExecutionContext) -> Result<()> { - let subargs = NetArgs::try_parse_from(&context.cli.cmd)?; - - let hubris = context.archive.as_ref().unwrap(); - let core = &mut **context.core.as_mut().unwrap(); - - let mut hiffy_context = HiffyContext::new(hubris, core, subargs.timeout)?; - +fn net_mac_table( + hubris: &HubrisArchive, + core: &mut dyn Core, + mut hiffy_context: HiffyContext, +) -> Result<()> { let op_mac_count = hubris.get_idol_command("Net.read_ksz8463_mac_count")?; // We need to make two HIF calls: @@ -271,14 +267,11 @@ fn net_mac_table(context: &mut ExecutionContext) -> Result<()> { Ok(()) } -fn net_status(context: &mut ExecutionContext) -> Result<()> { - let subargs = NetArgs::try_parse_from(&context.cli.cmd)?; - - let hubris = context.archive.as_ref().unwrap(); - let core = &mut **context.core.as_mut().unwrap(); - - let mut hiffy_context = HiffyContext::new(hubris, core, subargs.timeout)?; - +fn net_status( + hubris: &HubrisArchive, + core: &mut dyn Core, + mut hiffy_context: HiffyContext, +) -> Result<()> { let op = hubris.get_idol_command("Net.management_link_status")?; let value = humility_hiffy::hiffy_call( @@ -349,17 +342,12 @@ fn net_status(context: &mut ExecutionContext) -> Result<()> { } fn net_counters( - context: &mut ExecutionContext, + hubris: &HubrisArchive, + core: &mut dyn Core, + mut hiffy_context: HiffyContext, table: bool, diagram: bool, ) -> Result<()> { - let subargs = NetArgs::try_parse_from(&context.cli.cmd)?; - - let hubris = context.archive.as_ref().unwrap(); - let core = &mut **context.core.as_mut().unwrap(); - - let mut hiffy_context = HiffyContext::new(hubris, core, subargs.timeout)?; - let op = hubris.get_idol_command("Net.management_counters")?; let value = humility_hiffy::hiffy_call( @@ -576,26 +564,21 @@ fn net_counters_diagram(s: &Struct) -> Result<()> { fn net(context: &mut ExecutionContext) -> Result<()> { let subargs = NetArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; + let hiffy_context = HiffyContext::new(hubris, core, subargs.timeout)?; + match subargs.cmd { - NetCommand::Mac => net_mac_table(context)?, - NetCommand::Ip => net_ip(context)?, - NetCommand::Status => net_status(context)?, + NetCommand::Mac => net_mac_table(hubris, core, hiffy_context)?, + NetCommand::Ip => net_ip(hubris, core, hiffy_context)?, + NetCommand::Status => net_status(hubris, core, hiffy_context)?, NetCommand::Counters { table, diagram } => { - net_counters(context, table, diagram)? + net_counters(hubris, core, hiffy_context, table, diagram)? } } Ok(()) } pub fn init() -> Command { - Command { - app: NetArgs::command(), - name: "net", - run: net, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: NetArgs::command(), name: "net", run: net } } diff --git a/cmd/pmbus/src/lib.rs b/cmd/pmbus/src/lib.rs index ddf79dd72..7145b1401 100644 --- a/cmd/pmbus/src/lib.rs +++ b/cmd/pmbus/src/lib.rs @@ -191,7 +191,7 @@ use colored::Colorize; use humility::hubris::*; use humility::{core::Core, warn}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use humility_i2c::I2cArgs; use humility_idol::{HubrisIdol, IdolArgument, IdolOperation}; @@ -1903,8 +1903,8 @@ impl PmbusWorker for IdolWorker<'_> { #[allow(clippy::print_literal)] fn pmbus(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_ref().unwrap(); let subargs = PmbusArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; if subargs.list { println!( @@ -1939,11 +1939,7 @@ fn pmbus(context: &mut ExecutionContext) -> Result<()> { return Ok(()); } - let core = &mut **context.core.as_mut().unwrap(); - - if core.is_dump() { - bail!("can only list PMBus devices on a dump"); - } + let core = &mut *context.cli.attach_live_booted(hubris)?; let timeout = subargs.timeout; @@ -2247,14 +2243,5 @@ fn pmbus_main( } pub fn init() -> Command { - Command { - app: PmbusArgs::command(), - name: "pmbus", - run: pmbus, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Booted, - }, - } + Command { app: PmbusArgs::command(), name: "pmbus", run: pmbus } } diff --git a/cmd/power/src/lib.rs b/cmd/power/src/lib.rs index 3716860bc..95d34a3cc 100644 --- a/cmd/power/src/lib.rs +++ b/cmd/power/src/lib.rs @@ -21,8 +21,7 @@ use hif::*; use humility::core::Core; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use humility_idol::{self as idol, HubrisIdol}; use std::collections::{BTreeMap, HashSet}; @@ -117,10 +116,9 @@ fn phase_currents( } fn power(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = PowerArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; let mut ops = vec![]; @@ -310,14 +308,5 @@ fn power(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: PowerArgs::command(), - name: "power", - run: power, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: PowerArgs::command(), name: "power", run: power } } diff --git a/cmd/powershelf/src/lib.rs b/cmd/powershelf/src/lib.rs index 645377716..da1854995 100644 --- a/cmd/powershelf/src/lib.rs +++ b/cmd/powershelf/src/lib.rs @@ -19,8 +19,7 @@ use hif::*; use humility::hubris::HubrisArchive; use humility::hubris::HubrisEnum; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use humility_idol::{self as idol, HubrisIdol}; @@ -131,10 +130,9 @@ fn interpret_raw_variant(variant: &str, payload: &[u8]) { } fn powershelf_run(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = PowershelfArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let operation = lookup_operation_enum(hubris)?; @@ -216,10 +214,5 @@ pub fn init() -> Command { app: PowershelfArgs::command(), name: "powershelf", run: powershelf_run, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, } } diff --git a/cmd/probe/Cargo.toml b/cmd/probe/Cargo.toml index be470da84..f1ceb92d7 100644 --- a/cmd/probe/Cargo.toml +++ b/cmd/probe/Cargo.toml @@ -11,6 +11,6 @@ num-traits.workspace = true humility.workspace = true humility-arch-arm.workspace = true -humility-cortex.workspace = true -humility-cmd.workspace = true humility-cli.workspace = true +humility-cmd.workspace = true +humility-cortex.workspace = true diff --git a/cmd/probe/src/lib.rs b/cmd/probe/src/lib.rs index 9b420789b..089fdfd6e 100644 --- a/cmd/probe/src/lib.rs +++ b/cmd/probe/src/lib.rs @@ -91,8 +91,7 @@ use clap::{CommandFactory, Parser}; use humility::hubris::HubrisValidate; use humility_arch_arm::ARMRegister; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; use humility_cortex::debug::*; use humility_cortex::scs::*; @@ -106,9 +105,9 @@ struct ProbeArgs { #[rustfmt::skip::macros(format)] fn probecmd(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); let subargs = ProbeArgs::try_parse_from(&context.cli.cmd)?; + let hubris = context.cli.try_archive()?; + let core = &mut *context.cli.attach_probe(hubris.as_ref())?; use num_traits::FromPrimitive; let mut status = vec![]; @@ -316,28 +315,24 @@ fn probecmd(context: &mut ExecutionContext) -> Result<()> { core.halt()?; } - let regions = match hubris.validate(core, HubrisValidate::ArchiveMatch) { - Ok(_) => { - // - // We want to eat any error here: if we fail to load regions on - // a validated archive, it's because we weren't in fact provided - // an archive at all. (Unlike for many commands, the archive is - // optional for "humility probe".) - // - hubris.regions(core).unwrap_or_default() - } - Err(err) => { - // - // If the archive doesn't match, we'll drive on -- but we will - // indicate that we can't interpret registers correctly. - // - humility::warn!( - "archive mismatch: {}; register contents will \ - not be displayed symbolically", - err - ); - Default::default() + let regions = if let Some(hubris) = &hubris { + match hubris.validate(core, HubrisValidate::ArchiveMatch) { + Ok(_) => hubris.regions(core).unwrap(), + Err(err) => { + // + // If the archive doesn't match, we'll drive on -- but we will + // indicate that we can't interpret registers correctly. + // + humility::warn!( + "archive mismatch: {}; register contents will \ + not be displayed symbolically", + err + ); + Default::default() + } } + } else { + Default::default() }; for i in 0..31 { @@ -355,7 +350,7 @@ fn probecmd(context: &mut ExecutionContext) -> Result<()> { format!("{:?}", reg), format!("{:x}", val), if reg.is_general_purpose() { - match hubris.explain(®ions, val) { + match hubris.as_ref().and_then(|h| h.explain(®ions, val)) { Some(explain) => format!(" <- {}", explain), None => "".to_string(), } @@ -417,14 +412,5 @@ fn probecmd(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: ProbeArgs::command(), - name: "probe", - run: probecmd, - kind: CommandKind::Attached { - archive: Archive::Optional, - attach: Attach::LiveOnly, - validate: Validate::None, - }, - } + Command { app: ProbeArgs::command(), name: "probe", run: probecmd } } diff --git a/cmd/qspi/src/lib.rs b/cmd/qspi/src/lib.rs index 577d267c1..90a4966c0 100644 --- a/cmd/qspi/src/lib.rs +++ b/cmd/qspi/src/lib.rs @@ -84,7 +84,7 @@ use humility::core::Core; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Dumper, Validate}; +use humility_cmd::{Command, Dumper}; use humility_hiffy::*; use humility_idol::{HubrisIdol, IdolArgument}; use sha2::{Digest, Sha256}; @@ -482,10 +482,10 @@ fn write( } fn qspi(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = QspiArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; + let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; match subargs.slot { @@ -1190,14 +1190,5 @@ impl fmt::Display for DeviceIdData { } pub fn init() -> Command { - Command { - app: QspiArgs::command(), - name: "qspi", - run: qspi, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: QspiArgs::command(), name: "qspi", run: qspi } } diff --git a/cmd/readmem/src/lib.rs b/cmd/readmem/src/lib.rs index 95b69927a..0de3e903c 100644 --- a/cmd/readmem/src/lib.rs +++ b/cmd/readmem/src/lib.rs @@ -119,7 +119,7 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Dumper, Validate}; +use humility_cmd::{Command, Dumper}; use std::convert::TryInto; use std::io::Write; use std::path::PathBuf; @@ -167,10 +167,10 @@ struct ReadmemArgs { } fn readmem(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = ReadmemArgs::try_parse_from(&context.cli.cmd)?; + let hubris = context.cli.try_archive()?; + let core = &mut *context.cli.attach_live_or_dump(hubris.as_ref(), None)?; + let max = humility::core::CORE_MAX_READSIZE; let size = if subargs.word || subargs.symbol { 4 @@ -187,14 +187,22 @@ fn readmem(context: &mut ExecutionContext) -> Result<()> { } if subargs.symbol { - hubris.validate(core, HubrisValidate::ArchiveMatch)?; + if let Some(hubris) = &hubris { + hubris.validate(core, HubrisValidate::ArchiveMatch)?; + } else { + bail!("cannot specify `--symbol` without Hubris archive"); + } } let addr = match parse_int::parse::(&subargs.address) { Ok(addr) => addr, _ => { - hubris.validate(core, HubrisValidate::ArchiveMatch)?; - hubris.lookup_peripheral(&subargs.address)? + if let Some(hubris) = &hubris { + hubris.validate(core, HubrisValidate::ArchiveMatch)?; + hubris.lookup_peripheral(&subargs.address)? + } else { + bail!("cannot look up peripheral without archive"); + } } }; @@ -224,6 +232,7 @@ fn readmem(context: &mut ExecutionContext) -> Result<()> { core.read_8(addr, &mut bytes)?; if subargs.symbol { + let hubris = hubris.as_ref().unwrap(); // checked above for offs in (0..length).step_by(size) { let slice = &bytes[offs..offs + size]; let val = u32::from_le_bytes(slice.try_into().unwrap()); @@ -260,14 +269,5 @@ fn readmem(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: ReadmemArgs::command(), - name: "readmem", - run: readmem, - kind: CommandKind::Attached { - archive: Archive::Optional, - attach: Attach::Any, - validate: Validate::None, - }, - } + Command { app: ReadmemArgs::command(), name: "readmem", run: readmem } } diff --git a/cmd/readvar/src/lib.rs b/cmd/readvar/src/lib.rs index 96adf9e19..ec8050f09 100644 --- a/cmd/readvar/src/lib.rs +++ b/cmd/readvar/src/lib.rs @@ -38,10 +38,10 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; -use humility::core::Core; +use humility::core::{Core, ProbeError}; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; #[derive(Parser, Debug)] #[clap(name = "readvar", about = env!("CARGO_PKG_DESCRIPTION"))] @@ -100,10 +100,8 @@ fn readvar_dump( } fn readvar(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = ReadvarArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; if subargs.list { println!("{:18} {:<42} {:<10} SIZE", "MODULE", "VARIABLE", "ADDR"); @@ -134,6 +132,28 @@ fn readvar(context: &mut ExecutionContext) -> Result<()> { n == v || n.ends_with(&suffix) } + // Try to attach to a live system or dump, falling back to an archive core + // if that's not possible (which only lets us read flash). + let mut core = match context.cli.attach_live_or_dump_match(hubris) { + Ok(core) => core, + Err(err) => { + // Decide whether to warn the user about what happened. If we got + // `NoProbeFound` and the user wasn't trying to find a probe, then + // we're in the clear; otherwise, print a warning and continue. + if err + .downcast_ref::() + .is_none_or(|e| !matches!(e, ProbeError::NoProbeFound)) + && context.cli.probe.is_none() + { + humility::warn!( + "attaching failed, falling back to archive: {err}" + ); + } + humility::core::attach_archive(hubris)? + } + }; + let core = &mut *core; + if let Some(variable) = &subargs.variable { let m = if variable.contains("::") { match_exact } else { match_suffix }; @@ -160,14 +180,5 @@ fn readvar(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: ReadvarArgs::command(), - name: "readvar", - run: readvar, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Match, - }, - } + Command { app: ReadvarArgs::command(), name: "readvar", run: readvar } } diff --git a/cmd/rebootleby/src/lib.rs b/cmd/rebootleby/src/lib.rs index 5f68a4785..b1b252213 100644 --- a/cmd/rebootleby/src/lib.rs +++ b/cmd/rebootleby/src/lib.rs @@ -15,7 +15,7 @@ use clap::{CommandFactory, Parser}; use humility::core::Core; use humility_arch_arm::ARMRegister; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use std::io::Read; use std::ops::RangeInclusive; use std::path::PathBuf; @@ -86,7 +86,7 @@ fn rebootleby(context: &mut ExecutionContext) -> Result<()> { bail!("Re-run with appropriate flag"); } - let core = &mut **context.core.as_mut().unwrap(); + let mut core = context.cli.attach_probe(None)?; let mut flash = FlashHack { core: &mut *core }; humility::msg!("Connected to core."); @@ -139,16 +139,7 @@ fn rebootleby(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: Rebootleby::command(), - name: "rebootleby", - run: rebootleby, - kind: CommandKind::Attached { - archive: Archive::Ignored, - attach: Attach::LiveOnly, - validate: Validate::None, - }, - } + Command { app: Rebootleby::command(), name: "rebootleby", run: rebootleby } } // The undocumented registers. These look remarkably similar to the diff --git a/cmd/registers/Cargo.toml b/cmd/registers/Cargo.toml index 781e8af29..addc7953c 100644 --- a/cmd/registers/Cargo.toml +++ b/cmd/registers/Cargo.toml @@ -11,7 +11,7 @@ num-traits.workspace = true humility.workspace = true humility-arch-arm.workspace = true -humility-cmd.workspace = true humility-cli.workspace = true +humility-cmd.workspace = true humility-cortex.workspace = true humility-stack.workspace = true diff --git a/cmd/registers/src/lib.rs b/cmd/registers/src/lib.rs index bc952b24c..7136086e4 100644 --- a/cmd/registers/src/lib.rs +++ b/cmd/registers/src/lib.rs @@ -134,7 +134,7 @@ use clap::{CommandFactory, Parser}; use humility::hubris::*; use humility_arch_arm::{ARMRegister, ARMRegisterField}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_cortex::debug::*; use num_traits::FromPrimitive; use std::collections::BTreeMap; @@ -233,10 +233,10 @@ fn print_reg(reg: ARMRegister, val: u32, fields: &[ARMRegisterField]) { } fn registers(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = RegistersArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.try_archive()?; + let core = &mut *context.cli.attach_live_or_dump(hubris.as_ref(), None)?; let mut regs = BTreeMap::new(); - let hubris = context.archive.as_ref().unwrap(); if subargs.fp && !core.is_dump() { let mvfr = MVFR0::read(core)?; @@ -248,20 +248,17 @@ fn registers(context: &mut ExecutionContext) -> Result<()> { core.halt()?; - let regions = match hubris.regions(core) { - Ok(regions) => regions, - Err(err) => { - // - // If we can't ascertain our memory regions, we will drive on. (If - // we were provided a dump/archive, we will also print a message to - // indicate that regions can't be loadwed.) - // - if hubris.loaded() { + let regions = if let Some(hubris) = &hubris { + match hubris.regions(core) { + Ok(regions) => regions, + Err(err) => { + // If we can't ascertain our memory regions, we will drive on. humility::msg!("failed to determine memory regions: {err}"); + BTreeMap::new() } - - BTreeMap::new() } + } else { + BTreeMap::new() }; // @@ -308,7 +305,7 @@ fn registers(context: &mut ExecutionContext) -> Result<()> { reg, val, if !reg.is_floating_point() { - match hubris.explain(®ions, val) { + match hubris.as_ref().and_then(|h| h.explain(®ions, val)) { Some(explain) => format!(" <- {}", explain), None => "".to_string(), } @@ -329,6 +326,9 @@ fn registers(context: &mut ExecutionContext) -> Result<()> { continue; }; + // `regions` is empty if there's no Hubris archive, so we can + // unwrap it here: + let hubris = hubris.as_ref().unwrap(); match hubris.stack(core, task, region.base + region.size, ®s) { Ok(stack) => printer.print(hubris, &stack), @@ -363,14 +363,5 @@ fn registers(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: RegistersArgs::command(), - name: "registers", - run: registers, - kind: CommandKind::Attached { - archive: Archive::Optional, - attach: Attach::Any, - validate: Validate::None, - }, - } + Command { app: RegistersArgs::command(), name: "registers", run: registers } } diff --git a/cmd/rencm/src/lib.rs b/cmd/rencm/src/lib.rs index dcfc79220..c824ef747 100644 --- a/cmd/rencm/src/lib.rs +++ b/cmd/rencm/src/lib.rs @@ -11,9 +11,7 @@ use humility::core::Core; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{ - Archive, Attach, Command, CommandKind, Dumper, Validate, attach, -}; +use humility_cmd::{Command, Dumper}; use humility_hiffy::*; use humility_i2c::I2cArgs; @@ -801,18 +799,11 @@ fn rencm(context: &mut ExecutionContext) -> Result<()> { return rencm_ingest(&subargs, modules); } - attach(context, Attach::LiveOnly, Validate::Booted, |context| { - let core = context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - rencm_attached(hubris, &mut **core, &subargs, modules) - }) + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; + rencm_attached(hubris, core, &subargs, modules) } pub fn init() -> Command { - Command { - app: RencmArgs::command(), - name: "rencm", - run: rencm, - kind: CommandKind::Unattached { archive: Archive::Optional }, - } + Command { app: RencmArgs::command(), name: "rencm", run: rencm } } diff --git a/cmd/rendmp/src/lib.rs b/cmd/rendmp/src/lib.rs index d13b39555..fd232fe28 100644 --- a/cmd/rendmp/src/lib.rs +++ b/cmd/rendmp/src/lib.rs @@ -146,7 +146,7 @@ use humility::hubris::*; use humility::reflect::{Base, Value}; use humility::warn; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use humility_i2c::I2cArgs; use humility_idol::{HubrisIdol, IdolOperation}; @@ -2307,11 +2307,9 @@ fn restore_default_config<'a>( } fn rendmp(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_mut().unwrap(); - - let core = &mut **context.core.as_mut().unwrap(); - let subargs = RendmpArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; // Workaround for clap#4707 if subargs.flash.is_none() { @@ -2898,14 +2896,5 @@ fn rendmp(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: RendmpArgs::command(), - name: "rendmp", - run: rendmp, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: RendmpArgs::command(), name: "rendmp", run: rendmp } } diff --git a/cmd/reset/src/lib.rs b/cmd/reset/src/lib.rs index 14104cf06..6484b59c4 100644 --- a/cmd/reset/src/lib.rs +++ b/cmd/reset/src/lib.rs @@ -10,7 +10,7 @@ use anyhow::Result; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; #[derive(Parser, Debug)] #[clap(name = "reset", about = env!("CARGO_PKG_DESCRIPTION"))] @@ -28,12 +28,7 @@ struct ResetArgs { fn reset(context: &mut ExecutionContext) -> Result<()> { let subargs = ResetArgs::try_parse_from(&context.cli.cmd)?; - - // `context.archive` is always `Some(..)` even if we have not specified - // anything on the command line or through environment flags. However, if no - // archive is specified, then the actual data in the archive is default - // constructed (??!). - let chip = context.archive.as_mut().unwrap().chip(); + let hubris = context.cli.try_archive()?; let probe = match &context.cli.probe { Some(p) => p, @@ -52,27 +47,27 @@ fn reset(context: &mut ExecutionContext) -> Result<()> { match subargs.use_token { None => { // Detect bogus archives by looking at the chip member - if let Some(archive) = &context.archive - && chip.is_some() - && archive.wants_reset_handoff_token() + if let Some(hubris) = &hubris + && hubris.chip().is_some() + && hubris.wants_reset_handoff_token() { - Behavior::ResetWithHandoff(archive) + Behavior::ResetWithHandoff(hubris) } else { Behavior::Reset } } Some(false) => Behavior::Reset, Some(true) => { - if let Some(archive) = &context.archive - && chip.is_some() + if let Some(hubris) = &hubris + && hubris.chip().is_some() { - if !archive.wants_reset_handoff_token() { + if !hubris.wants_reset_handoff_token() { anyhow::bail!( "--use-token=true was specified, but the archive \ does not have the relevant kernel feature" ); } - Behavior::ResetWithHandoff(archive) + Behavior::ResetWithHandoff(hubris) } else { anyhow::bail!( "Need a Hubris archive to use measurement token handoff" @@ -85,7 +80,7 @@ fn reset(context: &mut ExecutionContext) -> Result<()> { let mut c = if subargs.soft_reset || matches!(behavior, Behavior::Halt | Behavior::ResetWithHandoff(..)) { - let chip = chip.ok_or_else(|| { + let chip = hubris.as_ref().and_then(|h| h.chip()).ok_or_else(|| { anyhow::anyhow!( "Need a chip to do a soft reset, halt after reset, or handoff" ) @@ -117,10 +112,5 @@ fn reset(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: ResetArgs::command(), - name: "reset", - run: reset, - kind: CommandKind::Unattached { archive: Archive::Optional }, - } + Command { app: ResetArgs::command(), name: "reset", run: reset } } diff --git a/cmd/ringbuf/src/lib.rs b/cmd/ringbuf/src/lib.rs index 09fc1fc46..01dbf1dff 100644 --- a/cmd/ringbuf/src/lib.rs +++ b/cmd/ringbuf/src/lib.rs @@ -68,7 +68,7 @@ use humility::core::Core; use humility::hubris::*; use humility::reflect::{self, Format, Load, Value}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_doppel::{CountedRingbuf, CounterVariant, Ringbuf, StaticCell}; #[derive(Parser, Debug)] @@ -233,10 +233,8 @@ fn taskname<'a>( // an attribute to a macro invoction, so we have to put it here instead. #[allow(clippy::print_literal)] fn ringbuf(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = RingbufArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; let mut ringbufs = vec![]; @@ -292,6 +290,7 @@ fn ringbuf(context: &mut ExecutionContext) -> Result<()> { return Ok(()); } + let core = &mut *context.cli.attach_live_or_dump_match(hubris)?; for (v, def) in ringbufs { // Try not to use `?` here, because it causes one bad ringbuf to make // them all unavailable. @@ -317,14 +316,5 @@ fn ringbuf(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: RingbufArgs::command(), - name: "ringbuf", - run: ringbuf, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Match, - }, - } + Command { app: RingbufArgs::command(), name: "ringbuf", run: ringbuf } } diff --git a/cmd/sbrmi/src/lib.rs b/cmd/sbrmi/src/lib.rs index 837a730fd..3aca8c42f 100644 --- a/cmd/sbrmi/src/lib.rs +++ b/cmd/sbrmi/src/lib.rs @@ -97,8 +97,7 @@ use humility::core::Core; use humility::hubris::*; use humility::reflect; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use humility_idol::{self as idol, HubrisIdol}; use raw_cpuid::{CpuId, CpuIdResult}; @@ -519,9 +518,9 @@ fn mca( } fn sbrmi(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = SbrmiArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; if subargs.cpuid { @@ -616,14 +615,5 @@ fn sbrmi(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: SbrmiArgs::command(), - name: "sbrmi", - run: sbrmi, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: SbrmiArgs::command(), name: "sbrmi", run: sbrmi } } diff --git a/cmd/sensors/src/lib.rs b/cmd/sensors/src/lib.rs index 3f39c8b09..8438ece37 100644 --- a/cmd/sensors/src/lib.rs +++ b/cmd/sensors/src/lib.rs @@ -31,7 +31,7 @@ use humility::core::Core; use humility::hubris::*; use humility::reflect::{self, Load}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_doppel as doppel; use humility_hiffy::*; use humility_idol::{self as idol, HubrisIdol}; @@ -532,10 +532,8 @@ fn print( } fn sensors(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = SensorsArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; let types = if let Some(ref types) = subargs.types { let mut rval = HashSet::new(); @@ -624,6 +622,7 @@ fn sensors(context: &mut ExecutionContext) -> Result<()> { sensors.push((i, s.clone())); } + let core = &mut *context.cli.attach_live_or_dump_booted(hubris)?; let mut reader: Box = match subargs.backend { Some(Backend::Hiffy) => { if core.is_dump() { @@ -649,14 +648,5 @@ fn sensors(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: SensorsArgs::command(), - name: "sensors", - run: sensors, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Booted, - }, - } + Command { app: SensorsArgs::command(), name: "sensors", run: sensors } } diff --git a/cmd/spctrl/src/lib.rs b/cmd/spctrl/src/lib.rs index 8f06315d9..3525410b2 100644 --- a/cmd/spctrl/src/lib.rs +++ b/cmd/spctrl/src/lib.rs @@ -45,7 +45,7 @@ //! ``` use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Dumper, Validate}; +use humility_cmd::{Command, Dumper}; use humility_hiffy::*; use std::str; @@ -89,9 +89,9 @@ struct SpCtrlArgs { } fn spctrl(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = SpCtrlArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; let mut ops = vec![]; @@ -151,14 +151,5 @@ fn spctrl(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: SpCtrlArgs::command(), - name: "spctrl", - run: spctrl, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: SpCtrlArgs::command(), name: "spctrl", run: spctrl } } diff --git a/cmd/spd/src/lib.rs b/cmd/spd/src/lib.rs index b9d9921ce..1376114ac 100644 --- a/cmd/spd/src/lib.rs +++ b/cmd/spd/src/lib.rs @@ -108,7 +108,7 @@ use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use humility_i2c::I2cArgs; use humility_log::msg; @@ -331,10 +331,9 @@ fn set_page( } fn spd(context: &mut ExecutionContext) -> Result<()> { - let hubris = context.archive.as_ref().unwrap(); - let core = &mut **context.core.as_mut().unwrap(); - let subargs = SpdArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_or_dump_booted(hubris)?; // If we have been given no device-related arguments, we will attempt // to find the `SPD_DATA` variable or load SPD data from packrat @@ -520,14 +519,5 @@ fn dump_ddr4_over_i2c( } pub fn init() -> Command { - Command { - app: SpdArgs::command(), - name: "spd", - run: spd, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Booted, - }, - } + Command { app: SpdArgs::command(), name: "spd", run: spd } } diff --git a/cmd/spi/src/lib.rs b/cmd/spi/src/lib.rs index d31d44431..34ee8afe9 100644 --- a/cmd/spi/src/lib.rs +++ b/cmd/spi/src/lib.rs @@ -34,7 +34,7 @@ use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Dumper, Validate}; +use humility_cmd::{Command, Dumper}; use humility_hiffy::*; use std::convert::TryInto; @@ -171,10 +171,10 @@ pub fn spi_task( } fn spi(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = SpiArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; + let mut context = HiffyContext::new(hubris, core, subargs.timeout)?; let spi_read = context.get_function("SpiRead", 4)?; @@ -312,14 +312,5 @@ fn spi(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: SpiArgs::command(), - name: "spi", - run: spi, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: SpiArgs::command(), name: "spi", run: spi } } diff --git a/cmd/stackmargin/src/lib.rs b/cmd/stackmargin/src/lib.rs index 202fa011c..e4a346a1c 100644 --- a/cmd/stackmargin/src/lib.rs +++ b/cmd/stackmargin/src/lib.rs @@ -31,7 +31,7 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use std::{collections::HashSet, convert::TryInto}; #[derive(Parser, Debug)] @@ -44,9 +44,8 @@ struct StackmarginArgs { #[rustfmt::skip::macros(println, bail)] fn stackmargin(context: &mut ExecutionContext) -> Result<()> { let subargs = StackmarginArgs::try_parse_from(&context.cli.cmd)?; - - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_or_dump_booted(hubris)?; let valid_tasks = if subargs.tasks.is_empty() { None @@ -167,10 +166,5 @@ pub fn init() -> Command { app: StackmarginArgs::command(), name: "stackmargin", run: stackmargin, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Booted, - }, } } diff --git a/cmd/stmsecure/Cargo.toml b/cmd/stmsecure/Cargo.toml index cd956a535..14a11d9a0 100644 --- a/cmd/stmsecure/Cargo.toml +++ b/cmd/stmsecure/Cargo.toml @@ -11,5 +11,5 @@ parse_int.workspace = true humility.workspace = true humility-arch-arm.workspace = true -humility-cmd.workspace = true humility-cli.workspace = true +humility-cmd.workspace = true diff --git a/cmd/stmsecure/src/lib.rs b/cmd/stmsecure/src/lib.rs index b45594e67..d09cd072f 100644 --- a/cmd/stmsecure/src/lib.rs +++ b/cmd/stmsecure/src/lib.rs @@ -32,7 +32,7 @@ use clap::{CommandFactory, Parser}; use humility::core::Core; use humility_arch_arm::ARMRegister; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; const FLASH_OPT_KEY1: u32 = 0x0819_2A3B; const FLASH_OPT_KEY2: u32 = 0x4C5D_6E7F; @@ -295,9 +295,8 @@ fn stmsecure_swapbanks(core: &mut dyn Core) -> Result<()> { #[rustfmt::skip::macros(format)] fn stmsecure(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let subargs = StmSecureArgs::try_parse_from(&context.cli.cmd)?; + let core = &mut *context.cli.attach_probe(None)?; match subargs { StmSecureArgs::Status => stmsecure_status(core), @@ -314,14 +313,5 @@ fn stmsecure(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: StmSecureArgs::command(), - name: "stmsecure", - run: stmsecure, - kind: CommandKind::Attached { - archive: Archive::Optional, - attach: Attach::Any, - validate: Validate::None, - }, - } + Command { app: StmSecureArgs::command(), name: "stmsecure", run: stmsecure } } diff --git a/cmd/tasks/src/lib.rs b/cmd/tasks/src/lib.rs index d746c9f53..fc9db75d0 100644 --- a/cmd/tasks/src/lib.rs +++ b/cmd/tasks/src/lib.rs @@ -118,7 +118,7 @@ use humility::hubris::*; use humility::reflect::{self, Format, Load}; use humility_arch_arm::ARMRegister; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_doppel::{self as doppel, Task, TaskDesc, TaskId, TaskState}; use num_traits::FromPrimitive; use std::collections::{BTreeMap, HashMap}; @@ -184,10 +184,9 @@ fn print_regs( } fn tasks(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = TasksArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_or_dump_booted(hubris)?; print_tasks( &mut std::io::stdout(), @@ -930,14 +929,5 @@ fn explain_recv( } pub fn init() -> Command { - Command { - app: TasksArgs::command(), - name: "tasks", - run: tasks, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::Any, - validate: Validate::Booted, - }, - } + Command { app: TasksArgs::command(), name: "tasks", run: tasks } } diff --git a/cmd/test/src/lib.rs b/cmd/test/src/lib.rs index 604910c34..bf461d6f4 100644 --- a/cmd/test/src/lib.rs +++ b/cmd/test/src/lib.rs @@ -96,8 +96,7 @@ use colored::Colorize; use hif::*; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; use humility_hiffy::*; use std::fmt; use std::fs::OpenOptions; @@ -163,10 +162,9 @@ impl fmt::Display for TestResult { } fn test(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let hubris = context.archive.as_ref().unwrap(); - let subargs = TestArgs::try_parse_from(&context.cli.cmd)?; + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; hubris.validate(core, HubrisValidate::Booted)?; @@ -288,14 +286,5 @@ fn test(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: TestArgs::command(), - name: "test", - run: test, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: TestArgs::command(), name: "test", run: test } } diff --git a/cmd/tofino-eeprom/src/lib.rs b/cmd/tofino-eeprom/src/lib.rs index 27dc5f39d..e635e6428 100644 --- a/cmd/tofino-eeprom/src/lib.rs +++ b/cmd/tofino-eeprom/src/lib.rs @@ -9,12 +9,11 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; use indicatif::{ProgressBar, ProgressStyle}; use humility::core::Core; use humility::hubris::*; -use humility_cmd::{Archive, Attach, Command, Validate}; +use humility_cmd::Command; use humility_hiffy::HiffyContext; use humility_idol::{HubrisIdol, IdolArgument}; @@ -147,9 +146,9 @@ impl<'a> EepromHandler<'a> { //////////////////////////////////////////////////////////////////////////////// fn eeprom(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = EepromArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let mut worker = EepromHandler::new(hubris, core, subargs.timeout)?; match subargs.cmd { @@ -166,14 +165,5 @@ fn eeprom(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: EepromArgs::command(), - name: "tofino-eeprom", - run: eeprom, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: EepromArgs::command(), name: "tofino-eeprom", run: eeprom } } diff --git a/cmd/validate/src/lib.rs b/cmd/validate/src/lib.rs index 9d352c8d8..5aeefc3df 100644 --- a/cmd/validate/src/lib.rs +++ b/cmd/validate/src/lib.rs @@ -48,7 +48,7 @@ use colored::Colorize; use hif::*; use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; use humility_hiffy::{HiffyContext, IpcError}; use humility_i2c::I2cArgs; use humility_idol::{self as idol, HubrisIdol}; @@ -132,9 +132,9 @@ fn list(hubris: &HubrisArchive, hargs: &Option) -> Result<()> { Ok(()) } fn validate(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = ValidateArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; let hargs = if subargs.bus.is_some() || subargs.controller.is_some() { Some(I2cArgs::parse( @@ -273,14 +273,5 @@ fn validate(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: ValidateArgs::command(), - name: "validate", - run: validate, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: ValidateArgs::command(), name: "validate", run: validate } } diff --git a/cmd/vpd/src/lib.rs b/cmd/vpd/src/lib.rs index 47bd7a660..101386f41 100644 --- a/cmd/vpd/src/lib.rs +++ b/cmd/vpd/src/lib.rs @@ -109,8 +109,7 @@ use humility::core::Core; use humility::hubris::*; use humility::reflect; use humility_cli::ExecutionContext; -use humility_cmd::CommandKind; -use humility_cmd::{Archive, Attach, Command, Dumper, Validate}; +use humility_cmd::{Command, Dumper}; use humility_hiffy::*; use humility_idol::{self as idol, HubrisIdol}; use indicatif::{ProgressBar, ProgressStyle}; @@ -728,9 +727,9 @@ fn vpd_lock_all( } fn vpd(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); let subargs = VpdArgs::try_parse_from(&context.cli.cmd)?; - let hubris = context.archive.as_ref().unwrap(); + let hubris = &context.cli.archive()?; + let core = &mut *context.cli.attach_live_booted(hubris)?; if subargs.list { list(hubris, core, &subargs)?; @@ -750,14 +749,5 @@ fn vpd(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: VpdArgs::command(), - name: "vpd", - run: vpd, - kind: CommandKind::Attached { - archive: Archive::Required, - attach: Attach::LiveOnly, - validate: Validate::Booted, - }, - } + Command { app: VpdArgs::command(), name: "vpd", run: vpd } } diff --git a/cmd/writeword/Cargo.toml b/cmd/writeword/Cargo.toml index 6ae2e845d..e89f7f569 100644 --- a/cmd/writeword/Cargo.toml +++ b/cmd/writeword/Cargo.toml @@ -6,8 +6,8 @@ description = "writes one or more memory words" [dependencies] humility = { workspace = true } -humility-cmd = { workspace = true } humility-cli = { workspace = true } +humility-cmd = { workspace = true } clap = { workspace = true } anyhow = { workspace = true } parse_int = { workspace = true } diff --git a/cmd/writeword/src/lib.rs b/cmd/writeword/src/lib.rs index 12cde9bd7..a031fe945 100644 --- a/cmd/writeword/src/lib.rs +++ b/cmd/writeword/src/lib.rs @@ -50,7 +50,7 @@ use anyhow::{Result, bail}; use clap::{CommandFactory, Parser}; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Attach, Command, CommandKind, Validate}; +use humility_cmd::Command; #[derive(Parser, Debug)] #[clap(name = "writeword", about = env!("CARGO_PKG_DESCRIPTION"))] @@ -65,10 +65,9 @@ struct WritewordArgs { } fn writeword(context: &mut ExecutionContext) -> Result<()> { - let core = &mut **context.core.as_mut().unwrap(); - let subargs = WritewordArgs::try_parse_from(&context.cli.cmd)?; - + let hubris = context.cli.try_archive()?; + let core = &mut *context.cli.attach_probe(hubris.as_ref())?; if subargs.address & 0b11 != 0 { bail!("address must be word aligned"); } @@ -83,14 +82,5 @@ fn writeword(context: &mut ExecutionContext) -> Result<()> { } pub fn init() -> Command { - Command { - app: WritewordArgs::command(), - name: "writeword", - run: writeword, - kind: CommandKind::Attached { - archive: Archive::Optional, - attach: Attach::LiveOnly, - validate: Validate::None, - }, - } + Command { app: WritewordArgs::command(), name: "writeword", run: writeword } } diff --git a/humility-bin/Cargo.toml b/humility-bin/Cargo.toml index a4061e7cf..485929ecc 100644 --- a/humility-bin/Cargo.toml +++ b/humility-bin/Cargo.toml @@ -32,8 +32,8 @@ hif = { workspace = true } spd = { workspace = true } humility = { workspace = true } humility-cortex = { workspace = true } -humility-cmd = { workspace = true, default-features = false } -humility-cli = { workspace = true } +humility-cmd = { workspace = true } +humility-cli = { workspace = true, default-features = false } cmd-auxflash = { workspace = true } cmd-console-proxy = { workspace = true } cmd-counters = { workspace = true } @@ -113,7 +113,7 @@ trycmd = { workspace = true } [features] default = ["probes"] -probes = ["humility-cmd/probes", "cmd-reset", "cmd-lsusb", "cmd-flash", "cmd-debugmailbox"] +probes = ["humility-cli/probes", "cmd-reset", "cmd-lsusb", "cmd-flash", "cmd-debugmailbox"] [[bin]] name = "humility" diff --git a/humility-bin/src/cmd.rs b/humility-bin/src/cmd.rs index 990915b43..c2d8d8d76 100644 --- a/humility-bin/src/cmd.rs +++ b/humility-bin/src/cmd.rs @@ -2,11 +2,10 @@ // License, v. 2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at https://mozilla.org/MPL/2.0/. -use anyhow::{Context, Result, bail}; +use anyhow::{Context, Result}; use clap::Command as ClapCommand; -use humility::hubris::*; use humility_cli::ExecutionContext; -use humility_cmd::{Archive, Command, CommandKind}; +use humility_cmd::Command; use std::collections::HashMap; // @@ -47,85 +46,5 @@ pub fn subcommand( .get(cmd) .with_context(|| format!("command {} not found", cmd))?; - let mut hubris = HubrisArchive::new().context("failed to initialize")?; - - let (archive, doneness) = match &command.kind { - CommandKind::Attached { archive, .. } => { - (*archive, HubrisArchiveDoneness::Cook) - } - CommandKind::Unattached { archive, .. } => { - (*archive, HubrisArchiveDoneness::Cook) - } - CommandKind::Detached { archive, .. } => { - (*archive, HubrisArchiveDoneness::Cook) - } - CommandKind::Raw => (Archive::Required, HubrisArchiveDoneness::Raw), - }; - - if archive != Archive::Ignored { - if let Some(archive) = &context.cli.archive { - hubris.load(archive, doneness).with_context(|| { - format!("failed to load archive \"{}\"", archive) - })?; - } else if let Some(dump) = &context.cli.dump { - hubris - .load_dump(dump, doneness) - .with_context(|| format!("failed to load dump \"{}\"", dump))?; - } - } - - if archive == Archive::Required - && doneness == HubrisArchiveDoneness::Cook - && !hubris.loaded() - { - if context.cli.environment.is_some() { - bail!("must provide a Hubris archive, dump, or name"); - } - - bail!("must provide a Hubris archive or dump"); - } - - context.archive = Some(hubris); - - let run = command.run; - - match &command.kind { - CommandKind::Attached { attach, validate, .. } => { - humility_cmd::attach(context, *attach, *validate, |context| { - (run)(context) - }) - } - CommandKind::Unattached { archive } => { - if let Some(h) = &context.archive - && context.core.is_none() - && *archive == Archive::Required - { - // we'll try both `attach_dump` and `attach_archive` for maximum - // flexibility; they're allowed to fail, in which case the - // `core` will be left as `None`. - context.core = context - .cli - .dump - .as_ref() - .and_then(|dump| humility::core::attach_dump(dump, h).ok()) - .or_else(|| humility::core::attach_archive(h).ok()); - if context.core.is_none() { - humility::warn!("could not attach to dump or archive") - } - } - (run)(context) - } - CommandKind::Detached { .. } => { - if context.cli.dump.is_some() { - bail!("cannot specify a dump for {} command", cmd); - } - - if context.cli.probe.is_some() { - bail!("cannot specify probe for {} command", cmd); - } - - (run)(context) - } - CommandKind::Raw => (run)(context), - } + (command.run)(context) } diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.chilly.0.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.chilly.0.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.chilly.0.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.chilly.0.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.cosmo.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.cosmo.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.cosmo.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.cosmo.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.duplicate_HostFlash_hash_REPLY.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.duplicate_HostFlash_hash_REPLY.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.extern-regions.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.extern-regions.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.extern-regions.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.extern-regions.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.flash-ram-mismatch.0.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.flash-ram-mismatch.0.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.idol-returns-an-enum.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.idol-returns-an-enum.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.igor.0.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.igor.0.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.igor.0.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.igor.0.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.in_bootloader.0.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.in_bootloader.0.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.in_bootloader.0.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.inheritance.0.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.inheritance.0.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.inheritance.0.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.inheritance.0.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.kernel-panic.0.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.kernel-panic.0.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.kernel-panic.0.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.kernel-panic.1.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.kernel-panic.1.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.kernel-panic.1.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.new-compiler.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.new-compiler.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.new-compiler.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.new-compiler.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.new-ringbuf.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.new-ringbuf.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.new-ringbuf.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.new-sensors.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.new-sensors.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.new-sensors.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.new-sensors.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.nightly-2022-11-01.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.nightly-2022-11-01.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.panic-on-boot.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.panic-on-boot.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.panic-on-boot.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.spoopy.0.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.spoopy.0.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.spoopy.0.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.spoopy.0.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.sprot_status.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.sprot_status.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.sprot_status.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.sprot_status.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.static-tasks.0.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.static-tasks.0.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.static-tasks.0.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.static-tasks.1.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.static-tasks.1.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.static-tasks.1.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.task.net.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.task.net.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.task.net.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.task.net.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-arg/counters-arg.v6.stderr b/humility-bin/tests/cmd/counters-arg/counters-arg.v6.stderr index 5735db825..6b645a7ad 100644 --- a/humility-bin/tests/cmd/counters-arg/counters-arg.v6.stderr +++ b/humility-bin/tests/cmd/counters-arg/counters-arg.v6.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility counters failed: no counters found with names containing "gimlet_seq" hint: use `humility counters list` to list all available counters diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.chilly.0.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.chilly.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.chilly.0.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.chilly.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.duplicate_HostFlash_hash_REPLY.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.duplicate_HostFlash_hash_REPLY.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.extern-regions.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.extern-regions.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.extern-regions.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.extern-regions.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.flash-ram-mismatch.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.flash-ram-mismatch.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.idol-returns-an-enum.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.idol-returns-an-enum.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.igor.0.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.igor.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.igor.0.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.igor.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.in_bootloader.0.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.in_bootloader.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.in_bootloader.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.inheritance.0.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.inheritance.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.inheritance.0.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.inheritance.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.kernel-panic.0.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.kernel-panic.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.kernel-panic.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.kernel-panic.1.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.kernel-panic.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.kernel-panic.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.new-ringbuf.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.new-ringbuf.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.new-ringbuf.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.new-sensors.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.new-sensors.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.new-sensors.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.new-sensors.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.nightly-2022-11-01.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.nightly-2022-11-01.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.panic-on-boot.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.panic-on-boot.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.panic-on-boot.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.spoopy.0.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.spoopy.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.spoopy.0.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.spoopy.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.sprot_status.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.sprot_status.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.sprot_status.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.sprot_status.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.static-tasks.0.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.static-tasks.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.static-tasks.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.static-tasks.1.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.static-tasks.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.static-tasks.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.task.net.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.task.net.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.task.net.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.task.net.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.v6.stderr b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.v6.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.v6.stderr +++ b/humility-bin/tests/cmd/counters-csv-full/counters-csv-full.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.chilly.0.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.chilly.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.chilly.0.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.chilly.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.duplicate_HostFlash_hash_REPLY.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.duplicate_HostFlash_hash_REPLY.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.extern-regions.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.extern-regions.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.extern-regions.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.extern-regions.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.flash-ram-mismatch.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.flash-ram-mismatch.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.idol-returns-an-enum.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.idol-returns-an-enum.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.igor.0.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.igor.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.igor.0.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.igor.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.in_bootloader.0.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.in_bootloader.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.in_bootloader.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.inheritance.0.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.inheritance.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.inheritance.0.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.inheritance.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.kernel-panic.0.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.kernel-panic.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.kernel-panic.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.kernel-panic.1.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.kernel-panic.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.kernel-panic.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.new-ringbuf.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.new-ringbuf.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.new-ringbuf.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.new-sensors.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.new-sensors.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.new-sensors.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.new-sensors.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.nightly-2022-11-01.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.nightly-2022-11-01.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.panic-on-boot.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.panic-on-boot.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.panic-on-boot.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.spoopy.0.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.spoopy.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.spoopy.0.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.spoopy.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.sprot_status.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.sprot_status.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.sprot_status.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.sprot_status.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.static-tasks.0.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.static-tasks.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.static-tasks.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.static-tasks.1.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.static-tasks.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.static-tasks.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.task.net.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.task.net.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.task.net.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.task.net.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-csv/counters-csv.v6.stderr b/humility-bin/tests/cmd/counters-csv/counters-csv.v6.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-csv/counters-csv.v6.stderr +++ b/humility-bin/tests/cmd/counters-csv/counters-csv.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.chilly.0.stderr b/humility-bin/tests/cmd/counters-full/counters-full.chilly.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.chilly.0.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.chilly.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/counters-full/counters-full.duplicate_HostFlash_hash_REPLY.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.duplicate_HostFlash_hash_REPLY.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.extern-regions.stderr b/humility-bin/tests/cmd/counters-full/counters-full.extern-regions.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.extern-regions.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.extern-regions.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/counters-full/counters-full.flash-ram-mismatch.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.flash-ram-mismatch.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/counters-full/counters-full.idol-returns-an-enum.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.idol-returns-an-enum.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.igor.0.stderr b/humility-bin/tests/cmd/counters-full/counters-full.igor.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.igor.0.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.igor.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.in_bootloader.0.stderr b/humility-bin/tests/cmd/counters-full/counters-full.in_bootloader.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.in_bootloader.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.inheritance.0.stderr b/humility-bin/tests/cmd/counters-full/counters-full.inheritance.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.inheritance.0.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.inheritance.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.kernel-panic.0.stderr b/humility-bin/tests/cmd/counters-full/counters-full.kernel-panic.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.kernel-panic.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.kernel-panic.1.stderr b/humility-bin/tests/cmd/counters-full/counters-full.kernel-panic.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.kernel-panic.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.new-ringbuf.stderr b/humility-bin/tests/cmd/counters-full/counters-full.new-ringbuf.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.new-ringbuf.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.new-sensors.stderr b/humility-bin/tests/cmd/counters-full/counters-full.new-sensors.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.new-sensors.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.new-sensors.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/counters-full/counters-full.nightly-2022-11-01.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.nightly-2022-11-01.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.panic-on-boot.stderr b/humility-bin/tests/cmd/counters-full/counters-full.panic-on-boot.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.panic-on-boot.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.spoopy.0.stderr b/humility-bin/tests/cmd/counters-full/counters-full.spoopy.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.spoopy.0.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.spoopy.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.sprot_status.stderr b/humility-bin/tests/cmd/counters-full/counters-full.sprot_status.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.sprot_status.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.sprot_status.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.static-tasks.0.stderr b/humility-bin/tests/cmd/counters-full/counters-full.static-tasks.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.static-tasks.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.static-tasks.1.stderr b/humility-bin/tests/cmd/counters-full/counters-full.static-tasks.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.static-tasks.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.task.net.stderr b/humility-bin/tests/cmd/counters-full/counters-full.task.net.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.task.net.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.task.net.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-full/counters-full.v6.stderr b/humility-bin/tests/cmd/counters-full/counters-full.v6.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-full/counters-full.v6.stderr +++ b/humility-bin/tests/cmd/counters-full/counters-full.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.chilly.0.stderr b/humility-bin/tests/cmd/counters-json/counters-json.chilly.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.chilly.0.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.chilly.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/counters-json/counters-json.duplicate_HostFlash_hash_REPLY.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.duplicate_HostFlash_hash_REPLY.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.extern-regions.stderr b/humility-bin/tests/cmd/counters-json/counters-json.extern-regions.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.extern-regions.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.extern-regions.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/counters-json/counters-json.flash-ram-mismatch.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.flash-ram-mismatch.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/counters-json/counters-json.idol-returns-an-enum.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.idol-returns-an-enum.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.igor.0.stderr b/humility-bin/tests/cmd/counters-json/counters-json.igor.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.igor.0.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.igor.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.in_bootloader.0.stderr b/humility-bin/tests/cmd/counters-json/counters-json.in_bootloader.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.in_bootloader.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.inheritance.0.stderr b/humility-bin/tests/cmd/counters-json/counters-json.inheritance.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.inheritance.0.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.inheritance.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.kernel-panic.0.stderr b/humility-bin/tests/cmd/counters-json/counters-json.kernel-panic.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.kernel-panic.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.kernel-panic.1.stderr b/humility-bin/tests/cmd/counters-json/counters-json.kernel-panic.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.kernel-panic.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.new-ringbuf.stderr b/humility-bin/tests/cmd/counters-json/counters-json.new-ringbuf.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.new-ringbuf.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.new-sensors.stderr b/humility-bin/tests/cmd/counters-json/counters-json.new-sensors.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.new-sensors.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.new-sensors.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/counters-json/counters-json.nightly-2022-11-01.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.nightly-2022-11-01.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.panic-on-boot.stderr b/humility-bin/tests/cmd/counters-json/counters-json.panic-on-boot.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.panic-on-boot.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.spoopy.0.stderr b/humility-bin/tests/cmd/counters-json/counters-json.spoopy.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.spoopy.0.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.spoopy.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.sprot_status.stderr b/humility-bin/tests/cmd/counters-json/counters-json.sprot_status.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.sprot_status.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.sprot_status.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.static-tasks.0.stderr b/humility-bin/tests/cmd/counters-json/counters-json.static-tasks.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.static-tasks.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.static-tasks.1.stderr b/humility-bin/tests/cmd/counters-json/counters-json.static-tasks.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.static-tasks.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.task.net.stderr b/humility-bin/tests/cmd/counters-json/counters-json.task.net.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.task.net.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.task.net.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-json/counters-json.v6.stderr b/humility-bin/tests/cmd/counters-json/counters-json.v6.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-json/counters-json.v6.stderr +++ b/humility-bin/tests/cmd/counters-json/counters-json.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.chilly.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.chilly.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.chilly.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.chilly.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.control_plane_agent.overflow.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.control_plane_agent.overflow.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.control_plane_agent.overflow.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.control_plane_agent.overflow.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.cosmo.stderr b/humility-bin/tests/cmd/counters-list/counters-list.cosmo.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.cosmo.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.cosmo.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.counters.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.counters.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.counters.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.counters.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/counters-list/counters-list.duplicate_HostFlash_hash_REPLY.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.duplicate_HostFlash_hash_REPLY.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.extern-regions.stderr b/humility-bin/tests/cmd/counters-list/counters-list.extern-regions.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.extern-regions.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.extern-regions.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.flash-ram-mismatch.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.flash-ram-mismatch.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.gimlet.stderr b/humility-bin/tests/cmd/counters-list/counters-list.gimlet.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.gimlet.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.gimlet.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.1.stderr b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.1.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.2.stderr b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.2.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.2.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.2.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.3.stderr b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.3.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.3.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.3.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.4.stderr b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.4.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.host-panic.4.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.host-panic.4.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/counters-list/counters-list.idol-returns-an-enum.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.idol-returns-an-enum.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.igor.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.igor.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.igor.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.igor.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.in_bootloader.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.in_bootloader.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.in_bootloader.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.inheritance.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.inheritance.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.inheritance.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.inheritance.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.ipc-counts.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.ipc-counts.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.ipc-counts.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.ipc-counts.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.kernel-panic.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.kernel-panic.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.kernel-panic.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.kernel-panic.1.stderr b/humility-bin/tests/cmd/counters-list/counters-list.kernel-panic.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.kernel-panic.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.new-compiler.stderr b/humility-bin/tests/cmd/counters-list/counters-list.new-compiler.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.new-compiler.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.new-compiler.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.new-ringbuf.stderr b/humility-bin/tests/cmd/counters-list/counters-list.new-ringbuf.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.new-ringbuf.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.new-sensors.stderr b/humility-bin/tests/cmd/counters-list/counters-list.new-sensors.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.new-sensors.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.new-sensors.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/counters-list/counters-list.nightly-2022-11-01.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.nightly-2022-11-01.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.panic-on-boot.stderr b/humility-bin/tests/cmd/counters-list/counters-list.panic-on-boot.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.panic-on-boot.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.spoopy.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.spoopy.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.spoopy.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.spoopy.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.sprot_status.stderr b/humility-bin/tests/cmd/counters-list/counters-list.sprot_status.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.sprot_status.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.sprot_status.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.static-tasks.0.stderr b/humility-bin/tests/cmd/counters-list/counters-list.static-tasks.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.static-tasks.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.static-tasks.1.stderr b/humility-bin/tests/cmd/counters-list/counters-list.static-tasks.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.static-tasks.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.task.net.stderr b/humility-bin/tests/cmd/counters-list/counters-list.task.net.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.task.net.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.task.net.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters-list/counters-list.task.power.stderr b/humility-bin/tests/cmd/counters-list/counters-list.task.power.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.task.power.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.task.power.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.u16-ringbuf.stderr b/humility-bin/tests/cmd/counters-list/counters-list.u16-ringbuf.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.u16-ringbuf.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.u16-ringbuf.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/counters-list/counters-list.v6.stderr b/humility-bin/tests/cmd/counters-list/counters-list.v6.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters-list/counters-list.v6.stderr +++ b/humility-bin/tests/cmd/counters-list/counters-list.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.chilly.0.stderr b/humility-bin/tests/cmd/counters/counters.chilly.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.chilly.0.stderr +++ b/humility-bin/tests/cmd/counters/counters.chilly.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/counters/counters.duplicate_HostFlash_hash_REPLY.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/counters/counters.duplicate_HostFlash_hash_REPLY.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.extern-regions.stderr b/humility-bin/tests/cmd/counters/counters.extern-regions.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.extern-regions.stderr +++ b/humility-bin/tests/cmd/counters/counters.extern-regions.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/counters/counters.flash-ram-mismatch.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/counters/counters.flash-ram-mismatch.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/counters/counters.idol-returns-an-enum.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/counters/counters.idol-returns-an-enum.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.igor.0.stderr b/humility-bin/tests/cmd/counters/counters.igor.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.igor.0.stderr +++ b/humility-bin/tests/cmd/counters/counters.igor.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.in_bootloader.0.stderr b/humility-bin/tests/cmd/counters/counters.in_bootloader.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/counters/counters.in_bootloader.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.inheritance.0.stderr b/humility-bin/tests/cmd/counters/counters.inheritance.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.inheritance.0.stderr +++ b/humility-bin/tests/cmd/counters/counters.inheritance.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.kernel-panic.0.stderr b/humility-bin/tests/cmd/counters/counters.kernel-panic.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/counters/counters.kernel-panic.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.kernel-panic.1.stderr b/humility-bin/tests/cmd/counters/counters.kernel-panic.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/counters/counters.kernel-panic.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.new-ringbuf.stderr b/humility-bin/tests/cmd/counters/counters.new-ringbuf.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/counters/counters.new-ringbuf.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.new-sensors.stderr b/humility-bin/tests/cmd/counters/counters.new-sensors.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.new-sensors.stderr +++ b/humility-bin/tests/cmd/counters/counters.new-sensors.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/counters/counters.nightly-2022-11-01.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/counters/counters.nightly-2022-11-01.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.panic-on-boot.stderr b/humility-bin/tests/cmd/counters/counters.panic-on-boot.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/counters/counters.panic-on-boot.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.spoopy.0.stderr b/humility-bin/tests/cmd/counters/counters.spoopy.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.spoopy.0.stderr +++ b/humility-bin/tests/cmd/counters/counters.spoopy.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.sprot_status.stderr b/humility-bin/tests/cmd/counters/counters.sprot_status.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.sprot_status.stderr +++ b/humility-bin/tests/cmd/counters/counters.sprot_status.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.static-tasks.0.stderr b/humility-bin/tests/cmd/counters/counters.static-tasks.0.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/counters/counters.static-tasks.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.static-tasks.1.stderr b/humility-bin/tests/cmd/counters/counters.static-tasks.1.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/counters/counters.static-tasks.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.task.net.stderr b/humility-bin/tests/cmd/counters/counters.task.net.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.task.net.stderr +++ b/humility-bin/tests/cmd/counters/counters.task.net.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/counters/counters.v6.stderr b/humility-bin/tests/cmd/counters/counters.v6.stderr index c97f19ece..a925132a5 100644 --- a/humility-bin/tests/cmd/counters/counters.v6.stderr +++ b/humility-bin/tests/cmd/counters/counters.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility counters failed: no counters found diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.chilly.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.chilly.0.stderr index 394c11cb6..b4e7b899f 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.chilly.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.chilly.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility: WARNING: couldn't find type [u8; crate::SHA256_SZ] for HostFlash.hash diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.control_plane_agent.overflow.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.control_plane_agent.overflow.0.stderr index 9966855b4..d32a13891 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.control_plane_agent.overflow.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.control_plane_agent.overflow.0.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: couldn't find type Option<(Result, u64)> for Sensor.get_raw_reading humility: WARNING: couldn't find type Option<(NoData, u64)> for Sensor.get_last_nodata humility: WARNING: SprotError matches more than one enum: attest_data::messages::SprotError as GOFF 0x00039350 (object 21), drv_sprot_api::error::SprotError as GOFF 0x00044a4a (object 21) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.cosmo.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.cosmo.stderr index f170cdb94..39dc7e7c2 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.cosmo.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.cosmo.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: couldn't find type [u32; 3] for Sys.read_uid humility: WARNING: couldn't find type [u8; 64] for Sequencer.read_fpga_regs humility: WARNING: couldn't find type Option<(Result, u64)> for Sensor.get_raw_reading diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.counters.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.counters.0.stderr index d4b01f484..7ed762a65 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.counters.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.counters.0.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x000270b5 (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004f4b1 (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x00002867 (object 2), task_net_api::SendError as GOFF 0x000270d9 (object 2) humility: WARNING: SpiError matches more than one enum: drv_spi_api::SpiError as GOFF 0x000073b7 (object 4), gateway_messages::sp_to_mgs::SpiError as GOFF 0x0001035a (object 4) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.duplicate_HostFlash_hash_REPLY.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.duplicate_HostFlash_hash_REPLY.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.extern-regions.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.extern-regions.stderr index 9fa3db4a4..e1113e7c7 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.extern-regions.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.extern-regions.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x00027800 (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004e864 (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x00000c86 (object 2), task_net_api::SendError as GOFF 0x000277d6 (object 2) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.stderr index f9ddfc68f..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.stderr @@ -1,2 +0,0 @@ -humility: attached to dump -humility hiffy failed: target does not appear booted and PC 0x1ff0a6e0 is unknown; is system executing boot ROM or other program? diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.stdout b/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.stdout index e69de29bb..6fd8cb603 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.stdout +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.stdout @@ -0,0 +1,341 @@ +INTERFACE TASK +Jefe jefe + | + +--> Jefe.get_state + | u32 + | + +--> Jefe.set_state + | state u32 + | () + | + +--> Jefe.request_reset + | () + | + +--> Jefe.get_reset_reason + | ResetReason + | + +--> Jefe.set_reset_reason + reason ResetReason + () + +INTERFACE TASK +Net net + | + +--> Net.recv_packet + | socket SocketName + | large_payload_behavior LargePayloadBehavior + | UdpMetadata + | RecvError + | + +--> Net.send_packet + | socket SocketName + | metadata UdpMetadata + | () + | SendError + | + +--> Net.smi_read + | phy u8 + | register u8 + | u16 + | + +--> Net.smi_write + | phy u8 + | register u8 + | value u16 + | () + | + +--> Net.read_phy_reg + | port u8 + | page u16 + | reg u8 + | u16 + | PhyError + | + +--> Net.write_phy_reg + | port u8 + | page u16 + | reg u8 + | value u16 + | () + | PhyError + | + +--> Net.read_ksz8463_mac_count + | usize + | KszError + | + +--> Net.read_ksz8463_mac + | i u16 + | KszMacTableEntry + | KszError + | + +--> Net.read_ksz8463_reg + | reg u16 + | u16 + | KszError + | + +--> Net.get_mac_address + | MacAddress + | + +--> Net.management_link_status + | ManagementLinkStatus + | MgmtError + | + +--> Net.management_counters + ManagementCounters + MgmtError + +INTERFACE TASK +Sys sys + | + +--> Sys.enable_clock_raw + | peripheral u32 + | () + | RccError + | + +--> Sys.disable_clock_raw + | peripheral u32 + | () + | RccError + | + +--> Sys.enter_reset_raw + | peripheral u32 + | () + | RccError + | + +--> Sys.leave_reset_raw + | peripheral u32 + | () + | RccError + | + +--> Sys.gpio_configure_raw + | port Port + | pins u16 + | packed_attributes u16 + | () + | GpioError + | + +--> Sys.gpio_set_reset + | port Port + | set_pins u16 + | reset_pins u16 + | () + | GpioError + | + +--> Sys.gpio_read_input + | port Port + | u16 + | GpioError + | + +--> Sys.gpio_toggle + port Port + pins u16 + () + GpioError + +INTERFACE TASK +Spi spi4_driver + | + +--> Spi.read + | device_index u8 + | () + | SpiError + | + +--> Spi.write + | device_index u8 + | () + | SpiError + | + +--> Spi.exchange + | device_index u8 + | () + | SpiError + | + +--> Spi.lock + | device_index u8 + | cs_state CsState + | () + | SpiError + | + +--> Spi.release + () + SpiError + +INTERFACE TASK +Spi spi2_driver + | + +--> Spi.read + | device_index u8 + | () + | SpiError + | + +--> Spi.write + | device_index u8 + | () + | SpiError + | + +--> Spi.exchange + | device_index u8 + | () + | SpiError + | + +--> Spi.lock + | device_index u8 + | cs_state CsState + | () + | SpiError + | + +--> Spi.release + () + SpiError + +INTERFACE TASK +Thermal thermal + | + +--> Thermal.set_mode_manual + | initial_pwm u8 + | () + | ThermalError + | + +--> Thermal.set_mode_auto + | initial_pwm u8 + | () + | ThermalError + | + +--> Thermal.set_fan_pwm + | index u8 + | pwm u8 + | () + | ThermalError + | + +--> Thermal.disable_watchdog + | () + | ThermalError + | + +--> Thermal.enable_watchdog + timeout_s u8 + () + ThermalError + +INTERFACE TASK +Sequencer gimlet_seq + | + +--> Sequencer.get_state + | PowerState + | SeqError + | + +--> Sequencer.set_state + | state PowerState + | () + | SeqError + | + +--> Sequencer.fans_on + | () + | SeqError + | + +--> Sequencer.fans_off + () + SeqError + +INTERFACE TASK +Hash hash_driver + | + +--> Hash.init_sha256 + | () + | HashError + | + +--> Hash.update + | len u32 + | () + | HashError + | + +--> Hash.finalize_sha256 + | [u8; crate::SHA256_SZ] + | HashError + | + +--> Hash.digest_sha256 + len u32 + [u8; crate::SHA256_SZ] + HashError + +INTERFACE TASK +HostFlash hf + | + +--> HostFlash.read_id + | [u8; 20] + | HfError + | + +--> HostFlash.read_status + | u8 + | HfError + | + +--> HostFlash.bulk_erase + | () + | HfError + | + +--> HostFlash.page_program + | address u32 + | () + | HfError + | + +--> HostFlash.read + | address u32 + | () + | HfError + | + +--> HostFlash.sector_erase + | address u32 + | () + | HfError + | + +--> HostFlash.get_mux + | HfMuxState + | HfError + | + +--> HostFlash.set_mux + | state HfMuxState + | () + | HfError + | + +--> HostFlash.get_dev + | HfDevSelect + | HfError + | + +--> HostFlash.set_dev + | dev HfDevSelect + | () + | HfError + | + +--> HostFlash.hash + address u32 + len u32 + [u8; crate::SHA256_SZ] + HfError + +INTERFACE TASK +Sensor sensor + | + +--> Sensor.get + | id SensorId + | f32 + | SensorError + | + +--> Sensor.post + | id SensorId + | value f32 + | () + | SensorError + | + +--> Sensor.nodata + id SensorId + nodata NoData + () + SensorError + +INTERFACE TASK +Validate validate + | + +--> Validate.validate_i2c + index usize + ValidateOk + ValidateError + diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.toml b/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.toml index 24b451925..65eb89f12 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.toml +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.flash-ram-mismatch.0.toml @@ -7,5 +7,3 @@ fs.base = "../cores" bin.name = "humility" args = "-d hubris.core.flash-ram-mismatch.0 hiffy --list" - -status.code = 1 diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet-c-dev-image-default-v1.0.2.zip.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet-c-dev-image-default-v1.0.2.zip.stderr index 906802d74..2a9abeb72 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet-c-dev-image-default-v1.0.2.zip.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet-c-dev-image-default-v1.0.2.zip.stderr @@ -1,4 +1,3 @@ -humility: attached to archive humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x00027997 (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004fddf (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x0000efba (object 2), task_net_api::SendError as GOFF 0x0002796d (object 2) humility: WARNING: SpiError matches more than one enum: drv_spi_api::SpiError as GOFF 0x0000786b (object 4), gateway_messages::sp_to_mgs::SpiError as GOFF 0x00010532 (object 4) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet-rot-c-image-b.zip.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet-rot-c-image-b.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet-rot-c-image-b.zip.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet-rot-c-image-b.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet.stderr index f170cdb94..39dc7e7c2 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.gimlet.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: couldn't find type [u32; 3] for Sys.read_uid humility: WARNING: couldn't find type [u8; 64] for Sequencer.read_fpga_regs humility: WARNING: couldn't find type Option<(Result, u64)> for Sensor.get_raw_reading diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.0.stderr index ca299685b..2e1eb5e89 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.0.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x00026dd1 (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004ebe0 (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x00002867 (object 2), task_net_api::SendError as GOFF 0x00026df5 (object 2) humility: WARNING: SpiError matches more than one enum: drv_spi_api::SpiError as GOFF 0x000073b7 (object 4), gateway_messages::sp_to_mgs::SpiError as GOFF 0x000102bf (object 4) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.1.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.1.stderr index ca299685b..2e1eb5e89 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.1.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.1.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x00026dd1 (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004ebe0 (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x00002867 (object 2), task_net_api::SendError as GOFF 0x00026df5 (object 2) humility: WARNING: SpiError matches more than one enum: drv_spi_api::SpiError as GOFF 0x000073b7 (object 4), gateway_messages::sp_to_mgs::SpiError as GOFF 0x000102bf (object 4) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.2.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.2.stderr index ca299685b..2e1eb5e89 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.2.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.2.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x00026dd1 (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004ebe0 (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x00002867 (object 2), task_net_api::SendError as GOFF 0x00026df5 (object 2) humility: WARNING: SpiError matches more than one enum: drv_spi_api::SpiError as GOFF 0x000073b7 (object 4), gateway_messages::sp_to_mgs::SpiError as GOFF 0x000102bf (object 4) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.3.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.3.stderr index 7a7d368f6..fb914ae25 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.3.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.3.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility: WARNING: couldn't find type Option<(Result, u64)> for Sensor.get_raw_reading humility: WARNING: couldn't find type Option<(NoData, u64)> for Sensor.get_last_nodata diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.4.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.4.stderr index 7a7d368f6..fb914ae25 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.4.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.host-panic.4.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility: WARNING: couldn't find type Option<(Result, u64)> for Sensor.get_raw_reading humility: WARNING: couldn't find type Option<(NoData, u64)> for Sensor.get_last_nodata diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.idol-returns-an-enum.stderr index f9611e149..c7ad94fa6 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.idol-returns-an-enum.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x0002774a (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004e881 (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x0000ec57 (object 2), task_net_api::SendError as GOFF 0x00027720 (object 2) humility: WARNING: SpiError matches more than one enum: drv_spi_api::SpiError as GOFF 0x000078eb (object 4), gateway_messages::sp_to_mgs::SpiError as GOFF 0x000103f2 (object 4) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.igor.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.igor.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.igor.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.igor.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.in_bootloader.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.in_bootloader.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.in_bootloader.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.inheritance.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.inheritance.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.inheritance.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.inheritance.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.ipc-counts.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.ipc-counts.0.stderr index 62d94f0d1..5e608ab99 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.ipc-counts.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.ipc-counts.0.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x00026d91 (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004fd23 (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x00002867 (object 2), task_net_api::SendError as GOFF 0x00026d67 (object 2) humility: WARNING: SpiError matches more than one enum: drv_spi_api::SpiError as GOFF 0x0000747b (object 4), gateway_messages::sp_to_mgs::SpiError as GOFF 0x00010cf6 (object 4) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.kernel-panic.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.kernel-panic.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.kernel-panic.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.kernel-panic.1.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.kernel-panic.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.kernel-panic.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-compiler.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-compiler.stderr index 10512b11e..b7f7dfedf 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-compiler.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-compiler.stderr @@ -1,2 +1 @@ -humility: attached to dump humility: WARNING: couldn't find type [u32; 3] for Sys.read_uid diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-ringbuf.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-ringbuf.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-ringbuf.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-sensors.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-sensors.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-sensors.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.new-sensors.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.nightly-2022-11-01.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.nightly-2022-11-01.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.stderr index 32b7e6272..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.stderr @@ -1,2 +0,0 @@ -humility: attached to dump -humility hiffy failed: kernel has panicked on boot: "panicked at 'assertion failed: `(left == right)`/n left: `1`,/n right: `2`', app/gimlet/src/main.rs:118:5" diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.stdout b/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.stdout index e69de29bb..34d65ad03 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.stdout +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.stdout @@ -0,0 +1,561 @@ +INTERFACE TASK +Jefe jefe + | + +--> Jefe.get_state + | u32 + | + +--> Jefe.set_state + | state u32 + | () + | + +--> Jefe.request_reset + | () + | + +--> Jefe.get_reset_reason + | ResetReason + | + +--> Jefe.set_reset_reason + reason ResetReason + () + +INTERFACE TASK +Net net + | + +--> Net.recv_packet + | socket SocketName + | large_payload_behavior LargePayloadBehavior + | UdpMetadata + | RecvError + | + +--> Net.send_packet + | socket SocketName + | metadata UdpMetadata + | () + | SendError + | + +--> Net.smi_read + | phy u8 + | register u8 + | u16 + | + +--> Net.smi_write + | phy u8 + | register u8 + | value u16 + | () + | + +--> Net.read_phy_reg + | port u8 + | page u16 + | reg u8 + | u16 + | PhyError + | + +--> Net.write_phy_reg + | port u8 + | page u16 + | reg u8 + | value u16 + | () + | PhyError + | + +--> Net.read_ksz8463_mac_count + | usize + | KszError + | + +--> Net.read_ksz8463_mac + | i u16 + | KszMacTableEntry + | KszError + | + +--> Net.read_ksz8463_reg + | reg u16 + | u16 + | KszError + | + +--> Net.get_mac_address + | MacAddress + | + +--> Net.get_spare_mac_addresses + | MacAddressBlock + | + +--> Net.management_link_status + | ManagementLinkStatus + | MgmtError + | + +--> Net.management_counters + ManagementCounters + MgmtError + +INTERFACE TASK +Sys sys + | + +--> Sys.enable_clock_raw + | peripheral u32 + | () + | RccError + | + +--> Sys.disable_clock_raw + | peripheral u32 + | () + | RccError + | + +--> Sys.enter_reset_raw + | peripheral u32 + | () + | RccError + | + +--> Sys.leave_reset_raw + | peripheral u32 + | () + | RccError + | + +--> Sys.gpio_configure_raw + | port Port + | pins u16 + | packed_attributes u16 + | () + | GpioError + | + +--> Sys.gpio_set_reset + | port Port + | set_pins u16 + | reset_pins u16 + | () + | GpioError + | + +--> Sys.gpio_read_input + | port Port + | u16 + | GpioError + | + +--> Sys.gpio_toggle + port Port + pins u16 + () + GpioError + +INTERFACE TASK +Spi spi4_driver + | + +--> Spi.read + | device_index u8 + | () + | SpiError + | + +--> Spi.write + | device_index u8 + | () + | SpiError + | + +--> Spi.exchange + | device_index u8 + | () + | SpiError + | + +--> Spi.lock + | device_index u8 + | cs_state CsState + | () + | SpiError + | + +--> Spi.release + () + SpiError + +INTERFACE TASK +Spi spi2_driver + | + +--> Spi.read + | device_index u8 + | () + | SpiError + | + +--> Spi.write + | device_index u8 + | () + | SpiError + | + +--> Spi.exchange + | device_index u8 + | () + | SpiError + | + +--> Spi.lock + | device_index u8 + | cs_state CsState + | () + | SpiError + | + +--> Spi.release + () + SpiError + +INTERFACE TASK +Thermal thermal + | + +--> Thermal.set_mode_manual + | initial_pwm u8 + | () + | ThermalError + | + +--> Thermal.set_mode_auto + | () + | ThermalError + | + +--> Thermal.get_mode + | ThermalMode + | ThermalError + | + +--> Thermal.get_auto_state + | ThermalAutoState + | ThermalError + | + +--> Thermal.set_fan_pwm + | index u8 + | pwm u8 + | () + | ThermalError + | + +--> Thermal.disable_watchdog + | () + | ThermalError + | + +--> Thermal.enable_watchdog + | timeout_s u8 + | () + | ThermalError + | + +--> Thermal.set_pid + | z f32 + | p f32 + | i f32 + | d f32 + | () + | ThermalError + | + +--> Thermal.get_margin + | f32 + | ThermalError + | + +--> Thermal.set_margin + | margin f32 + | () + | ThermalError + | + +--> Thermal.update_dynamic_input + | index usize + | time u64 + | model ThermalProperties + | temperature Celsius + | () + | ThermalError + | + +--> Thermal.remove_dynamic_input + | index usize + | () + | ThermalError + | + +--> Thermal.get_runtime + u64 + ThermalError + +INTERFACE TASK +Sequencer gimlet_seq + | + +--> Sequencer.get_state + | PowerState + | SeqError + | + +--> Sequencer.set_state + | state PowerState + | () + | SeqError + | + +--> Sequencer.fans_on + | () + | SeqError + | + +--> Sequencer.fans_off + () + SeqError + +INTERFACE TASK +Hash hash_driver + | + +--> Hash.init_sha256 + | () + | HashError + | + +--> Hash.update + | len u32 + | () + | HashError + | + +--> Hash.finalize_sha256 + | [u8; crate::SHA256_SZ] + | HashError + | + +--> Hash.digest_sha256 + len u32 + [u8; crate::SHA256_SZ] + HashError + +INTERFACE TASK +HostFlash hf + | + +--> HostFlash.read_id + | [u8; 20] + | HfError + | + +--> HostFlash.capacity + | usize + | HfError + | + +--> HostFlash.read_status + | u8 + | HfError + | + +--> HostFlash.bulk_erase + | () + | HfError + | + +--> HostFlash.page_program + | address u32 + | () + | HfError + | + +--> HostFlash.read + | address u32 + | () + | HfError + | + +--> HostFlash.sector_erase + | address u32 + | () + | HfError + | + +--> HostFlash.get_mux + | HfMuxState + | HfError + | + +--> HostFlash.set_mux + | state HfMuxState + | () + | HfError + | + +--> HostFlash.get_dev + | HfDevSelect + | HfError + | + +--> HostFlash.set_dev + | dev HfDevSelect + | () + | HfError + | + +--> HostFlash.hash + address u32 + len u32 + [u8; crate::SHA256_SZ] + HfError + +INTERFACE TASK +Update update_server + | + +--> Update.block_size + | usize + | UpdateError + | + +--> Update.prep_image_update + | image_type UpdateTarget + | () + | UpdateError + | + +--> Update.write_one_block + | block_num usize + | () + | UpdateError + | + +--> Update.abort_update + | () + | UpdateError + | + +--> Update.finish_image_update + | () + | UpdateError + | + +--> Update.current_version + ImageVersion + +INTERFACE TASK +Sensor sensor + | + +--> Sensor.get + | id SensorId + | f32 + | SensorError + | + +--> Sensor.get_reading + | id SensorId + | Reading + | SensorError + | + +--> Sensor.post + | id SensorId + | value f32 + | timestamp u64 + | () + | SensorError + | + +--> Sensor.nodata + | id SensorId + | nodata NoData + | timestamp u64 + | () + | SensorError + | + +--> Sensor.get_nerrors + id SensorId + u32 + SensorError + +INTERFACE TASK +HostSpComms host_sp_comms + | + +--> HostSpComms.set_status + | status u64 + | () + | HostSpCommsError + | + +--> HostSpComms.get_status + Status + HostSpCommsError + +INTERFACE TASK +ControlPlaneAgent control_plane_agent + | + +--> ControlPlaneAgent.fetch_host_phase2_data + | image_hash [u8; 32] + | offset u64 + | notification_bit u8 + | () + | ControlPlaneAgentError + | + +--> ControlPlaneAgent.get_host_phase2_data + | image_hash [u8; 32] + | offset u64 + | usize + | ControlPlaneAgentError + | + +--> ControlPlaneAgent.get_startup_options + | HostStartupOptions + | ControlPlaneAgentError + | + +--> ControlPlaneAgent.set_startup_options + | startup_options u64 + | () + | ControlPlaneAgentError + | + +--> ControlPlaneAgent.identity + | Identity + | + +--> ControlPlaneAgent.get_uart_client + | UartClient + | + +--> ControlPlaneAgent.set_humility_uart_client + | attach bool + | () + | ControlPlaneAgentError + | + +--> ControlPlaneAgent.uart_read + | usize + | ControlPlaneAgentError + | + +--> ControlPlaneAgent.uart_write + usize + ControlPlaneAgentError + +INTERFACE TASK +SpRot sprot + | + +--> SpRot.send_recv + | msgtype MsgType + | Received + | SprotError + | + +--> SpRot.send_recv_retries + | msgtype MsgType + | attempts u16 + | Received + | SprotError + | + +--> SpRot.status + | Status + | SprotError + | + +--> SpRot.pulse_cs + | delay u16 + | PulseStatus + | SprotError + | + +--> SpRot.rot_sink + | count u16 + | size u16 + | SinkStatus + | SprotError + | + +--> SpRot.block_size + | usize + | SprotError + | + +--> SpRot.prep_image_update + | image_type UpdateTarget + | () + | SprotError + | + +--> SpRot.write_one_block + | block_num u32 + | () + | SprotError + | + +--> SpRot.abort_update + | () + | SprotError + | + +--> SpRot.finish_image_update + | () + | SprotError + | + +--> SpRot.current_version + ImageVersion + SprotError + +INTERFACE TASK +Validate validate + | + +--> Validate.validate_i2c + index usize + ValidateOk + ValidateError + +INTERFACE TASK +Vpd vpd + | + +--> Vpd.read_tmp117_eeprom + | index u8 + | [u8; 6] + | VpdError + | + +--> Vpd.read + | index u8 + | offset u16 + | [u8; 16] + | VpdError + | + +--> Vpd.write + index u8 + offset u16 + contents u8 + () + VpdError + diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.toml b/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.toml index 6d358224a..70171678e 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.toml +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.panic-on-boot.toml @@ -7,5 +7,3 @@ fs.base = "../cores" bin.name = "humility" args = "-d hubris.core.panic-on-boot hiffy --list" - -status.code = 1 diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.sidecar-b-image-default.zip.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.sidecar-b-image-default.zip.stderr index cd30496d1..baafb36e7 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.sidecar-b-image-default.zip.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.sidecar-b-image-default.zip.stderr @@ -1,4 +1,3 @@ -humility: attached to archive humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x000289c4 (object 5), smoltcp::socket::udp::RecvError as GOFF 0x000557f3 (object 5) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x0000f3aa (object 5), task_net_api::SendError as GOFF 0x000289e8 (object 5) humility: WARNING: PortStatus matches more than one structure: drv_monorail_api::PortStatus as GOFF 0x0004dd0f (object 11), gateway_messages::sp_to_mgs::monorail_port_status::PortStatus as GOFF 0x00067872 (object 11) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.spoopy.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.spoopy.0.stderr index 394c11cb6..b4e7b899f 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.spoopy.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.spoopy.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility: WARNING: couldn't find type [u8; crate::SHA256_SZ] for HostFlash.hash diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.sprot_status.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.sprot_status.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.sprot_status.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.sprot_status.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.static-tasks.0.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.static-tasks.0.stderr index 394c11cb6..b4e7b899f 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.static-tasks.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility: WARNING: couldn't find type [u8; crate::SHA256_SZ] for HostFlash.hash diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.static-tasks.1.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.static-tasks.1.stderr index 394c11cb6..b4e7b899f 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.static-tasks.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility: WARNING: couldn't find type [u8; crate::SHA256_SZ] for HostFlash.hash diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.task.net.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.task.net.stderr index b74becda6..fbb4839b0 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.task.net.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.task.net.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility: WARNING: DumpArea matches more than one structure: task_jefe::dump::Trace::DumpArea as GOFF 0x00003dd0 (object 1), humpty::DumpArea as GOFF 0x0000ea1b (object 1) humility: WARNING: DumpArea matches more than one structure: task_jefe::dump::Trace::DumpArea as GOFF 0x00003dd0 (object 1), humpty::DumpArea as GOFF 0x0000ea1b (object 1) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.task.power.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.task.power.stderr index 4fc7b1201..5e0fcd651 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.task.power.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.task.power.stderr @@ -1,4 +1,3 @@ -humility: attached to dump humility: WARNING: RecvError matches more than one enum: task_net_api::RecvError as GOFF 0x00026f6a (object 2), smoltcp::socket::udp::RecvError as GOFF 0x0004ff44 (object 2) humility: WARNING: SendError matches more than one enum: smoltcp::socket::udp::SendError as GOFF 0x0000eac7 (object 2), task_net_api::SendError as GOFF 0x00026f8e (object 2) humility: WARNING: SpiError matches more than one enum: drv_spi_api::SpiError as GOFF 0x0000747b (object 4), gateway_messages::sp_to_mgs::SpiError as GOFF 0x00010cf6 (object 4) diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.u16-ringbuf.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.u16-ringbuf.stderr index 7a7d368f6..fb914ae25 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.u16-ringbuf.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.u16-ringbuf.stderr @@ -1,3 +1,2 @@ -humility: attached to dump humility: WARNING: couldn't find type Option<(Result, u64)> for Sensor.get_raw_reading humility: WARNING: couldn't find type Option<(NoData, u64)> for Sensor.get_last_nodata diff --git a/humility-bin/tests/cmd/hiffy-list/hiffy-list.v6.stderr b/humility-bin/tests/cmd/hiffy-list/hiffy-list.v6.stderr index 10512b11e..b7f7dfedf 100644 --- a/humility-bin/tests/cmd/hiffy-list/hiffy-list.v6.stderr +++ b/humility-bin/tests/cmd/hiffy-list/hiffy-list.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility: WARNING: couldn't find type [u32; 3] for Sys.read_uid diff --git a/humility-bin/tests/cmd/manifest/manifest.chilly.0.stderr b/humility-bin/tests/cmd/manifest/manifest.chilly.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.chilly.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.chilly.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.control_plane_agent.overflow.0.stderr b/humility-bin/tests/cmd/manifest/manifest.control_plane_agent.overflow.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.control_plane_agent.overflow.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.control_plane_agent.overflow.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.cosmo.stderr b/humility-bin/tests/cmd/manifest/manifest.cosmo.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.cosmo.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.cosmo.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.counters.0.stderr b/humility-bin/tests/cmd/manifest/manifest.counters.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.counters.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.counters.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/manifest/manifest.duplicate_HostFlash_hash_REPLY.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.duplicate_HostFlash_hash_REPLY.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.extern-regions.stderr b/humility-bin/tests/cmd/manifest/manifest.extern-regions.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.extern-regions.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.extern-regions.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/manifest/manifest.flash-ram-mismatch.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.flash-ram-mismatch.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.gimlet-c-dev-image-default-v1.0.2.zip.stderr b/humility-bin/tests/cmd/manifest/manifest.gimlet-c-dev-image-default-v1.0.2.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.gimlet-c-dev-image-default-v1.0.2.zip.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.gimlet-c-dev-image-default-v1.0.2.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/manifest/manifest.gimlet-rot-c-image-b.zip.stderr b/humility-bin/tests/cmd/manifest/manifest.gimlet-rot-c-image-b.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.gimlet-rot-c-image-b.zip.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.gimlet-rot-c-image-b.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/manifest/manifest.gimlet.stderr b/humility-bin/tests/cmd/manifest/manifest.gimlet.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.gimlet.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.gimlet.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.host-panic.0.stderr b/humility-bin/tests/cmd/manifest/manifest.host-panic.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.host-panic.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.host-panic.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.host-panic.1.stderr b/humility-bin/tests/cmd/manifest/manifest.host-panic.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.host-panic.1.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.host-panic.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.host-panic.2.stderr b/humility-bin/tests/cmd/manifest/manifest.host-panic.2.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.host-panic.2.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.host-panic.2.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.host-panic.3.stderr b/humility-bin/tests/cmd/manifest/manifest.host-panic.3.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.host-panic.3.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.host-panic.3.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.host-panic.4.stderr b/humility-bin/tests/cmd/manifest/manifest.host-panic.4.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.host-panic.4.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.host-panic.4.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/manifest/manifest.idol-returns-an-enum.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.idol-returns-an-enum.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.igor.0.stderr b/humility-bin/tests/cmd/manifest/manifest.igor.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.igor.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.igor.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.in_bootloader.0.stderr b/humility-bin/tests/cmd/manifest/manifest.in_bootloader.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.in_bootloader.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.inheritance.0.stderr b/humility-bin/tests/cmd/manifest/manifest.inheritance.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.inheritance.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.inheritance.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.ipc-counts.0.stderr b/humility-bin/tests/cmd/manifest/manifest.ipc-counts.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.ipc-counts.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.ipc-counts.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.kernel-panic.0.stderr b/humility-bin/tests/cmd/manifest/manifest.kernel-panic.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.kernel-panic.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.kernel-panic.1.stderr b/humility-bin/tests/cmd/manifest/manifest.kernel-panic.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.kernel-panic.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.new-compiler.stderr b/humility-bin/tests/cmd/manifest/manifest.new-compiler.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.new-compiler.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.new-compiler.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.new-ringbuf.stderr b/humility-bin/tests/cmd/manifest/manifest.new-ringbuf.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.new-ringbuf.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.new-sensors.stderr b/humility-bin/tests/cmd/manifest/manifest.new-sensors.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.new-sensors.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.new-sensors.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/manifest/manifest.nightly-2022-11-01.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.nightly-2022-11-01.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.panic-on-boot.stderr b/humility-bin/tests/cmd/manifest/manifest.panic-on-boot.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.panic-on-boot.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.sidecar-b-image-default.zip.stderr b/humility-bin/tests/cmd/manifest/manifest.sidecar-b-image-default.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.sidecar-b-image-default.zip.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.sidecar-b-image-default.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/manifest/manifest.spoopy.0.stderr b/humility-bin/tests/cmd/manifest/manifest.spoopy.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.spoopy.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.spoopy.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.sprot_status.stderr b/humility-bin/tests/cmd/manifest/manifest.sprot_status.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.sprot_status.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.sprot_status.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.static-tasks.0.stderr b/humility-bin/tests/cmd/manifest/manifest.static-tasks.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.static-tasks.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.static-tasks.1.stderr b/humility-bin/tests/cmd/manifest/manifest.static-tasks.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.static-tasks.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.task.net.stderr b/humility-bin/tests/cmd/manifest/manifest.task.net.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.task.net.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.task.net.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.task.power.stderr b/humility-bin/tests/cmd/manifest/manifest.task.power.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.task.power.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.task.power.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.u16-ringbuf.stderr b/humility-bin/tests/cmd/manifest/manifest.u16-ringbuf.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.u16-ringbuf.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.u16-ringbuf.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/manifest/manifest.v6.stderr b/humility-bin/tests/cmd/manifest/manifest.v6.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/manifest/manifest.v6.stderr +++ b/humility-bin/tests/cmd/manifest/manifest.v6.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/map/map.chilly.0.stderr b/humility-bin/tests/cmd/map/map.chilly.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.chilly.0.stderr +++ b/humility-bin/tests/cmd/map/map.chilly.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.control_plane_agent.overflow.0.stderr b/humility-bin/tests/cmd/map/map.control_plane_agent.overflow.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.control_plane_agent.overflow.0.stderr +++ b/humility-bin/tests/cmd/map/map.control_plane_agent.overflow.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.cosmo.stderr b/humility-bin/tests/cmd/map/map.cosmo.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.cosmo.stderr +++ b/humility-bin/tests/cmd/map/map.cosmo.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.counters.0.stderr b/humility-bin/tests/cmd/map/map.counters.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.counters.0.stderr +++ b/humility-bin/tests/cmd/map/map.counters.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/map/map.duplicate_HostFlash_hash_REPLY.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/map/map.duplicate_HostFlash_hash_REPLY.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.extern-regions.stderr b/humility-bin/tests/cmd/map/map.extern-regions.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.extern-regions.stderr +++ b/humility-bin/tests/cmd/map/map.extern-regions.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/map/map.flash-ram-mismatch.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/map/map.flash-ram-mismatch.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.gimlet.stderr b/humility-bin/tests/cmd/map/map.gimlet.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.gimlet.stderr +++ b/humility-bin/tests/cmd/map/map.gimlet.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.host-panic.0.stderr b/humility-bin/tests/cmd/map/map.host-panic.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.host-panic.0.stderr +++ b/humility-bin/tests/cmd/map/map.host-panic.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.host-panic.1.stderr b/humility-bin/tests/cmd/map/map.host-panic.1.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.host-panic.1.stderr +++ b/humility-bin/tests/cmd/map/map.host-panic.1.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.host-panic.2.stderr b/humility-bin/tests/cmd/map/map.host-panic.2.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.host-panic.2.stderr +++ b/humility-bin/tests/cmd/map/map.host-panic.2.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.host-panic.3.stderr b/humility-bin/tests/cmd/map/map.host-panic.3.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.host-panic.3.stderr +++ b/humility-bin/tests/cmd/map/map.host-panic.3.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.host-panic.4.stderr b/humility-bin/tests/cmd/map/map.host-panic.4.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.host-panic.4.stderr +++ b/humility-bin/tests/cmd/map/map.host-panic.4.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/map/map.idol-returns-an-enum.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/map/map.idol-returns-an-enum.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.igor.0.stderr b/humility-bin/tests/cmd/map/map.igor.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.igor.0.stderr +++ b/humility-bin/tests/cmd/map/map.igor.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.in_bootloader.0.stderr b/humility-bin/tests/cmd/map/map.in_bootloader.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/map/map.in_bootloader.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.inheritance.0.stderr b/humility-bin/tests/cmd/map/map.inheritance.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.inheritance.0.stderr +++ b/humility-bin/tests/cmd/map/map.inheritance.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.ipc-counts.0.stderr b/humility-bin/tests/cmd/map/map.ipc-counts.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.ipc-counts.0.stderr +++ b/humility-bin/tests/cmd/map/map.ipc-counts.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.kernel-panic.0.stderr b/humility-bin/tests/cmd/map/map.kernel-panic.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/map/map.kernel-panic.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.kernel-panic.1.stderr b/humility-bin/tests/cmd/map/map.kernel-panic.1.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/map/map.kernel-panic.1.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.new-compiler.stderr b/humility-bin/tests/cmd/map/map.new-compiler.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.new-compiler.stderr +++ b/humility-bin/tests/cmd/map/map.new-compiler.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.new-ringbuf.stderr b/humility-bin/tests/cmd/map/map.new-ringbuf.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/map/map.new-ringbuf.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.new-sensors.stderr b/humility-bin/tests/cmd/map/map.new-sensors.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.new-sensors.stderr +++ b/humility-bin/tests/cmd/map/map.new-sensors.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/map/map.nightly-2022-11-01.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/map/map.nightly-2022-11-01.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.panic-on-boot.stderr b/humility-bin/tests/cmd/map/map.panic-on-boot.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/map/map.panic-on-boot.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.spoopy.0.stderr b/humility-bin/tests/cmd/map/map.spoopy.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.spoopy.0.stderr +++ b/humility-bin/tests/cmd/map/map.spoopy.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.sprot_status.stderr b/humility-bin/tests/cmd/map/map.sprot_status.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.sprot_status.stderr +++ b/humility-bin/tests/cmd/map/map.sprot_status.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.static-tasks.0.stderr b/humility-bin/tests/cmd/map/map.static-tasks.0.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/map/map.static-tasks.0.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.static-tasks.1.stderr b/humility-bin/tests/cmd/map/map.static-tasks.1.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/map/map.static-tasks.1.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.task.net.stderr b/humility-bin/tests/cmd/map/map.task.net.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.task.net.stderr +++ b/humility-bin/tests/cmd/map/map.task.net.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.task.power.stderr b/humility-bin/tests/cmd/map/map.task.power.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.task.power.stderr +++ b/humility-bin/tests/cmd/map/map.task.power.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.u16-ringbuf.stderr b/humility-bin/tests/cmd/map/map.u16-ringbuf.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.u16-ringbuf.stderr +++ b/humility-bin/tests/cmd/map/map.u16-ringbuf.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/map/map.v6.stderr b/humility-bin/tests/cmd/map/map.v6.stderr index da2ede4a0..f53ee36fe 100644 --- a/humility-bin/tests/cmd/map/map.v6.stderr +++ b/humility-bin/tests/cmd/map/map.v6.stderr @@ -1 +1 @@ -humility: attached to dump +humility: attached to archive diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.chilly.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.chilly.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.chilly.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.chilly.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.control_plane_agent.overflow.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.control_plane_agent.overflow.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.control_plane_agent.overflow.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.control_plane_agent.overflow.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.cosmo.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.cosmo.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.cosmo.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.cosmo.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.counters.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.counters.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.counters.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.counters.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.duplicate_HostFlash_hash_REPLY.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.duplicate_HostFlash_hash_REPLY.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.extern-regions.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.extern-regions.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.extern-regions.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.extern-regions.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.flash-ram-mismatch.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.flash-ram-mismatch.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet-c-dev-image-default-v1.0.2.zip.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet-c-dev-image-default-v1.0.2.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet-c-dev-image-default-v1.0.2.zip.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet-c-dev-image-default-v1.0.2.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet-rot-c-image-b.zip.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet-rot-c-image-b.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet-rot-c-image-b.zip.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet-rot-c-image-b.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.gimlet.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.1.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.1.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.2.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.2.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.2.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.2.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.3.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.3.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.3.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.3.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.4.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.4.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.4.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.host-panic.4.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.idol-returns-an-enum.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.idol-returns-an-enum.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.igor.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.igor.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.igor.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.igor.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.in_bootloader.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.in_bootloader.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.in_bootloader.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.inheritance.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.inheritance.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.inheritance.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.inheritance.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.ipc-counts.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.ipc-counts.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.ipc-counts.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.ipc-counts.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.kernel-panic.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.kernel-panic.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.kernel-panic.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.kernel-panic.1.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.kernel-panic.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.kernel-panic.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.new-compiler.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.new-compiler.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.new-compiler.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.new-compiler.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.new-ringbuf.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.new-ringbuf.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.new-ringbuf.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.new-sensors.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.new-sensors.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.new-sensors.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.new-sensors.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.nightly-2022-11-01.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.nightly-2022-11-01.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.panic-on-boot.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.panic-on-boot.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.panic-on-boot.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.sidecar-b-image-default.zip.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.sidecar-b-image-default.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.sidecar-b-image-default.zip.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.sidecar-b-image-default.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.spoopy.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.spoopy.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.spoopy.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.spoopy.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.sprot_status.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.sprot_status.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.sprot_status.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.sprot_status.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.static-tasks.0.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.static-tasks.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.static-tasks.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.static-tasks.1.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.static-tasks.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.static-tasks.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.task.net.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.task.net.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.task.net.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.task.net.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.task.power.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.task.power.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.task.power.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.task.power.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.u16-ringbuf.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.u16-ringbuf.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.u16-ringbuf.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.u16-ringbuf.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/readvar-list/readvar-list.v6.stderr b/humility-bin/tests/cmd/readvar-list/readvar-list.v6.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/readvar-list/readvar-list.v6.stderr +++ b/humility-bin/tests/cmd/readvar-list/readvar-list.v6.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.control_plane_agent.overflow.0.stderr b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.control_plane_agent.overflow.0.stderr index 485a36d98..c36f88274 100644 --- a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.control_plane_agent.overflow.0.stderr +++ b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.control_plane_agent.overflow.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility ringbuf failed: no ring buffer name contains "i2c" (-l to list) diff --git a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.extern-regions.stderr b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.extern-regions.stderr index 485a36d98..c36f88274 100644 --- a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.extern-regions.stderr +++ b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.extern-regions.stderr @@ -1,2 +1 @@ -humility: attached to dump humility ringbuf failed: no ring buffer name contains "i2c" (-l to list) diff --git a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.inheritance.0.stderr b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.inheritance.0.stderr index 485a36d98..c36f88274 100644 --- a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.inheritance.0.stderr +++ b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.inheritance.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility ringbuf failed: no ring buffer name contains "i2c" (-l to list) diff --git a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.new-compiler.stderr b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.new-compiler.stderr index 485a36d98..c36f88274 100644 --- a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.new-compiler.stderr +++ b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.new-compiler.stderr @@ -1,2 +1 @@ -humility: attached to dump humility ringbuf failed: no ring buffer name contains "i2c" (-l to list) diff --git a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.new-sensors.stderr b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.new-sensors.stderr index 485a36d98..c36f88274 100644 --- a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.new-sensors.stderr +++ b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.new-sensors.stderr @@ -1,2 +1 @@ -humility: attached to dump humility ringbuf failed: no ring buffer name contains "i2c" (-l to list) diff --git a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.task.net.stderr b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.task.net.stderr index 485a36d98..c36f88274 100644 --- a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.task.net.stderr +++ b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.task.net.stderr @@ -1,2 +1 @@ -humility: attached to dump humility ringbuf failed: no ring buffer name contains "i2c" (-l to list) diff --git a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.u16-ringbuf.stderr b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.u16-ringbuf.stderr index 485a36d98..c36f88274 100644 --- a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.u16-ringbuf.stderr +++ b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.u16-ringbuf.stderr @@ -1,2 +1 @@ -humility: attached to dump humility ringbuf failed: no ring buffer name contains "i2c" (-l to list) diff --git a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.v6.stderr b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.v6.stderr index 485a36d98..c36f88274 100644 --- a/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.v6.stderr +++ b/humility-bin/tests/cmd/ringbuf-arg/ringbuf-arg.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility ringbuf failed: no ring buffer name contains "i2c" (-l to list) diff --git a/humility-bin/tests/cmd/sensors-read/sensors-read.inheritance.0.stderr b/humility-bin/tests/cmd/sensors-read/sensors-read.inheritance.0.stderr index fecf2bb78..ffd634767 100644 --- a/humility-bin/tests/cmd/sensors-read/sensors-read.inheritance.0.stderr +++ b/humility-bin/tests/cmd/sensors-read/sensors-read.inheritance.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility sensors failed: no sensors found diff --git a/humility-bin/tests/cmd/sensors-read/sensors-read.kernel-panic.0.stderr b/humility-bin/tests/cmd/sensors-read/sensors-read.kernel-panic.0.stderr index fecf2bb78..ffd634767 100644 --- a/humility-bin/tests/cmd/sensors-read/sensors-read.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/sensors-read/sensors-read.kernel-panic.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility sensors failed: no sensors found diff --git a/humility-bin/tests/cmd/sensors-read/sensors-read.new-compiler.stderr b/humility-bin/tests/cmd/sensors-read/sensors-read.new-compiler.stderr index fecf2bb78..ffd634767 100644 --- a/humility-bin/tests/cmd/sensors-read/sensors-read.new-compiler.stderr +++ b/humility-bin/tests/cmd/sensors-read/sensors-read.new-compiler.stderr @@ -1,2 +1 @@ -humility: attached to dump humility sensors failed: no sensors found diff --git a/humility-bin/tests/cmd/sensors-read/sensors-read.static-tasks.0.stderr b/humility-bin/tests/cmd/sensors-read/sensors-read.static-tasks.0.stderr index fecf2bb78..ffd634767 100644 --- a/humility-bin/tests/cmd/sensors-read/sensors-read.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/sensors-read/sensors-read.static-tasks.0.stderr @@ -1,2 +1 @@ -humility: attached to dump humility sensors failed: no sensors found diff --git a/humility-bin/tests/cmd/sensors-read/sensors-read.static-tasks.1.stderr b/humility-bin/tests/cmd/sensors-read/sensors-read.static-tasks.1.stderr index fecf2bb78..ffd634767 100644 --- a/humility-bin/tests/cmd/sensors-read/sensors-read.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/sensors-read/sensors-read.static-tasks.1.stderr @@ -1,2 +1 @@ -humility: attached to dump humility sensors failed: no sensors found diff --git a/humility-bin/tests/cmd/sensors-read/sensors-read.v6.stderr b/humility-bin/tests/cmd/sensors-read/sensors-read.v6.stderr index fecf2bb78..ffd634767 100644 --- a/humility-bin/tests/cmd/sensors-read/sensors-read.v6.stderr +++ b/humility-bin/tests/cmd/sensors-read/sensors-read.v6.stderr @@ -1,2 +1 @@ -humility: attached to dump humility sensors failed: no sensors found diff --git a/humility-bin/tests/cmd/sensors/sensors.chilly.0.stderr b/humility-bin/tests/cmd/sensors/sensors.chilly.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.chilly.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.chilly.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.control_plane_agent.overflow.0.stderr b/humility-bin/tests/cmd/sensors/sensors.control_plane_agent.overflow.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.control_plane_agent.overflow.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.control_plane_agent.overflow.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.cosmo.stderr b/humility-bin/tests/cmd/sensors/sensors.cosmo.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.cosmo.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.cosmo.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.counters.0.stderr b/humility-bin/tests/cmd/sensors/sensors.counters.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.counters.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.counters.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.duplicate_HostFlash_hash_REPLY.stderr b/humility-bin/tests/cmd/sensors/sensors.duplicate_HostFlash_hash_REPLY.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.duplicate_HostFlash_hash_REPLY.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.duplicate_HostFlash_hash_REPLY.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.extern-regions.stderr b/humility-bin/tests/cmd/sensors/sensors.extern-regions.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.extern-regions.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.extern-regions.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.stderr b/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.stderr index 8c01ecda6..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.stderr @@ -1,2 +0,0 @@ -humility: attached to dump -humility sensors failed: target does not appear booted and PC 0x1ff0a6e0 is unknown; is system executing boot ROM or other program? diff --git a/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.stdout b/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.stdout index e69de29bb..1c5ddab01 100644 --- a/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.stdout +++ b/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.stdout @@ -0,0 +1,78 @@ +ID HEXID KIND C P MUX ADDR DEVICE NAME + 0 0x0 temp 2 F - 0x48 tmp117 Southwest + 1 0x1 temp 2 F - 0x49 tmp117 South + 2 0x2 temp 2 F - 0x4a tmp117 Southeast + 3 0x3 temp 2 B 1:4 0x4c tmp451 tmp451 + 4 0x4 temp 3 H - 0x24 tps546b24a V3P3_SP_A2 + 5 0x5 current 3 H - 0x24 tps546b24a V3P3_SP_A2 + 6 0x6 voltage 3 H - 0x24 tps546b24a V3P3_SP_A2 + 7 0x7 temp 3 H - 0x26 tps546b24a V3P3_SYS_A0 + 8 0x8 current 3 H - 0x26 tps546b24a V3P3_SYS_A0 + 9 0x9 voltage 3 H - 0x26 tps546b24a V3P3_SYS_A0 + 10 0xa temp 3 H - 0x27 tps546b24a V5_SYS_A2 + 11 0xb current 3 H - 0x27 tps546b24a V5_SYS_A2 + 12 0xc voltage 3 H - 0x27 tps546b24a V5_SYS_A2 + 13 0xd temp 3 H - 0x29 tps546b24a V1P8_SYS_A2 + 14 0xe current 3 H - 0x29 tps546b24a V1P8_SYS_A2 + 15 0xf voltage 3 H - 0x29 tps546b24a V1P8_SYS_A2 + 16 0x10 temp 3 H - 0x4c sbtsi CPU + 17 0x11 temp 3 H - 0x5a raa229618 VDD_VCORE + 18 0x12 temp 3 H - 0x5a raa229618 VDD_MEM_ABCD + 19 0x13 power 3 H - 0x5a raa229618 VDD_VCORE + 20 0x14 power 3 H - 0x5a raa229618 VDD_MEM_ABCD + 21 0x15 current 3 H - 0x5a raa229618 VDD_VCORE + 22 0x16 current 3 H - 0x5a raa229618 VDD_MEM_ABCD + 23 0x17 voltage 3 H - 0x5a raa229618 VDD_VCORE + 24 0x18 voltage 3 H - 0x5a raa229618 VDD_MEM_ABCD + 25 0x19 temp 3 H - 0x5b raa229618 VDDCR_SOC + 26 0x1a temp 3 H - 0x5b raa229618 VDD_MEM_EFGH + 27 0x1b power 3 H - 0x5b raa229618 VDDCR_SOC + 28 0x1c power 3 H - 0x5b raa229618 VDD_MEM_EFGH + 29 0x1d current 3 H - 0x5b raa229618 VDDCR_SOC + 30 0x1e current 3 H - 0x5b raa229618 VDD_MEM_EFGH + 31 0x1f voltage 3 H - 0x5b raa229618 VDDCR_SOC + 32 0x20 voltage 3 H - 0x5b raa229618 VDD_MEM_EFGH + 33 0x21 current 3 H - 0x5c isl68224 VPP_ABCD + 34 0x22 current 3 H - 0x5c isl68224 VPP_EFGH + 35 0x23 current 3 H - 0x5c isl68224 V1P8_SP3 + 36 0x24 voltage 3 H - 0x5c isl68224 VPP_ABCD + 37 0x25 voltage 3 H - 0x5c isl68224 VPP_EFGH + 38 0x26 voltage 3 H - 0x5c isl68224 V1P8_SP3 + 39 0x27 temp 4 F - 0x10 adm1272 V54_FAN + 40 0x28 current 4 F - 0x10 adm1272 V54_FAN + 41 0x29 voltage 4 F - 0x10 adm1272 V54_FAN + 42 0x2a temp 4 F - 0x14 adm1272 V54_HS_OUTPUT + 43 0x2b current 4 F - 0x14 adm1272 V54_HS_OUTPUT + 44 0x2c voltage 4 F - 0x14 adm1272 V54_HS_OUTPUT + 45 0x2d speed 4 F - 0x20 max31790 Southeast + 46 0x2e speed 4 F - 0x20 max31790 Northeast + 47 0x2f speed 4 F - 0x20 max31790 South + 48 0x30 speed 4 F - 0x20 max31790 North + 49 0x31 speed 4 F - 0x20 max31790 Southwest + 50 0x32 speed 4 F - 0x20 max31790 Northwest + 51 0x33 temp 4 F - 0x25 tps546b24a V0P96_NIC_VDD_A0HP + 52 0x34 current 4 F - 0x25 tps546b24a V0P96_NIC_VDD_A0HP + 53 0x35 voltage 4 F - 0x25 tps546b24a V0P96_NIC_VDD_A0HP + 54 0x36 temp 4 F - 0x48 tmp117 Northeast + 55 0x37 temp 4 F - 0x49 tmp117 North + 56 0x38 temp 4 F - 0x4a tmp117 Northwest + 57 0x39 temp 4 F - 0x67 bmr491 V12_SYS_A2 + 58 0x3a power 4 F - 0x67 bmr491 V12_SYS_A2 + 59 0x3b current 4 F - 0x67 bmr491 V12_SYS_A2 + 60 0x3c voltage 4 F - 0x67 bmr491 V12_SYS_A2 + 61 0x3d temp 3 H - 0x18 tse2004av DIMM_A0 + 62 0x3e temp 3 H - 0x19 tse2004av DIMM_A1 + 63 0x3f temp 3 H - 0x1a tse2004av DIMM_B0 + 64 0x40 temp 3 H - 0x1b tse2004av DIMM_B1 + 65 0x41 temp 3 H - 0x1c tse2004av DIMM_C0 + 66 0x42 temp 3 H - 0x1d tse2004av DIMM_C1 + 67 0x43 temp 3 H - 0x1e tse2004av DIMM_D0 + 68 0x44 temp 3 H - 0x1f tse2004av DIMM_D1 + 69 0x45 temp 4 F - 0x18 tse2004av DIMM_E0 + 70 0x46 temp 4 F - 0x19 tse2004av DIMM_E1 + 71 0x47 temp 4 F - 0x1a tse2004av DIMM_F0 + 72 0x48 temp 4 F - 0x1b tse2004av DIMM_F1 + 73 0x49 temp 4 F - 0x1c tse2004av DIMM_G0 + 74 0x4a temp 4 F - 0x1d tse2004av DIMM_G1 + 75 0x4b temp 4 F - 0x1e tse2004av DIMM_H0 + 76 0x4c temp 4 F - 0x1f tse2004av DIMM_H1 diff --git a/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.toml b/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.toml index ad3abf5d1..0b66f5b34 100644 --- a/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.toml +++ b/humility-bin/tests/cmd/sensors/sensors.flash-ram-mismatch.0.toml @@ -7,5 +7,3 @@ fs.base = "../cores" bin.name = "humility" args = "-d hubris.core.flash-ram-mismatch.0 sensors --list" - -status.code = 1 diff --git a/humility-bin/tests/cmd/sensors/sensors.gimlet-c-dev-image-default-v1.0.2.zip.stderr b/humility-bin/tests/cmd/sensors/sensors.gimlet-c-dev-image-default-v1.0.2.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.gimlet-c-dev-image-default-v1.0.2.zip.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.gimlet-c-dev-image-default-v1.0.2.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/sensors/sensors.gimlet-rot-c-image-b.zip.stderr b/humility-bin/tests/cmd/sensors/sensors.gimlet-rot-c-image-b.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.gimlet-rot-c-image-b.zip.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.gimlet-rot-c-image-b.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/sensors/sensors.gimlet.stderr b/humility-bin/tests/cmd/sensors/sensors.gimlet.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.gimlet.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.gimlet.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.host-panic.0.stderr b/humility-bin/tests/cmd/sensors/sensors.host-panic.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.host-panic.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.host-panic.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.host-panic.1.stderr b/humility-bin/tests/cmd/sensors/sensors.host-panic.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.host-panic.1.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.host-panic.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.host-panic.2.stderr b/humility-bin/tests/cmd/sensors/sensors.host-panic.2.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.host-panic.2.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.host-panic.2.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.host-panic.3.stderr b/humility-bin/tests/cmd/sensors/sensors.host-panic.3.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.host-panic.3.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.host-panic.3.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.host-panic.4.stderr b/humility-bin/tests/cmd/sensors/sensors.host-panic.4.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.host-panic.4.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.host-panic.4.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.idol-returns-an-enum.stderr b/humility-bin/tests/cmd/sensors/sensors.idol-returns-an-enum.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.idol-returns-an-enum.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.idol-returns-an-enum.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.igor.0.stderr b/humility-bin/tests/cmd/sensors/sensors.igor.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.igor.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.igor.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.in_bootloader.0.stderr b/humility-bin/tests/cmd/sensors/sensors.in_bootloader.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.in_bootloader.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.in_bootloader.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.inheritance.0.stderr b/humility-bin/tests/cmd/sensors/sensors.inheritance.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.inheritance.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.inheritance.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.ipc-counts.0.stderr b/humility-bin/tests/cmd/sensors/sensors.ipc-counts.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.ipc-counts.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.ipc-counts.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.kernel-panic.0.stderr b/humility-bin/tests/cmd/sensors/sensors.kernel-panic.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.kernel-panic.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.kernel-panic.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.kernel-panic.1.stderr b/humility-bin/tests/cmd/sensors/sensors.kernel-panic.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.kernel-panic.1.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.kernel-panic.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.new-compiler.stderr b/humility-bin/tests/cmd/sensors/sensors.new-compiler.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.new-compiler.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.new-compiler.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.new-ringbuf.stderr b/humility-bin/tests/cmd/sensors/sensors.new-ringbuf.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.new-ringbuf.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.new-ringbuf.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.new-sensors.stderr b/humility-bin/tests/cmd/sensors/sensors.new-sensors.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.new-sensors.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.new-sensors.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.nightly-2022-11-01.stderr b/humility-bin/tests/cmd/sensors/sensors.nightly-2022-11-01.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.nightly-2022-11-01.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.nightly-2022-11-01.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.stderr b/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.stderr index 70cd8d4a3..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.stderr @@ -1,2 +0,0 @@ -humility: attached to dump -humility sensors failed: kernel has panicked on boot: "panicked at 'assertion failed: `(left == right)`/n left: `1`,/n right: `2`', app/gimlet/src/main.rs:118:5" diff --git a/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.stdout b/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.stdout index e69de29bb..d4b57f2e3 100644 --- a/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.stdout +++ b/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.stdout @@ -0,0 +1,134 @@ +ID HEXID KIND C P MUX ADDR DEVICE NAME + 0 0x0 temp 2 F - 0x48 tmp117 Southwest + 1 0x1 temp 2 F - 0x49 tmp117 South + 2 0x2 temp 2 F - 0x4a tmp117 Southeast + 3 0x3 current 2 F 1:1 0x38 max5970 V12_U2A_A0 + 4 0x4 current 2 F 1:1 0x38 max5970 V3P3_U2A_A0 + 5 0x5 voltage 2 F 1:1 0x38 max5970 V12_U2A_A0 + 6 0x6 voltage 2 F 1:1 0x38 max5970 V3P3_U2A_A0 + 7 0x7 temp 2 F 1:1 0x6a nvme_bmc U2_N0 + 8 0x8 current 2 F 1:2 0x38 max5970 V12_U2B_A0 + 9 0x9 current 2 F 1:2 0x38 max5970 V3P3_U2B_A0 + 10 0xa voltage 2 F 1:2 0x38 max5970 V12_U2B_A0 + 11 0xb voltage 2 F 1:2 0x38 max5970 V3P3_U2B_A0 + 12 0xc temp 2 F 1:2 0x6a nvme_bmc U2_N1 + 13 0xd current 2 F 1:3 0x38 max5970 V12_U2C_A0 + 14 0xe current 2 F 1:3 0x38 max5970 V3P3_U2C_A0 + 15 0xf voltage 2 F 1:3 0x38 max5970 V12_U2C_A0 + 16 0x10 voltage 2 F 1:3 0x38 max5970 V3P3_U2C_A0 + 17 0x11 temp 2 F 1:3 0x6a nvme_bmc U2_N2 + 18 0x12 current 2 F 1:4 0x38 max5970 V12_U2D_A0 + 19 0x13 current 2 F 1:4 0x38 max5970 V3P3_U2D_A0 + 20 0x14 voltage 2 F 1:4 0x38 max5970 V12_U2D_A0 + 21 0x15 voltage 2 F 1:4 0x38 max5970 V3P3_U2D_A0 + 22 0x16 temp 2 F 1:4 0x6a nvme_bmc U2_N3 + 23 0x17 current 2 F 2:1 0x38 max5970 V12_U2E_A0 + 24 0x18 current 2 F 2:1 0x38 max5970 V3P3_U2E_A0 + 25 0x19 voltage 2 F 2:1 0x38 max5970 V12_U2E_A0 + 26 0x1a voltage 2 F 2:1 0x38 max5970 V3P3_U2E_A0 + 27 0x1b temp 2 F 2:1 0x6a nvme_bmc U2_N4 + 28 0x1c current 2 F 2:2 0x38 max5970 V12_U2F_A0 + 29 0x1d current 2 F 2:2 0x38 max5970 V3P3_U2F_A0 + 30 0x1e voltage 2 F 2:2 0x38 max5970 V12_U2F_A0 + 31 0x1f voltage 2 F 2:2 0x38 max5970 V3P3_U2F_A0 + 32 0x20 temp 2 F 2:2 0x6a nvme_bmc U2_N5 + 33 0x21 current 2 F 2:3 0x38 max5970 V12_U2G_A0 + 34 0x22 current 2 F 2:3 0x38 max5970 V3P3_U2G_A0 + 35 0x23 voltage 2 F 2:3 0x38 max5970 V12_U2G_A0 + 36 0x24 voltage 2 F 2:3 0x38 max5970 V3P3_U2G_A0 + 37 0x25 temp 2 F 2:3 0x6a nvme_bmc U2_N6 + 38 0x26 current 2 F 2:4 0x38 max5970 V12_U2H_A0 + 39 0x27 current 2 F 2:4 0x38 max5970 V3P3_U2H_A0 + 40 0x28 voltage 2 F 2:4 0x38 max5970 V12_U2H_A0 + 41 0x29 voltage 2 F 2:4 0x38 max5970 V3P3_U2H_A0 + 42 0x2a temp 2 F 2:4 0x6a nvme_bmc U2_N7 + 43 0x2b current 2 F 3:1 0x38 max5970 V12_U2I_A0 + 44 0x2c current 2 F 3:1 0x38 max5970 V3P3_U2I_A0 + 45 0x2d voltage 2 F 3:1 0x38 max5970 V12_U2I_A0 + 46 0x2e voltage 2 F 3:1 0x38 max5970 V3P3_U2I_A0 + 47 0x2f temp 2 F 3:1 0x6a nvme_bmc U2_N8 + 48 0x30 current 2 F 3:2 0x38 max5970 V12_U2J_A0 + 49 0x31 current 2 F 3:2 0x38 max5970 V3P3_U2J_A0 + 50 0x32 voltage 2 F 3:2 0x38 max5970 V12_U2J_A0 + 51 0x33 voltage 2 F 3:2 0x38 max5970 V3P3_U2J_A0 + 52 0x34 temp 2 F 3:2 0x6a nvme_bmc U2_N9 + 53 0x35 temp 2 B 1:1 0x6a m2_hp_only M2_A + 54 0x36 temp 2 B 1:2 0x6a m2_hp_only M2_B + 55 0x37 temp 2 B 1:4 0x4c tmp451 t6 + 56 0x38 temp 3 H - 0x24 tps546b24a V3P3_SP_A2 + 57 0x39 current 3 H - 0x24 tps546b24a V3P3_SP_A2 + 58 0x3a voltage 3 H - 0x24 tps546b24a V3P3_SP_A2 + 59 0x3b temp 3 H - 0x26 tps546b24a V3P3_SYS_A0 + 60 0x3c current 3 H - 0x26 tps546b24a V3P3_SYS_A0 + 61 0x3d voltage 3 H - 0x26 tps546b24a V3P3_SYS_A0 + 62 0x3e temp 3 H - 0x27 tps546b24a V5_SYS_A2 + 63 0x3f current 3 H - 0x27 tps546b24a V5_SYS_A2 + 64 0x40 voltage 3 H - 0x27 tps546b24a V5_SYS_A2 + 65 0x41 temp 3 H - 0x29 tps546b24a V1P8_SYS_A2 + 66 0x42 current 3 H - 0x29 tps546b24a V1P8_SYS_A2 + 67 0x43 voltage 3 H - 0x29 tps546b24a V1P8_SYS_A2 + 68 0x44 current 3 H - 0x3a max5970 V3P3_M2A_A0HP + 69 0x45 current 3 H - 0x3a max5970 V3P3_M2B_A0HP + 70 0x46 voltage 3 H - 0x3a max5970 V3P3_M2A_A0HP + 71 0x47 voltage 3 H - 0x3a max5970 V3P3_M2B_A0HP + 72 0x48 temp 3 H - 0x4c sbtsi CPU + 73 0x49 temp 3 H - 0x5a raa229618 VDD_VCORE + 74 0x4a temp 3 H - 0x5a raa229618 VDD_MEM_ABCD + 75 0x4b power 3 H - 0x5a raa229618 VDD_VCORE + 76 0x4c power 3 H - 0x5a raa229618 VDD_MEM_ABCD + 77 0x4d current 3 H - 0x5a raa229618 VDD_VCORE + 78 0x4e current 3 H - 0x5a raa229618 VDD_MEM_ABCD + 79 0x4f voltage 3 H - 0x5a raa229618 VDD_VCORE + 80 0x50 voltage 3 H - 0x5a raa229618 VDD_MEM_ABCD + 81 0x51 temp 3 H - 0x5b raa229618 VDDCR_SOC + 82 0x52 temp 3 H - 0x5b raa229618 VDD_MEM_EFGH + 83 0x53 power 3 H - 0x5b raa229618 VDDCR_SOC + 84 0x54 power 3 H - 0x5b raa229618 VDD_MEM_EFGH + 85 0x55 current 3 H - 0x5b raa229618 VDDCR_SOC + 86 0x56 current 3 H - 0x5b raa229618 VDD_MEM_EFGH + 87 0x57 voltage 3 H - 0x5b raa229618 VDDCR_SOC + 88 0x58 voltage 3 H - 0x5b raa229618 VDD_MEM_EFGH + 89 0x59 current 3 H - 0x5c isl68224 VPP_ABCD + 90 0x5a current 3 H - 0x5c isl68224 VPP_EFGH + 91 0x5b current 3 H - 0x5c isl68224 V1P8_SP3 + 92 0x5c voltage 3 H - 0x5c isl68224 VPP_ABCD + 93 0x5d voltage 3 H - 0x5c isl68224 VPP_EFGH + 94 0x5e voltage 3 H - 0x5c isl68224 V1P8_SP3 + 95 0x5f temp 4 F - 0x10 adm1272 V54_FAN + 96 0x60 current 4 F - 0x10 adm1272 V54_FAN + 97 0x61 voltage 4 F - 0x10 adm1272 V54_FAN + 98 0x62 temp 4 F - 0x14 adm1272 V54_HS_OUTPUT + 99 0x63 current 4 F - 0x14 adm1272 V54_HS_OUTPUT +100 0x64 voltage 4 F - 0x14 adm1272 V54_HS_OUTPUT +101 0x65 speed 4 F - 0x20 max31790 Southeast +102 0x66 speed 4 F - 0x20 max31790 Northeast +103 0x67 speed 4 F - 0x20 max31790 South +104 0x68 speed 4 F - 0x20 max31790 North +105 0x69 speed 4 F - 0x20 max31790 Southwest +106 0x6a speed 4 F - 0x20 max31790 Northwest +107 0x6b temp 4 F - 0x25 tps546b24a V0P96_NIC_VDD_A0HP +108 0x6c current 4 F - 0x25 tps546b24a V0P96_NIC_VDD_A0HP +109 0x6d voltage 4 F - 0x25 tps546b24a V0P96_NIC_VDD_A0HP +110 0x6e temp 4 F - 0x48 tmp117 Northeast +111 0x6f temp 4 F - 0x49 tmp117 North +112 0x70 temp 4 F - 0x4a tmp117 Northwest +113 0x71 temp 4 F - 0x67 bmr491 V12_SYS_A2 +114 0x72 power 4 F - 0x67 bmr491 V12_SYS_A2 +115 0x73 current 4 F - 0x67 bmr491 V12_SYS_A2 +116 0x74 voltage 4 F - 0x67 bmr491 V12_SYS_A2 +117 0x75 temp 3 H - 0x18 tse2004av DIMM_A0 +118 0x76 temp 3 H - 0x19 tse2004av DIMM_A1 +119 0x77 temp 3 H - 0x1a tse2004av DIMM_B0 +120 0x78 temp 3 H - 0x1b tse2004av DIMM_B1 +121 0x79 temp 3 H - 0x1c tse2004av DIMM_C0 +122 0x7a temp 3 H - 0x1d tse2004av DIMM_C1 +123 0x7b temp 3 H - 0x1e tse2004av DIMM_D0 +124 0x7c temp 3 H - 0x1f tse2004av DIMM_D1 +125 0x7d temp 4 F - 0x18 tse2004av DIMM_E0 +126 0x7e temp 4 F - 0x19 tse2004av DIMM_E1 +127 0x7f temp 4 F - 0x1a tse2004av DIMM_F0 +128 0x80 temp 4 F - 0x1b tse2004av DIMM_F1 +129 0x81 temp 4 F - 0x1c tse2004av DIMM_G0 +130 0x82 temp 4 F - 0x1d tse2004av DIMM_G1 +131 0x83 temp 4 F - 0x1e tse2004av DIMM_H0 +132 0x84 temp 4 F - 0x1f tse2004av DIMM_H1 diff --git a/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.toml b/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.toml index a13471017..05f2fc23b 100644 --- a/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.toml +++ b/humility-bin/tests/cmd/sensors/sensors.panic-on-boot.toml @@ -7,5 +7,3 @@ fs.base = "../cores" bin.name = "humility" args = "-d hubris.core.panic-on-boot sensors --list" - -status.code = 1 diff --git a/humility-bin/tests/cmd/sensors/sensors.sidecar-b-image-default.zip.stderr b/humility-bin/tests/cmd/sensors/sensors.sidecar-b-image-default.zip.stderr index f53ee36fe..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.sidecar-b-image-default.zip.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.sidecar-b-image-default.zip.stderr @@ -1 +0,0 @@ -humility: attached to archive diff --git a/humility-bin/tests/cmd/sensors/sensors.spoopy.0.stderr b/humility-bin/tests/cmd/sensors/sensors.spoopy.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.spoopy.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.spoopy.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.sprot_status.stderr b/humility-bin/tests/cmd/sensors/sensors.sprot_status.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.sprot_status.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.sprot_status.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.static-tasks.0.stderr b/humility-bin/tests/cmd/sensors/sensors.static-tasks.0.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.static-tasks.0.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.static-tasks.0.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.static-tasks.1.stderr b/humility-bin/tests/cmd/sensors/sensors.static-tasks.1.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.static-tasks.1.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.static-tasks.1.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.task.net.stderr b/humility-bin/tests/cmd/sensors/sensors.task.net.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.task.net.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.task.net.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.task.power.stderr b/humility-bin/tests/cmd/sensors/sensors.task.power.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.task.power.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.task.power.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.u16-ringbuf.stderr b/humility-bin/tests/cmd/sensors/sensors.u16-ringbuf.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.u16-ringbuf.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.u16-ringbuf.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-bin/tests/cmd/sensors/sensors.v6.stderr b/humility-bin/tests/cmd/sensors/sensors.v6.stderr index da2ede4a0..e69de29bb 100644 --- a/humility-bin/tests/cmd/sensors/sensors.v6.stderr +++ b/humility-bin/tests/cmd/sensors/sensors.v6.stderr @@ -1 +0,0 @@ -humility: attached to dump diff --git a/humility-cli/Cargo.toml b/humility-cli/Cargo.toml index 18f1d3638..23a8decaa 100644 --- a/humility-cli/Cargo.toml +++ b/humility-cli/Cargo.toml @@ -15,3 +15,10 @@ serde.workspace = true serde_json.workspace = true humility.workspace = true +humility-net-core.workspace = true + +humility-probes-core = { workspace = true, optional = true } + +[features] +default = ["probes"] +probes = ["humility-probes-core"] diff --git a/humility-cli/src/lib.rs b/humility-cli/src/lib.rs index 712333398..892bbc13b 100644 --- a/humility-cli/src/lib.rs +++ b/humility-cli/src/lib.rs @@ -7,7 +7,12 @@ pub mod env; use anyhow::{Context, Result, bail}; use clap::{ArgGroup, ArgMatches, Parser, parser::ValueSource}; use env::Environment; -use humility::{core::Core, hubris::HubrisArchive, msg, net, warn}; +use humility::{ + core::Core, + hubris::{HubrisArchive, HubrisArchiveDoneness, HubrisValidate}, + msg, net, warn, +}; +use std::time::Duration; #[derive(Parser, Debug, Clone)] #[clap( @@ -162,11 +167,223 @@ impl Cli { None => Ok(subargs_serial.map(|s| s.to_owned())), } } + + /// Loads an archive based on CLI arguments + /// + /// If `--archive` is specified, then the archive is loaded (and cooked to + /// the desired doneness). + /// + /// If `--dump` is specified, then the dump is loaded and the archive is + /// extracted from the dump (then cooked to the desired doneness). + /// + /// If neither is specified, then a default archive is returned, which + /// returns `false` from [`HubrisArchive::loaded`]. + // TODO(matt): this is terrible and I want to make it go away, but it won't + // happen quite yet. + fn load_archive_with_doneness( + &self, + doneness: HubrisArchiveDoneness, + ) -> Result { + let mut hubris = HubrisArchive::new(); + if let Some(archive) = &self.archive { + hubris.load(archive, doneness).with_context(|| { + format!("failed to load archive \"{}\"", archive) + })?; + } else if let Some(dump) = &self.dump { + hubris + .load_dump(dump, doneness) + .with_context(|| format!("failed to load dump \"{}\"", dump))?; + } + Ok(hubris) + } + + /// Attaches to a live core + /// + /// Uses the network-based core if `--ip` is provided in the [`Cli`]; + /// otherwises attaches to a probe. + pub fn attach_live( + &self, + hubris: Option<&HubrisArchive>, + validate: Option, + ) -> Result> { + let mut core = if self.dump.is_some() { + bail!("must be run against a live system"); + } else if let Some(ip) = &self.ip { + let Some(hubris) = hubris else { + bail!("cannot attach over net without Hubris archive"); + }; + let timeout = Duration::from_millis(self.timeout as u64); + humility_net_core::attach_net(*ip, hubris, timeout) + } else { + self.attach_probe(hubris) + }?; + if let Some(validate) = validate { + let Some(hubris) = hubris else { + bail!("cannot validate without Hubris archive"); + }; + hubris.validate(&mut *core, validate)?; + } + Ok(core) + } + + /// Attaches to a live core and check that the firmware id matches + /// + /// This is a thin wrapper around [`attach_live`](Self::attach_live) + pub fn attach_live_match( + &self, + hubris: &HubrisArchive, + ) -> Result> { + self.attach_live(Some(hubris), Some(HubrisValidate::ArchiveMatch)) + } + + /// Attaches to a live core and check that it has booted + /// + /// This is a thin wrapper around [`attach_live`](Self::attach_live) + pub fn attach_live_booted( + &self, + hubris: &HubrisArchive, + ) -> Result> { + self.attach_live(Some(hubris), Some(HubrisValidate::Booted)) + } + + #[cfg(feature = "probes")] + pub fn attach_probe( + &self, + hubris: Option<&HubrisArchive>, + ) -> Result> { + let probe = match self.probe.as_deref() { + Some("archive") => { + if let Some(hubris) = hubris { + return humility::core::attach_archive(hubris); + } else { + bail!("cannot specify `--probe=archive` with no archive"); + } + } + Some(p) => p, + None => "auto", + }; + + let chip = hubris.and_then(|h| h.chip()); + humility_probes_core::attach_to_chip(probe, chip.as_deref(), self.speed) + } + + #[cfg(not(feature = "probes"))] + pub fn attach_probe( + &self, + _hubris: Option<&HubrisArchive>, + ) -> Result> { + bail!("Did not build with probes!"); + } + + /// Attaches to a either a dump or a live system, depending on CLI arguments + /// + /// The `hubris` archive is mandatory if `validate` is `Some(..)` or if we + /// are trying to connect over the network. + pub fn attach_live_or_dump( + &self, + hubris: Option<&HubrisArchive>, + validate: Option, + ) -> Result> { + let mut core = if let Some(dump) = &self.dump { + let Some(hubris) = hubris else { + bail!("cannot load dump without archive"); + }; + humility::core::attach_dump(dump, hubris)? + } else if let Some(ip) = &self.ip { + let Some(hubris) = hubris else { + bail!("cannot connect over the network without archive"); + }; + let timeout = Duration::from_millis(self.timeout as u64); + humility_net_core::attach_net(*ip, hubris, timeout)? + } else { + self.attach_probe(hubris)? + }; + if let Some(validate) = validate { + let Some(hubris) = hubris else { + bail!("cannot validate without Hubris archive"); + }; + hubris.validate(&mut *core, validate)?; + } + Ok(core) + } + + /// Attaches to a dump or a live system and checks that it has booted + /// + /// This is a thin wrapper around + /// [`attach_live_or_dump`](Self::attach_live_or_dump). + pub fn attach_live_or_dump_booted( + &self, + hubris: &HubrisArchive, + ) -> Result> { + self.attach_live_or_dump(Some(hubris), Some(HubrisValidate::Booted)) + } + + /// Attaches to a dump or a live system and validates the version + /// + /// This is a thin wrapper around + /// [`attach_live_or_dump`](Self::attach_live_or_dump). + pub fn attach_live_or_dump_match( + &self, + hubris: &HubrisArchive, + ) -> Result> { + self.attach_live_or_dump( + Some(hubris), + Some(HubrisValidate::ArchiveMatch), + ) + } + + /// Attaches to a dump + /// + /// Reads from the `--dump` argument to pick a target file + pub fn attach_dump(&self, hubris: &HubrisArchive) -> Result> { + let core = if let Some(dump) = &self.dump { + humility::core::attach_dump(dump, hubris)? + } else { + bail!("must be run against a dump"); + }; + Ok(core) + } + + /// Returns a [`HubrisArchive`] built from the context's [`Cli`] data + /// + /// If loading the archive fails, then an error is returned + pub fn archive(&self) -> Result { + let a = self.load_archive_with_doneness(HubrisArchiveDoneness::Cook)?; + if !a.loaded() { + if self.environment.is_some() { + bail!("must provide a Hubris archive, dump, or name"); + } else { + bail!("must provide a Hubris archive or dump"); + } + } + Ok(a) + } + + /// Tries to load an archive + /// + /// Returns `Ok(None)` if no archive was specified at the CLI. + pub fn try_archive(&self) -> Result> { + let a = self.load_archive_with_doneness(HubrisArchiveDoneness::Cook)?; + if !a.loaded() { Ok(None) } else { Ok(Some(a)) } + } + + /// Returns a raw archive built from the context's [`Cli`] data + /// + /// The raw archive is equivalent to the bytes of a ZIP file + /// + /// If loading the archive fails, then an error is returned + pub fn raw_archive(&self) -> Result> { + let a = self.load_archive_with_doneness(HubrisArchiveDoneness::Raw)?; + let out = a.take_raw_archive(); + if out.is_empty() { + bail!("no archive available"); + } else { + Ok(out) + } + } } pub struct ExecutionContext { - pub core: Option>, - pub archive: Option, pub environment: Option, pub cli: Cli, } @@ -354,6 +571,6 @@ impl ExecutionContext { } } - Ok(ExecutionContext { core: None, archive: None, environment, cli }) + Ok(ExecutionContext { environment, cli }) } } diff --git a/humility-cmd/Cargo.toml b/humility-cmd/Cargo.toml index e0fcdf48b..53a0c6b8d 100644 --- a/humility-cmd/Cargo.toml +++ b/humility-cmd/Cargo.toml @@ -8,11 +8,4 @@ anyhow.workspace = true clap.workspace = true humility.workspace = true -humility-net-core.workspace = true humility-cli.workspace = true - -humility-probes-core = { workspace = true, optional = true } - -[features] -default = ["probes"] -probes = ["humility-probes-core"] diff --git a/humility-cmd/src/lib.rs b/humility-cmd/src/lib.rs index 9e44fc78d..83e1a9223 100644 --- a/humility-cmd/src/lib.rs +++ b/humility-cmd/src/lib.rs @@ -2,47 +2,12 @@ // License, v. 2.0. If a copy of the MPL was not distributed with this // file, You can obtain one at https://mozilla.org/MPL/2.0/. -use anyhow::{Result, bail}; +use anyhow::Result; use clap::Command as ClapCommand; -use humility::core::Core; -use humility::hubris::*; -use humility_cli::Cli; -use std::time::Duration; - -#[allow(dead_code)] -#[derive(Copy, Clone, Debug, PartialEq, Eq)] -pub enum Archive { - /// Load a Hubris archive, failing if one is not present - Required, - /// Load a Hubris archive if available (as either a command-line flag or - /// environmental variable); continue to run if no archive is present - Optional, - /// Do not load a Hubris archive, even if the command-line flag or - /// environmental variable is set. This saves a small amount of start-up - /// time for subcommands which don't require a Hubris archive. - Ignored, -} - -#[allow(dead_code)] -#[derive(Copy, Clone, Debug)] -pub enum Attach { - LiveOnly, - DumpOnly, - Any, -} - -#[allow(dead_code)] -#[derive(Copy, Clone, Debug)] -pub enum Validate { - Match, - Booted, - None, -} pub struct Command { pub app: ClapCommand, pub name: &'static str, - pub kind: CommandKind, pub run: fn(&mut humility_cli::ExecutionContext) -> Result<()>, } @@ -52,143 +17,6 @@ impl Command { } } -pub enum CommandKind { - /// Attached to a live system or dump - Attached { archive: Archive, attach: Attach, validate: Validate }, - /// Not attached to a live system or dump - Unattached { archive: Archive }, - /// Will never attach: any options attaching should be an error - Detached { archive: Archive }, - /// Operate on a raw archive, from either the command line or a dump - Raw, -} - -#[cfg(feature = "probes")] -pub fn attach_probe( - args: &Cli, - hubris: &HubrisArchive, -) -> Result> { - let probe = match &args.probe { - Some(p) => p, - None => "auto", - }; - - humility_probes_core::attach(probe, hubris, None) -} - -#[cfg(not(feature = "probes"))] -pub fn attach_probe( - _args: &Cli, - _hubris: &HubrisArchive, -) -> Result> { - bail!("Did not build with probes!"); -} - -pub fn attach_live( - args: &Cli, - hubris: &HubrisArchive, -) -> Result> { - if args.dump.is_some() { - bail!("must be run against a live system"); - } else if args.ip.is_some() { - attach_net(args, hubris) - } else { - attach_probe(args, hubris) - } -} - -pub fn attach_dump( - args: &Cli, - hubris: &HubrisArchive, -) -> Result> { - if let Some(dump) = &args.dump { - humility::core::attach_dump(dump, hubris) - } else { - bail!("must be run against a dump"); - } -} - -pub fn attach_net(args: &Cli, hubris: &HubrisArchive) -> Result> { - if let Some(ip) = args.ip { - let timeout = Duration::from_millis(args.timeout as u64); - humility_net_core::attach_net(ip, hubris, timeout) - } else { - bail!("must be run against a specified IP address"); - } -} - -pub fn attach( - context: &mut humility_cli::ExecutionContext, - attach: Attach, - validate: Validate, - mut run: impl FnMut(&mut humility_cli::ExecutionContext) -> Result<()>, -) -> Result<()> { - let hubris = context.archive.as_ref().unwrap(); - - if context.core.is_none() { - context.core = Some(match attach { - Attach::LiveOnly => attach_live(&context.cli, hubris), - Attach::DumpOnly => attach_dump(&context.cli, hubris), - Attach::Any => { - // - // Our Clap constraints prevent us from having more than one - // of these set. - // - if context.cli.dump.is_some() { - attach_dump(&context.cli, hubris) - } else if context.cli.probe == Some("archive".to_string()) { - // - // If our probe is set to the special "archive" token, we - // will always attach as an archive. This allows for - // commands to be run against an archive even on a machine - // that has probes attached. - // - humility::core::attach_archive(hubris) - } else { - use humility::core::ProbeError; - - match attach_live(&context.cli, hubris) { - Ok(core) => Ok(core), - Err(err) if context.cli.probe.is_none() => { - if let Some(ProbeError::NoProbeFound) = - err.downcast_ref::() - { - // - // We don't have a dump, we don't seem to - // be plugged into anything and the user - // didn't indicate a probe. In this case, - // we will attach to the archive itself, - // hopefully violating the principle of least - // surprise! - // - humility::core::attach_archive(hubris) - } else { - Err(err) - } - } - Err(err) => Err(err), - } - } - } - }?); - } - - // we know from above we have set up a core if we hadn't previously - let core = context.core.as_mut().unwrap(); - - match validate { - Validate::Booted => { - hubris.validate(&mut **core, HubrisValidate::Booted)?; - } - Validate::Match => { - hubris.validate(&mut **core, HubrisValidate::ArchiveMatch)?; - } - Validate::None => {} - } - - (run)(context) -} - pub struct Dumper { /// Word size, in bytes pub size: usize, diff --git a/humility-core/src/hubris.rs b/humility-core/src/hubris.rs index 580c467b6..1b0139b1b 100644 --- a/humility-core/src/hubris.rs +++ b/humility-core/src/hubris.rs @@ -799,8 +799,9 @@ pub struct HubrisArchive { #[rustfmt::skip::macros(anyhow, bail)] impl HubrisArchive { - pub fn new() -> Result { - Ok(Self { + #[expect(clippy::new_without_default)] + pub fn new() -> HubrisArchive { + Self { archive: Vec::new(), imageid: None, manifest: Default::default(), @@ -834,7 +835,7 @@ impl HubrisArchive { definitions: MultiMap::new(), namespaces: Namespaces::new(), extern_regions: ExternRegions::new(), - }) + } } pub fn instr_len(&self, addr: u32) -> Option { @@ -1689,6 +1690,11 @@ impl HubrisArchive { Ok(()) } + /// Destroys the `HubrisArchive`, returning the raw archive data + pub fn take_raw_archive(self) -> Vec { + self.archive + } + pub fn load_dump( &mut self, dumpfile: &str, @@ -6524,7 +6530,9 @@ impl HubrisPrintFormat { #[derive(Copy, Clone, Debug, PartialEq, Eq)] pub enum HubrisValidate { + /// Validate that the archive matches ArchiveMatch, + /// Validate that the archive matches and the system has booted Booted, } diff --git a/humility-hiffy/src/lib.rs b/humility-hiffy/src/lib.rs index 64e99fe17..8c16599c5 100644 --- a/humility-hiffy/src/lib.rs +++ b/humility-hiffy/src/lib.rs @@ -362,6 +362,21 @@ impl<'a> HiffyContext<'a> { .unwrap_or(Ok(256))? }; + let functions = Self::get_hiffy_functions(hubris)?; + + Ok(Self { + hubris, + hiffy, + scratch_size, + timeout, + state: State::Initialized, + functions, + }) + } + + pub fn get_hiffy_functions( + hubris: &'a HubrisArchive, + ) -> Result { let mut function_map = HashMap::new(); let funcs = Self::definition(hubris, "HIFFY_FUNCTIONS")?; let goff = hubris @@ -435,15 +450,7 @@ impl<'a> HiffyContext<'a> { function_map.insert(func.name.clone(), func); } - - Ok(Self { - hubris, - hiffy, - scratch_size, - timeout, - state: State::Initialized, - functions: HiffyFunctions(function_map), - }) + Ok(HiffyFunctions(function_map)) } /// Returns the size of the `HIFFY_DATA` array, or 0 if unsupported diff --git a/humility-probes-core/src/lib.rs b/humility-probes-core/src/lib.rs index e53214563..89ca2e881 100644 --- a/humility-probes-core/src/lib.rs +++ b/humility-probes-core/src/lib.rs @@ -9,7 +9,6 @@ use ::probe_rs::{ use humility::core::{Core, ProbeError}; use anyhow::{Result, anyhow, bail}; -use humility::hubris::HubrisArchive; use humility::msg; mod probe_rs; @@ -228,14 +227,3 @@ pub fn attach_for_flashing( ) -> Result> { attach_to_chip(probe, Some(chip), speed_khz) } - -pub fn attach( - probe: &str, - hubris: &HubrisArchive, - speed_khz: Option, -) -> Result> { - match hubris.chip() { - Some(s) => attach_to_chip(probe, Some(&s), speed_khz), - None => attach_to_chip(probe, None, speed_khz), - } -}