diff options
author | Chris Blair <chris.blair@stericsson.com> | 2012-02-02 13:59:34 +0100 |
---|---|---|
committer | Grant Likely <grant.likely@secretlab.ca> | 2012-02-02 11:32:16 -0700 |
commit | 14af60b6fb3b76634278364b697dae2f9f360abf (patch) | |
tree | 7b454608c85bb6823384009a90ebe290431f17cf /include/linux | |
parent | 90bbf4fdf2dc64aa7c20a93a9744c56a566baf26 (diff) | |
download | linux-14af60b6fb3b76634278364b697dae2f9f360abf.tar.gz linux-14af60b6fb3b76634278364b697dae2f9f360abf.tar.bz2 linux-14af60b6fb3b76634278364b697dae2f9f360abf.zip |
spi/pl022: Add high priority message pump support
This switches the PL022 worker to a kthread in order to get
hold of a mechanism to control the message pump priority. On
low-latency systems elevating the message kthread to realtime
priority give a real sleek response curve. This has been
confirmed by measurements. Realtime priority elevation for
a certain PL022 port can be requested from platform data.
Cc: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Chris Blair <chris.blair@stericsson.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/amba/pl022.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/linux/amba/pl022.h b/include/linux/amba/pl022.h index 572f637299c9..3672f40f3455 100644 --- a/include/linux/amba/pl022.h +++ b/include/linux/amba/pl022.h @@ -241,6 +241,8 @@ struct dma_chan; * @autosuspend_delay: delay in ms following transfer completion before the * runtime power management system suspends the device. A setting of 0 * indicates no delay and the device will be suspended immediately. + * @rt: indicates the controller should run the message pump with realtime + * priority to minimise the transfer latency on the bus. */ struct pl022_ssp_controller { u16 bus_id; @@ -250,6 +252,7 @@ struct pl022_ssp_controller { void *dma_rx_param; void *dma_tx_param; int autosuspend_delay; + bool rt; }; /** |