Lines Matching refs:index

602 #define RA_SDMMC_IRQ_CONFIG_INIT(index)                                                            \  argument
606 R_ICU->IELSR[DT_INST_IRQ_BY_NAME(index, accs, irq)] = \
607 ELC_EVENT_SDMMC_ACCS(DT_INST_PROP(index, channel)); \
608 R_ICU->IELSR[DT_INST_IRQ_BY_NAME(index, card, irq)] = \
609 ELC_EVENT_SDMMC_CARD(DT_INST_PROP(index, channel)); \
610 R_ICU->IELSR[DT_INST_IRQ_BY_NAME(index, dma_req, irq)] = \
611 ELC_EVENT_SDMMC_DMA_REQ(DT_INST_PROP(index, channel)); \
613 IRQ_CONNECT(DT_INST_IRQ_BY_NAME(index, accs, irq), \
614 DT_INST_IRQ_BY_NAME(index, accs, priority), ra_sdmmc_accs_isr, \
615 DEVICE_DT_INST_GET(index), 0); \
616 IRQ_CONNECT(DT_INST_IRQ_BY_NAME(index, card, irq), \
617 DT_INST_IRQ_BY_NAME(index, card, priority), ra_sdmmc_card_isr, \
618 DEVICE_DT_INST_GET(index), 0); \
619 IRQ_CONNECT(DT_INST_IRQ_BY_NAME(index, dma_req, irq), \
620 DT_INST_IRQ_BY_NAME(index, dma_req, priority), ra_sdmmc_dma_req_isr, \
621 DEVICE_DT_INST_GET(index), 0); \
623 irq_enable(DT_INST_IRQ_BY_NAME(index, accs, irq)); \
624 irq_enable(DT_INST_IRQ_BY_NAME(index, card, irq)); \
625 irq_enable(DT_INST_IRQ_BY_NAME(index, dma_req, irq)); \
628 #define RA_SDHI_EN(index) .sdhi_en = GPIO_DT_SPEC_INST_GET_OR(index, enable_gpios, {0}) argument
630 #define RA_SDMMC_DTC_INIT(index) \ argument
631 sdhc_ra_priv_##index.fsp_config.p_lower_lvl_transfer = &sdhc_ra_priv_##index.transfer;
633 #define RA_SDMMC_DTC_STRUCT_INIT(index) \ argument
648 .transfer_cfg_extend = {.activation_source = DT_INST_IRQ_BY_NAME(index, dma_req, irq)}, \
651 .p_info = &sdhc_ra_priv_##index.transfer_info, \
652 .p_extend = &sdhc_ra_priv_##index.transfer_cfg_extend, \
655 .p_ctrl = &sdhc_ra_priv_##index.transfer_ctrl, \
656 .p_cfg = &sdhc_ra_priv_##index.transfer_cfg, \
660 #define RA_SDHC_INIT(index) \ argument
662 PINCTRL_DT_INST_DEFINE(index); \
664 static const struct sdhc_ra_config sdhc_ra_config_##index = { \
665 .pcfg = PINCTRL_DT_INST_DEV_CONFIG_GET(index), \
666 .regs = (R_SDHI0_Type *)DT_INST_REG_ADDR(index), \
668 void r_sdhi_callback_##index(sdmmc_callback_args_t *p_args) \
670 const struct device *dev = DEVICE_DT_INST_GET(index); \
681 static struct sdhc_ra_priv sdhc_ra_priv_##index = { \
686 .channel = DT_INST_PROP(index, channel), \
687 .bus_width = DT_INST_PROP(index, bus_width), \
688 .access_ipl = DT_INST_IRQ_BY_NAME(index, accs, priority), \
689 .access_irq = DT_INST_IRQ_BY_NAME(index, accs, irq), \
690 .card_ipl = DT_INST_IRQ_BY_NAME(index, card, priority), \
691 .card_irq = DT_INST_IRQ_BY_NAME(index, card, irq), \
692 .dma_req_ipl = DT_INST_IRQ_BY_NAME(index, dma_req, priority), \
693 .dma_req_irq = DT_INST_IRQ_BY_NAME(index, dma_req, irq), \
695 .p_callback = r_sdhi_callback_##index, \
696 .card_detect = DT_INST_PROP(index, card_detect), \
697 .write_protect = DT_INST_PROP(index, write_protect), \
699 .p_lower_lvl_transfer = &sdhc_ra_priv_##index.transfer, \
702 .f_max = DT_INST_PROP(index, max_bus_freq), \
703 .f_min = DT_INST_PROP(index, min_bus_freq), \
704 .max_current_330 = DT_INST_PROP(index, max_current_330), \
705 .max_current_180 = DT_INST_PROP(index, max_current_180), \
706 .power_delay = DT_INST_PROP_OR(index, power_delay_ms, 0), \
712 .high_spd_support = (DT_INST_PROP(index, bus_width) == 4) \
721 .bus_4_bit_support = (DT_INST_PROP(index, bus_width) == 4) \
726 RA_SDHI_EN(index), \
727 RA_SDMMC_DTC_STRUCT_INIT(index)}; \
729 static int sdhc_ra_init##index(const struct device *dev) \
731 RA_SDMMC_DTC_INIT(index); \
732 RA_SDMMC_IRQ_CONFIG_INIT(index); \
740 DEVICE_DT_INST_DEFINE(index, sdhc_ra_init##index, NULL, &sdhc_ra_priv_##index, \
741 &sdhc_ra_config_##index, POST_KERNEL, CONFIG_SDHC_INIT_PRIORITY, \