[PATCHv8 1/2] pwm: Add Allwinner SoC support
Russell King - ARM Linux
linux at arm.linux.org.uk
Mon Oct 20 10:36:01 PDT 2014
On Mon, Oct 20, 2014 at 07:06:04PM +0200, Alexandre Belloni wrote:
> Because the PWM is getting configured from either a kernel thread or a
> userspace thread accessing /sys. So you probably want the current thread
> to sleep so the other thread accessing the register can finish. Unless
> you are on smp and then, the mutex will spin for some time and your
> other cpu will be finished by then.
I agree with Vladimir. A spinlock would be better here. You're only
needing to sleep for a short time (the time it takes to complete the
register accesses) and to have a competing thread go through a context
switch twice is stupidly expensive compared to having it wait a short
time for the spinlock to be released.
What the driver could do with is using the relaxed IO accessors too,
if you care about eliminating the unnecessary barriers in there.
--
FTTC broadband for 0.8mile line: currently at 9.5Mbps down 400kbps up
according to speedtest.net.
More information about the linux-arm-kernel
mailing list