13#include "hw/top/dt/api.h"
19 kTopScafiDeprecatedPlicIrqIdCount = kTopScafiDeprecatedPlicIrqIdLast + 1,
22static const dt_instance_id_t instance_from_irq[kTopScafiDeprecatedPlicIrqIdCount] = {
114 if (irq <= kTopScafiDeprecatedPlicIrqIdLast) {
115 return instance_from_irq[irq];
178 .mio_out_or_direct_pad = 0,
183 .mio_out_or_direct_pad = 0,
423 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiHost0Sd0,
428 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiHost0Sd1,
433 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiHost0Sd2,
438 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiHost0Sd3,
443 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiDeviceSd0,
448 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiDeviceSd1,
453 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiDeviceSd2,
458 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiDeviceSd3,
461 [kDtPadUsbdevUsbDp] = {
463 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsUsbdevUsbDp,
466 [kDtPadUsbdevUsbDn] = {
468 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsUsbdevUsbDn,
473 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiDeviceSck,
478 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiDeviceCsb,
483 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiHost0Sck,
488 .mio_out_or_direct_pad = kTopScafiDeprecatedDirectPadsSpiHost0Csb,
495#define TRY_GET_PAD(pad, default) ({ if ((pad) < (dt_pad_t)0 || (int)(pad) >= kDtPadCount) return (default); &dt_pad[pad]; })
502 return (dt_pinmux_mio_out_t)TRY_GET_PAD(pad, 0)->mio_out_or_direct_pad;
511 return (dt_pinmux_insel_t)TRY_GET_PAD(pad, 0)->insel;
515 return (dt_pinmux_direct_pad_t)TRY_GET_PAD(pad, 0)->mio_out_or_direct_pad;
522 .periph_input_or_direct_pad = 0,
523 .outsel_or_dt_pad = kDtPinmuxOutselConstantHighZ,
531 .periph_input_or_direct_pad = 0,
532 .outsel_or_dt_pad = kDtPinmuxOutselConstantZero,
540 .periph_input_or_direct_pad = 0,
541 .outsel_or_dt_pad = kDtPinmuxOutselConstantOne,