[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <201101110441.33841.arnd@arndb.de>
Date: Tue, 11 Jan 2011 04:41:33 +0100
From: Arnd Bergmann <arnd@...db.de>
To: Mike Frysinger <vapier@...too.org>
Cc: linux-serial@...r.kernel.org,
"Greg Kroah-Hartman" <gregkh@...e.de>,
Alan Cox <alan@...rguk.ukuu.org.uk>,
uclinux-dist-devel@...ckfin.uclinux.org,
linux-kernel@...r.kernel.org
Subject: Re: [PATCH] drivers: char: hvc: add Blackfin JTAG console support
On Tuesday 11 January 2011, Mike Frysinger wrote:
> throughput seems to be a bit lower. the Blackfin JTAG hardware has
> basically a 4 byte fifo that is filled/consumed in a single shot. and
> the Blackfin can produce much faster than the host can consume. so
> atm, i have it send out 4 bytes, and the hvc layers take care of
> calling back into me at some point. if i add a busy loop to run a few
> hundred milliseconds (like HZ/4), it runs much nicer. but obviously
> doesnt give anyone else time to run. i cant schedule or anything as
> the write layers are called with a spin_lock_irqsave. any tips for
> how to speed this up a bit ? or is it a wash with hvc ?
You could try lowering the hvc MIN_TIMEOUT value. If you want to
change it for blackfin, you could probably make it a configuration
option. However, if it really takes a few milliseconds that you need
to wait between two accesses, MIN_TIMEOUT should already be small
enough.
You should really not need to sleep in your output function, as
the khvcd() timeout logic tries handling this in the best way.
There may be a bug in that logic though (wouldn't be the first one
there), so try to see what the timeouts are when you get into
this problem.
Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists