19 kTopDarjeelingPlicIrqIdCount = kTopDarjeelingPlicIrqIdLast + 1,
22static const dt_instance_id_t instance_from_irq[kTopDarjeelingPlicIrqIdCount] = {
186 if (irq <= kTopDarjeelingPlicIrqIdLast) {
187 return instance_from_irq[irq];
194 kTopDarjeelingAlertIdCount = kTopDarjeelingAlertIdLast + 1,
197static const dt_instance_id_t instance_from_alert[kTopDarjeelingAlertIdCount] = {
304 if (alert <= kTopDarjeelingAlertIdLast) {
305 return instance_from_alert[alert];
361 if (dev < kDtInstanceIdCount) {
455 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiHost0Sd0,
460 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiHost0Sd1,
465 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiHost0Sd2,
470 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiHost0Sd3,
475 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiDeviceSd0,
480 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiDeviceSd1,
485 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiDeviceSd2,
490 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiDeviceSd3,
495 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsI2c0Scl,
500 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsI2c0Sda,
505 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio0,
510 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio1,
515 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio2,
520 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio3,
525 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio4,
530 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio5,
535 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio6,
540 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio7,
545 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio8,
550 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio9,
555 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio10,
560 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio11,
565 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio12,
570 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio13,
575 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio14,
580 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio15,
585 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio16,
590 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio17,
595 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio18,
600 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio19,
605 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio20,
610 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio21,
615 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio22,
620 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio23,
625 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio24,
630 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio25,
635 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio26,
640 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio27,
645 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio28,
650 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio29,
655 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio30,
660 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsGpioGpio31,
665 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiDeviceSck,
670 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiDeviceCsb,
675 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiDeviceTpmCsb,
680 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsUart0Rx,
685 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi0,
690 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi1,
695 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi2,
700 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi3,
705 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi4,
710 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi5,
715 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi6,
720 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi7,
725 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi8,
730 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi9,
735 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi10,
740 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpi11,
745 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiHost0Sck,
750 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSpiHost0Csb,
755 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsUart0Tx,
760 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo0,
765 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo1,
770 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo2,
775 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo3,
780 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo4,
785 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo5,
790 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo6,
795 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo7,
800 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo8,
805 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo9,
810 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo10,
815 .mio_out_or_direct_pad = kTopDarjeelingDirectPadsSocProxySocGpo11,
822#define TRY_GET_PAD(pad, default) ({ if ((pad) < (dt_pad_t)0 || (pad) >= kDtPadCount) return (default); &dt_pad[pad]; })
829 return (dt_pinmux_mio_out_t)TRY_GET_PAD(pad, 0)->mio_out_or_direct_pad;
838 return (dt_pinmux_insel_t)TRY_GET_PAD(pad, 0)->insel;
842 return (dt_pinmux_direct_pad_t)TRY_GET_PAD(pad, 0)->mio_out_or_direct_pad;
849 .periph_input_or_direct_pad = 0,
850 .outsel_or_dt_pad = kDtPinmuxOutselConstantHighZ,
858 .periph_input_or_direct_pad = 0,
859 .outsel_or_dt_pad = kDtPinmuxOutselConstantZero,
867 .periph_input_or_direct_pad = 0,
868 .outsel_or_dt_pad = kDtPinmuxOutselConstantOne,