Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add control-plane-agent and host-sp-comms to Grapefruit #1898

Merged
merged 5 commits into from
Oct 11, 2024

Conversation

mkeeter
Copy link
Collaborator

@mkeeter mkeeter commented Oct 8, 2024

  • Rename gimlet_seq to cpu_seq in Idol and API crates, and use it for both Gimlet and Grapefruit
    • Remove fan power control APIs, which are seemingly unused
    • Update grapefruit-seq-server to do mock power control, like mock-gimlet-seq-server
  • Rename the gimlet BSP in control-plane-agent to cpu-sled, and use it for both Gimlet and Cosmo
  • Add usart6 support to host-sp-comms, since that's what Grapefruit uses
  • Add host-sp-comms, control-plane-agent, and stm32h7-update-server to grapefruit/app.toml
  • Initial Grapefruit / Cosmo inventory support in control-plane-agent and host-sp-comms

Opening as a draft because this depends on oxidecomputer/management-gateway-service#297

@mkeeter
Copy link
Collaborator Author

mkeeter commented Oct 8, 2024

closes #1793

@mkeeter mkeeter force-pushed the grapefruit-control-plane-agent branch 2 times, most recently from 9301406 to 003218c Compare October 9, 2024 17:44
@nathanaelhuffman
Copy link
Contributor

➜  hubris git:(grapefruit-control-plane-agent) ✗ humility console-proxy attach
humility: attached via ST-Link V3


Nano-Bootloader 0.6.0 [panic_console,prompt_animation,x86_paddr,x86_vaddr]
Copyright 2024 Oxide Computer Company
All Rights Reserved.

>

lgtm and works on hardware with the uart looped through the FPGA.

@mkeeter mkeeter marked this pull request as ready for review October 10, 2024 18:40
Copy link
Contributor

@jgallagher jgallagher left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

control-plane-agent / host-sp-comms changes LGTM!

description: "Cosmo SP5 host cpu",
capabilities: DeviceCapabilities::HAS_SERIAL_CONSOLE,
presence: DevicePresence::Present, // TODO: ok to assume always present?
},
// If we're building for gimlet, we always claim to have host boot flash.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
// If we're building for gimlet, we always claim to have host boot flash.
// If we're building for a compute sled, we always claim to have host boot flash.

@@ -1558,6 +1575,10 @@ cfg_if::cfg_if! {
// gimletlet doesn't have an SP3 to interrupt, but we can wire up an LED
// to one of the exposed E2-E6 pins to see it visually.
const SP_TO_SP3_INT_L: sys_api::PinSet = sys_api::Port::E.pin(2);
} else if #[cfg(target_board = "grapefruit")] {
// we don't have an SP3 interrupt pin, so pick an unconnected GPIO
// TODO this is specific to SP3; but SP5 is coming!
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this "the name of the constant is wrong" or "we don't yet know which pin will be used for interrupts" or both?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Both! We should probably rename the constant to something like SP_TO_HOST_CPU_INT_L, but we also don't have any SP5 boards that actually use this pin (since Grapefruit doesn't have it wired up). That will come in a future #[cfg(target_board = "cosmo")] block.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On second though, I can do the renaming here (552e195)

@mkeeter mkeeter force-pushed the grapefruit-control-plane-agent branch from 003218c to 420caa1 Compare October 11, 2024 19:09
@mkeeter mkeeter enabled auto-merge (squash) October 11, 2024 19:12
@mkeeter mkeeter merged commit ff04d42 into master Oct 11, 2024
106 checks passed
@mkeeter mkeeter deleted the grapefruit-control-plane-agent branch October 11, 2024 19:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants