13#include "hw/top/dt/dt_api.h"
19 kTopEnglishbreakfastPlicIrqIdCount = kTopEnglishbreakfastPlicIrqIdLast + 1,
22static const dt_instance_id_t instance_from_irq[kTopEnglishbreakfastPlicIrqIdCount] = {
114 if (irq <= kTopEnglishbreakfastPlicIrqIdLast) {
115 return instance_from_irq[irq];
143 if (dev < kDtInstanceIdCount) {
177 .mio_out_or_direct_pad = 0,
182 .mio_out_or_direct_pad = 0,
422 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiHost0Sd0,
427 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiHost0Sd1,
432 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiHost0Sd2,
437 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiHost0Sd3,
442 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiDeviceSd0,
447 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiDeviceSd1,
452 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiDeviceSd2,
457 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiDeviceSd3,
460 [kDtPadUsbdevUsbDp] = {
462 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsUsbdevUsbDp,
465 [kDtPadUsbdevUsbDn] = {
467 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsUsbdevUsbDn,
472 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiDeviceSck,
477 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiDeviceCsb,
482 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiHost0Sck,
487 .mio_out_or_direct_pad = kTopEnglishbreakfastDirectPadsSpiHost0Csb,
494#define TRY_GET_PAD(pad, default) ({ if ((pad) < (dt_pad_t)0 || (pad) >= kDtPadCount) return (default); &dt_pad[pad]; })
501 return (dt_pinmux_mio_out_t)TRY_GET_PAD(pad, 0)->mio_out_or_direct_pad;
510 return (dt_pinmux_insel_t)TRY_GET_PAD(pad, 0)->insel;
514 return (dt_pinmux_direct_pad_t)TRY_GET_PAD(pad, 0)->mio_out_or_direct_pad;
521 .periph_input_or_direct_pad = 0,
522 .outsel_or_dt_pad = kDtPinmuxOutselConstantHighZ,
530 .periph_input_or_direct_pad = 0,
531 .outsel_or_dt_pad = kDtPinmuxOutselConstantZero,
539 .periph_input_or_direct_pad = 0,
540 .outsel_or_dt_pad = kDtPinmuxOutselConstantOne,