Thread (43 messages) 43 messages, 7 authors, 2012-08-01

[06/10,V2] spi: Add SPI driver for mx233/mx28

From: linux@roeck-us.net (Guenter Roeck)
Date: 2012-08-01 06:56:50
Also in: linux-spi

On Wed, Aug 01, 2012 at 08:45:19AM +0200, Marek Vasut wrote:
Dear Guenter Roeck,
quoted
On Wed, Aug 01, 2012 at 08:10:37AM +0200, Marek Vasut wrote:
quoted
Dear Shawn Guo,
quoted
On Tue, Jul 31, 2012 at 10:42:28PM -0700, Guenter Roeck wrote:
quoted
On Wed, Aug 01, 2012 at 01:58:56PM +0800, Shawn Guo wrote:
quoted
On Tue, Jul 31, 2012 at 10:29:47PM -0700, Guenter Roeck wrote:
quoted
Anyone up for writing some patches ? If not, I'll do it.
Go ahead.
Ok, will do. It isn't that simple, actually, since at least some of
the drivers also call spi_master_get(), and thus need two calls to
spi_master_put() (or a call to spi_master_put and a call to kfree).
Hmm, are you saying that there must be a spi_master_put call matching
spi_alloc_master?  I think we only need to have spi_master_get and
spi_master_put matched.
Naw, spi_master_get() does refcounting, spi_alloc_master() doesnt. You
don't need to match spi_alloc_master() with spi_master_put()
I must be missing something.  Why do almost all spi drivers call it in the
error path, even if there is no call to spi_master_get ?
To push the refcounting to 0, to deallocate the device, I'd say ...
Guess we are in violent agreement. The sequence would then either be
	master = spi_alloc_device();
	...
	spi_master_put(master);
or
	master = spi_alloc_device();
	...
	kfree(master);

which makes sense to me. Question still is why most drivers neither call kfree()
nor spi_master_put() in the remove function.

Thanks,
Guenter
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help