/*
 * Copyright (c) Atmosphère-NX
 *
 * This program is free software; you can redistribute it and/or modify it
 * under the terms and conditions of the GNU General Public License,
 * version 2, as published by the Free Software Foundation.
 *
 * This program is distributed in the hope it will be useful, but WITHOUT
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
 * more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/* NOTE: This file is auto-generated by wake_pin_gen.py, do not edit manually. */

constexpr inline const WakePinConfig InitialWakePinConfigsIcosa[] = {
    { ams::wec::WakeEvent_PexWakeN,           false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_GpioPortA6,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_QspiCsN,            false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Spi2Mosi,           false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_ExtconDetS,         true,  ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_McuIrq,             false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Uart2Cts,           true,  ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Uart3Cts,           true,  ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_WifiWakeAp,         true,  ams::wec::WakeEventLevel_High },
 /* { ams::wec::WakeEvent_AoTag2Pmc,                                               }, */
    { ams::wec::WakeEvent_ExtconDetU,         true,  ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_NfcInt,             false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Gen1I2cSda,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Gen2I2cSda,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_CradleIrq,          true,  ams::wec::WakeEventLevel_Low  },
    { ams::wec::WakeEvent_GpioPortK6,         false, ams::wec::WakeEventLevel_Auto },
 /* { ams::wec::WakeEvent_RtcIrq,                                                  }, */
    { ams::wec::WakeEvent_Sdmmc1Dat1,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Sdmmc2Dat1,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_HdmiCec,            false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Gen3I2cSda,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_GpioPortL1,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Clk_32kOut,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_PwrI2cSda,          false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_ButtonPowerOn,      false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_ButtonVolUp,        false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_ButtonVolDown,      false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_ButtonSlideSw,      true,  ams::wec::WakeEventLevel_Low  },
    { ams::wec::WakeEvent_ButtonHome,         false, ams::wec::WakeEventLevel_Auto },
 /* { ams::wec::WakeEvent_AlsProxInt,                                              }, */
    { ams::wec::WakeEvent_TempAlert,          false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Bq24190Irq,         true,  ams::wec::WakeEventLevel_Low  },
    { ams::wec::WakeEvent_SdCd,               true,  ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_GpioPortZ2,         false, ams::wec::WakeEventLevel_Auto },
 /* { ams::wec::WakeEvent_Utmip0,                                                  }, */
 /* { ams::wec::WakeEvent_Utmip1,                                                  }, */
 /* { ams::wec::WakeEvent_Utmip2,                                                  }, */
 /* { ams::wec::WakeEvent_Utmip3,                                                  }, */
 /* { ams::wec::WakeEvent_Uhsic,                                                   }, */
 /* { ams::wec::WakeEvent_Wake2PmcXusbSystem,                                      }, */
    { ams::wec::WakeEvent_Sdmmc3Dat1,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Sdmmc4Dat1,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_CamI2cScl,          false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_CamI2cSda,          true,  ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_GpioPortZ5,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_DpHpd0,             false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_PwrIntN,            true,  ams::wec::WakeEventLevel_Low  },
    { ams::wec::WakeEvent_BtWakeAp,           true,  ams::wec::WakeEventLevel_Low  },
    { ams::wec::WakeEvent_HdmiIntDpHpd,       false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_UsbVbusEn0,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_UsbVbusEn1,         false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_LcdRst,             false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_LcdGpio1,           false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_LcdGpio2,           false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_Uart4Cts,           false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_ModemWakeAp,        false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_TouchInt,           false, ams::wec::WakeEventLevel_Auto },
    { ams::wec::WakeEvent_MotionInt,          false, ams::wec::WakeEventLevel_Auto },
};

constexpr inline size_t NumInitialWakePinConfigsIcosa = util::size(InitialWakePinConfigsIcosa);
