First of all, do not remove mailing lists from Cc and people if you are not sure they do not need your stuff. On Mon, May 14, 2018 at 11:11 AM, Radu Pirea <radu.pirea@xxxxxxxxxxxxx> wrote: > On Sun, 2018-05-13 at 16:33 +0300, Andy Shevchenko wrote: >> On Fri, May 11, 2018 at 1:38 PM, Radu Pirea <radu.pirea@xxxxxxxxxxxxx >> > wrote: >> > +static void at91_usart_spi_cleanup(struct spi_device *spi) >> > +{ >> > + struct at91_usart_spi_device *ausd = spi->controller_state; >> > + >> > + if (!ausd) >> > + return; >> >> Is it even possible? > Theoretically yes. I would like to know real circumstances when it might happen. >> >> Anyway the code below will work fine even if it's the case. >> >> > + >> > + spi->controller_state = NULL; >> > + kfree(ausd); >> > +} >> The question is, why you didn't utilize what SPI core provides you? > I tried, but it did not work the way I expected. So, what is not going as expected in "SPI core takes care of CSs" case? Did you use oscilloscope for that? -- With Best Regards, Andy Shevchenko -- To unsubscribe from this list: send the line "unsubscribe linux-spi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html