Skip to content

Commit d76ccdb

Browse files
decsnynashif
authored andcommitted
drivers: spi_mcux_lpspi: Clean up init function
Do initializations in a more logical order, remove unnecessarily duplicated code, reorder stack variables to be in reverse christmas tree order. Signed-off-by: Declan Snyder <declan.snyder@nxp.com>
1 parent 5a0d983 commit d76ccdb

File tree

1 file changed

+10
-13
lines changed

1 file changed

+10
-13
lines changed

drivers/spi/spi_mcux_lpspi.c

Lines changed: 10 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -751,21 +751,12 @@ static void spi_mcux_iodev_complete(const struct device *dev, int status)
751751

752752
static int spi_mcux_init(const struct device *dev)
753753
{
754-
int err;
755754
const struct spi_mcux_config *config = dev->config;
756755
struct spi_mcux_data *data = dev->data;
756+
int err;
757757

758758
DEVICE_MMIO_NAMED_MAP(dev, reg_base, K_MEM_CACHE_NONE | K_MEM_DIRECT_MAP);
759759

760-
config->irq_config_func(dev);
761-
762-
err = spi_context_cs_configure_all(&data->ctx);
763-
if (err < 0) {
764-
return err;
765-
}
766-
767-
spi_context_unlock_unconditionally(&data->ctx);
768-
769760
data->dev = dev;
770761

771762
#ifdef CONFIG_SPI_MCUX_LPSPI_DMA
@@ -782,15 +773,21 @@ static int spi_mcux_init(const struct device *dev)
782773
}
783774
#endif /* CONFIG_SPI_MCUX_LPSPI_DMA */
784775

785-
#ifdef CONFIG_SPI_RTIO
786-
spi_rtio_init(data->rtio_ctx, dev);
787-
#endif
776+
err = spi_context_cs_configure_all(&data->ctx);
777+
if (err < 0) {
778+
return err;
779+
}
788780

789781
err = pinctrl_apply_state(config->pincfg, PINCTRL_STATE_DEFAULT);
790782
if (err) {
791783
return err;
792784
}
793785

786+
config->irq_config_func(dev);
787+
788+
#ifdef CONFIG_SPI_RTIO
789+
spi_rtio_init(data->rtio_ctx, dev);
790+
#endif
794791
spi_context_unlock_unconditionally(&data->ctx);
795792

796793
return 0;

0 commit comments

Comments
 (0)