use crate::config::Party;
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
#[serde(deny_unknown_fields)]
pub struct HardwareDoorbellParty {
pub core: Party,
pub irq: u32,
#[serde(default)]
pub window: DoorbellWindow,
pub memory: u32,
pub page_memory: u32,
pub page_irq: u32,
}
#[derive(Debug, Clone, Copy, Default, PartialEq, Eq, serde::Serialize, serde::Deserialize)]
#[serde(rename_all = "lowercase")]
pub enum DoorbellWindow {
#[default]
A,
B,
}