Lines Matching refs:bus_attr
43 .bus_attr = { \
58 spi_bus_attr_t bus_attr; member
290 ctx->bus_attr.tx_dma_chan = actual_tx_dma_chan; in spicommon_dma_chan_alloc()
291 ctx->bus_attr.rx_dma_chan = actual_rx_dma_chan; in spicommon_dma_chan_alloc()
330 int dma_chan = ctx->bus_attr.tx_dma_chan; in dma_chan_free()
750 bus_ctx[0]->bus_attr.lock = lock; in spi_bus_main_set_lock()
755 return bus_ctx[host_id]->bus_attr.lock; in spi_bus_lock_get_by_id()
763 spi_bus_attr_t *bus_attr = NULL; in spi_bus_initialize() local
792 bus_attr = &ctx->bus_attr; in spi_bus_initialize()
793 bus_attr->bus_cfg = *bus_config; in spi_bus_initialize()
796 bus_attr->dma_enabled = 1; in spi_bus_initialize()
802 bus_attr->tx_dma_chan = actual_tx_dma_chan; in spi_bus_initialize()
803 bus_attr->rx_dma_chan = actual_rx_dma_chan; in spi_bus_initialize()
808 bus_attr->max_transfer_sz = dma_desc_ct * LLDESC_MAX_NUM_PER_DESC; in spi_bus_initialize()
809 bus_attr->dmadesc_tx = heap_caps_malloc(sizeof(lldesc_t) * dma_desc_ct, MALLOC_CAP_DMA); in spi_bus_initialize()
810 bus_attr->dmadesc_rx = heap_caps_malloc(sizeof(lldesc_t) * dma_desc_ct, MALLOC_CAP_DMA); in spi_bus_initialize()
811 if (bus_attr->dmadesc_tx == NULL || bus_attr->dmadesc_rx == NULL) { in spi_bus_initialize()
815 bus_attr->dma_desc_num = dma_desc_ct; in spi_bus_initialize()
817 bus_attr->dma_enabled = 0; in spi_bus_initialize()
818 bus_attr->max_transfer_sz = SOC_SPI_MAXIMUM_BUFFER_SIZE; in spi_bus_initialize()
819 bus_attr->dma_desc_num = 0; in spi_bus_initialize()
826 err = spi_bus_init_lock(&bus_attr->lock, &lock_config); in spi_bus_initialize()
833 &bus_attr->pm_lock); in spi_bus_initialize()
839 …initialize_io(host_id, bus_config, SPICOMMON_BUSFLAG_MASTER | bus_config->flags, &bus_attr->flags); in spi_bus_initialize()
847 if (bus_attr) { in spi_bus_initialize()
849 esp_pm_lock_delete(bus_attr->pm_lock); in spi_bus_initialize()
851 if (bus_attr->lock) { in spi_bus_initialize()
852 spi_bus_deinit_lock(bus_attr->lock); in spi_bus_initialize()
854 free(bus_attr->dmadesc_tx); in spi_bus_initialize()
855 free(bus_attr->dmadesc_rx); in spi_bus_initialize()
856 bus_attr->dmadesc_tx = NULL; in spi_bus_initialize()
857 bus_attr->dmadesc_rx = NULL; in spi_bus_initialize()
858 if (bus_attr->dma_enabled) { in spi_bus_initialize()
872 return &bus_ctx[host_id]->bus_attr; in spi_bus_get_attr()
883 spi_bus_attr_t* bus_attr = &ctx->bus_attr; in spi_bus_free() local
889 spicommon_bus_free_io_cfg(&bus_attr->bus_cfg); in spi_bus_free()
892 esp_pm_lock_delete(bus_attr->pm_lock); in spi_bus_free()
894 spi_bus_deinit_lock(bus_attr->lock); in spi_bus_free()
895 free(bus_attr->dmadesc_rx); in spi_bus_free()
896 free(bus_attr->dmadesc_tx); in spi_bus_free()
897 bus_attr->dmadesc_tx = NULL; in spi_bus_free()
898 bus_attr->dmadesc_rx = NULL; in spi_bus_free()
899 if (bus_attr->dma_enabled > 0) { in spi_bus_free()