Re: [PATCH] spi: spi-omap2-mcspi.c: Add dts for slave device configuration.

From: Illia Smyrnov
Date: Tue May 14 2013 - 05:53:55 EST



@@ -745,6 +781,11 @@ static int omap2_mcspi_setup_transfer(struct
spi_device *spi,
mcspi = spi_master_get_devdata(spi->master);
spi_cntrl = mcspi->master;

+ if (!cd && spi->dev.of_node) {
+ cd = omap2_mcspi_get_slave_ctrldata(spi);
> + spi->controller_data = cd;

Here you call omap2_mcspi_get_slave_ctrldata function that allocate memory for cd structure, but this memory never freed.

Also, why do you read DT data in omap2_mcspi_setup_transfer function?
Under certain conditions the omap2_mcspi_setup_transfer function may be calling for each transfer and each call it will check (!cd && spi->dev.of_node) condition.

Consider to move DT data read code from omap2_mcspi_setup_transfer to
omap2_mcspi_setup function and free spi->controller_data pointer in omap2_mcspi_cleanup function.

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/