Thread (1 message) 1 message, 1 author, 2014-10-28

Re: [PATCH 00/15] new locomo driver

From: Dmitry Eremin-Solenikov <hidden>
Date: 2014-10-28 00:28:53
Also in: alsa-devel, linux-arm-kernel, linux-gpio, linux-input, linux-leds, linux-spi

2014-10-28 4:13 GMT+04:00 Russell King - ARM Linux [off-list ref]:
On Tue, Oct 28, 2014 at 03:01:53AM +0300, Dmitry Eremin-Solenikov wrote:
quoted
Sharp Zaurus SL-5500 and SL-5600 use special companion Gate Array. Current
drivers present in Linux kernel has some problems:

 * It uses custom bus instead of platform bus/mfd core.
I believe Greg wouldn't see that as a positive point.

Don't think that the platform bus _should_ always be used.  It shouldn't
(Greg has said he'd like to see the platform bus to be totally killed off.)
Instead, custom buses properly suited to the class of device in question
is much preferred, especially if it aids in...
I'm sorry, I must be outdated on this topic. Few years ago things were exactly
opposite - we explicitly had to use platform bus for mfd devices. I
still think that
mfd devices containing several cells should use mfd-core (is it still
OK to use it?).
And mfd-core (up to now) uses platform bus.
quoted
 * Device drivers are not well layered/separated.
... better layering or separation of drivers.

So, thinking that converting from a custom bus to a platform bus
definitely is /not/ a positive step forward.
Is there an example of new approach? Current locomo-dev implementation
is poisoned with several bugs. For example it passes ioremapped memory
as resources to child devices that later call request_resource() on it.
Adding additional features (like correct work with IRQs) will duplicate
platform bus code and mfd functions.
(Why mfd was ever allowed to re-use the platform bus stuff is a separate
question not relevent to these patches.)
I remember this story - Ian Molton and me wrote mfd-core.c.

-- 
With best wishes
Dmitry
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help