[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-devel] [RFC PATCH 21/31] xen/arm: Add rxdone_auto flag to mbox_controller structure



From: Oleksandr Tyshchenko <oleksandr_tyshchenko@xxxxxxxx>

This patch adds a flag which indicates if mailbox controller doesn't
need to poll for received data. It either has RX done irq for signaling
when received data are ready or received data 'appears' right after
transmitted data has been sent (synchronous case).

The purpose of this flag is to help framework to recognize
and then restrict a registration of controllers which need to use
timer based polling for received data.

Signed-off-by: Oleksandr Tyshchenko <oleksandr_tyshchenko@xxxxxxxx>
CC: Stefano Stabellini <sstabellini@xxxxxxxxxx>
CC: Julien Grall <julien.grall@xxxxxxxxxx>
---
 xen/arch/arm/cpufreq/mailbox_controller.h | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/xen/arch/arm/cpufreq/mailbox_controller.h 
b/xen/arch/arm/cpufreq/mailbox_controller.h
index 74deadb..05c6e45 100644
--- a/xen/arch/arm/cpufreq/mailbox_controller.h
+++ b/xen/arch/arm/cpufreq/mailbox_controller.h
@@ -64,6 +64,10 @@ struct mbox_chan_ops {
  * @txdone_poll:       If the controller can read but not report the TX
  *                     done. Ex, some register shows the TX status but
  *                     no interrupt rises. Ignored if 'txdone_irq' is set.
+ * @rxdone_auto:       Indicates if controller doesn't need to poll for
+ *                     received data. It either has RX done irq for signaling 
when
+ *                     received data are ready or received data 'appears' 
right after
+ *                     transmitted data has been sent (synchronous case).
  * @txpoll_period:     If 'txdone_poll' is in effect, the API polls for
  *                     last TX's status after these many millisecs
  * @of_xlate:          Controller driver specific mapping of channel via DT
@@ -78,6 +82,7 @@ struct mbox_controller {
        int num_chans;
        bool txdone_irq;
        bool txdone_poll;
+       bool rxdone_auto;
        unsigned txpoll_period;
        struct mbox_chan *(*of_xlate)(struct mbox_controller *mbox,
                                      const struct of_phandle_args *sp);
-- 
2.7.4


_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
https://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.