46 [kDtSysrstCtrlRegBlockCore] = 0x40430000,
59 [kDtSysrstCtrlPeriphIoAcPresent] = {
64 .outsel_or_dt_pad = 0,
67 [kDtSysrstCtrlPeriphIoKey0In] = {
72 .outsel_or_dt_pad = 0,
75 [kDtSysrstCtrlPeriphIoKey1In] = {
80 .outsel_or_dt_pad = 0,
83 [kDtSysrstCtrlPeriphIoKey2In] = {
88 .outsel_or_dt_pad = 0,
91 [kDtSysrstCtrlPeriphIoPwrbIn] = {
96 .outsel_or_dt_pad = 0,
99 [kDtSysrstCtrlPeriphIoLidOpen] = {
104 .outsel_or_dt_pad = 0,
107 [kDtSysrstCtrlPeriphIoBatDisable] = {
111 .periph_input_or_direct_pad = 0,
115 [kDtSysrstCtrlPeriphIoKey0Out] = {
119 .periph_input_or_direct_pad = 0,
123 [kDtSysrstCtrlPeriphIoKey1Out] = {
127 .periph_input_or_direct_pad = 0,
131 [kDtSysrstCtrlPeriphIoKey2Out] = {
135 .periph_input_or_direct_pad = 0,
139 [kDtSysrstCtrlPeriphIoPwrbOut] = {
143 .periph_input_or_direct_pad = 0,
147 [kDtSysrstCtrlPeriphIoZ3Wakeup] = {
151 .periph_input_or_direct_pad = 0,
155 [kDtSysrstCtrlPeriphIoEcRstL] = {
159 .periph_input_or_direct_pad = kTopEarlgreyDirectPadsSysrstCtrlAonEcRstL,
163 [kDtSysrstCtrlPeriphIoFlashWpL] = {
167 .periph_input_or_direct_pad = kTopEarlgreyDirectPadsSysrstCtrlAonFlashWpL,
180#define TRY_GET_DT(dt, default) ({ if ((dt) < (dt_sysrst_ctrl_t)0 || (dt) >= kDtSysrstCtrlCount) return (default); &sysrst_ctrl_desc[dt]; })
198 return TRY_GET_DT(dt, 0xdeadbeef)->base_addr[reg_block];
205 if (first_irq == kDtPlicIrqIdNone) {
206 return kDtPlicIrqIdNone;
216 if (first_irq == kDtPlicIrqIdNone) {
229 return (
dt_alert_id_t)((uint32_t)sysrst_ctrl_desc[dt].first_alert + (uint32_t)alert);
236 if (alert < sysrst_ctrl_desc[dt].first_alert || alert >= sysrst_ctrl_desc[dt].first_alert + (
dt_alert_id_t)count) {
247 return TRY_GET_DT(dt, kDtPeriphIoConstantHighZ)->periph_io[sig];