[PATCH 1/2] ux500: Adding support for u8500 Hsem functionality V2

Ohad Ben-Cohen ohad at wizery.com
Mon Sep 5 17:09:56 EDT 2011


Hi Mathieu,

On Tue, Apr 19, 2011 at 7:10 PM, Arnd Bergmann <arnd at arndb.de> wrote:
> On Tuesday 19 April 2011, Mathieu Poirier wrote:
>> > One more thing I just noticed: the hwspinlock_internal.h file defines
>> > the hwspinlock->id field as "a global, unique, system-wide, index of
>> > the lock", but the u8500 hsem just sets it to an integer starting
>> > at zero. If there are multiple devices providing hwspinlocks in the
>> > same system, that cannot work.
>> >
>> I have to admit I'm not sure of what your asking here.  Hwspinlocks
>> should be administered by only one entity and this is what this driver
>> is doing.
>>
>> Please get back to me with a clarification.
>
> You could have a system with multiple instances of the hardware block
> that holds your spinlock. I've seen SMP systems that basically take
> multiple SOCs and put them into a common address space.
>
> More importantly, there could be a device on an external bus that also
> provides a hwspinlock. The API can deal with this, but your driver will
> conflict with any other driver trying to do the same.

Looks like this thread has died. Is this driver still needed ?

If yes, I don't mind picking it up and fixing the outstanding issues,
as I'm doing some hwspinlock cleanups/fixes right now anyway.

Regards,
Ohad.



More information about the linux-arm-kernel mailing list