MCPcopy Create free account
hub / github.com/Moddable-OpenSource/moddable / init_spi

Function init_spi

modules/network/ethernet/esp32/ethernet.c:561–594  ·  view source on GitHub ↗

Initializes the SPI interface for the Ethernet board */

Source from the content-addressed store, hash-verified

559 Initializes the SPI interface for the Ethernet board
560*/
561static void init_spi() {
562#ifdef MODDEF_ETHERNET_SPI_MISO_PIN
563 spi_bus_config_t buscfg = {
564 .miso_io_num = MODDEF_ETHERNET_SPI_MISO_PIN,
565 .mosi_io_num = MODDEF_ETHERNET_SPI_MOSI_PIN,
566 .sclk_io_num = MODDEF_ETHERNET_SPI_SCK_PIN,
567 .quadwp_io_num = -1,
568 .quadhd_io_num = -1,
569 };
570 int spi_dma_channel = 2;
571#ifdef MODDEF_ETHERNET_SPI_DMA_CH
572 spi_dma_channel = MODDEF_ETHERNET_SPI_DMA_CH;
573#endif
574 if (MODDEF_ETHERNET_DEBUG) ESP_LOGI(TAG, LOG_FMT("MISO=%d MOSI=%d SCK=%d CS=%d DMA_Ch=%d PORT=%d HZ=%d PowerPin=%d"),
575 MODDEF_ETHERNET_SPI_MISO_PIN, MODDEF_ETHERNET_SPI_MOSI_PIN, MODDEF_ETHERNET_SPI_SCK_PIN,
576 spi_dma_channel,MODDEF_ETHERNET_SPI_CS_PIN, MODDEF_ETHERNET_SPI_PORT, MODDEF_ETHERNET_HZ, MODDEF_ETHERNET_POWER_PIN);
577
578 ESP_ERROR_CHECK(spi_bus_initialize(MODDEF_ETHERNET_SPI_PORT, &buscfg, MODDEF_ETHERNET_SPI_DMA_CH ));
579#else
580 modSPIConfigurationRecord config = {0};
581 config.cs_pin = MODDEF_ETHERNET_SPI_CS_PIN;
582 config.spiPort = HSPI_HOST;
583 config.sync = 1;
584 config.hz = MODDEF_ETHERNET_HZ;
585 config.command_bits = MODDEF_ETHERNET_SPI_COMMAND_BITS,
586 config.address_bits = MODDEF_ETHERNET_SPI_ADDRESS_BITS,
587 config.external = 1;
588 config.queue_size = 20;
589 if (MODDEF_ETHERNET_DEBUG) ESP_LOGI(TAG, LOG_FMT("MISO=%d MOSI=%d SCK=%d CS=%d DMA_Ch=%d PORT=%d HZ=%d PowerPin=%d"),
590 config.miso_pin, config.mosi_pin, config.clock_pin, config.cs_pin, spi_dma_channel,
591 config.spiPort, config.hz, MODDEF_ETHERNET_POWER_PIN);
592 modSPIInit(&config);
593#endif
594}
595
596static void uninit_spi() {
597 if (MODDEF_ETHERNET_DEBUG) ESP_LOGI(TAG, LOG_FMT("Uninitializing SPI"));

Callers 1

initEthernetFunction · 0.70

Calls 1

modSPIInitFunction · 0.50

Tested by

no test coverage detected