[xen master] xen/arm: vpl011: Define common ring buffer helper functions in console.h

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[xen master] xen/arm: vpl011: Define common ring buffer helper functions in console.h

patchbot
commit af8d9356417cb617b635c5ace782388ebfe86e3a
Author:     Bhupinder Thakur <[hidden email]>
AuthorDate: Wed Sep 27 11:43:10 2017 +0530
Commit:     Stefano Stabellini <[hidden email]>
CommitDate: Tue Oct 3 11:36:34 2017 -0700

    xen/arm: vpl011: Define common ring buffer helper functions in console.h
   
    DEFINE_XEN_FLEX_RING(xencons) defines common helper functions such as
    xencons_queued() to tell the current size of the ring buffer,
    xencons_mask() to mask off the index, which are useful helper functions.
    pl011 emulation code will use these helper functions.
   
    io/console.h includes io/ring.h which defines DEFINE_XEN_FLEX_RING.
   
    In console/daemon/io.c, string.h had to be included before io/console.h
    because ring.h uses string functions.
   
    Signed-off-by: Bhupinder Thakur <[hidden email]>
    Reviewed-by: Stefano Stabellini <[hidden email]>
    Acked-by: Wei Liu <[hidden email]>
    Acked-by: Konrad Rzeszutek Wilk <[hidden email]>
---
 tools/console/daemon/io.c       | 2 +-
 xen/include/Makefile            | 1 +
 xen/include/public/io/console.h | 6 ++++++
 3 files changed, 8 insertions(+), 1 deletion(-)

diff --git a/tools/console/daemon/io.c b/tools/console/daemon/io.c
index 7e474bb..e8033d2 100644
--- a/tools/console/daemon/io.c
+++ b/tools/console/daemon/io.c
@@ -21,6 +21,7 @@
 
 #include "utils.h"
 #include "io.h"
+#include <string.h>
 #include <xenevtchn.h>
 #include <xengnttab.h>
 #include <xenstore.h>
@@ -29,7 +30,6 @@
 
 #include <stdlib.h>
 #include <errno.h>
-#include <string.h>
 #include <poll.h>
 #include <fcntl.h>
 #include <unistd.h>
diff --git a/xen/include/Makefile b/xen/include/Makefile
index 1299b19..c90fdee 100644
--- a/xen/include/Makefile
+++ b/xen/include/Makefile
@@ -98,6 +98,7 @@ PUBLIC_C99_HEADERS := public/io/9pfs.h public/io/pvcalls.h
 PUBLIC_ANSI_HEADERS := $(filter-out public/%ctl.h public/xsm/% public/%hvm/save.h $(PUBLIC_C99_HEADERS), $(PUBLIC_HEADERS))
 
 public/io/9pfs.h-prereq := string
+public/io/console.h-prereq := string
 public/io/pvcalls.h-prereq := string
 
 headers.chk: $(PUBLIC_ANSI_HEADERS) Makefile
diff --git a/xen/include/public/io/console.h b/xen/include/public/io/console.h
index e2cd97f..0f0711f 100644
--- a/xen/include/public/io/console.h
+++ b/xen/include/public/io/console.h
@@ -27,6 +27,8 @@
 #ifndef __XEN_PUBLIC_IO_CONSOLE_H__
 #define __XEN_PUBLIC_IO_CONSOLE_H__
 
+#include "ring.h"
+
 typedef uint32_t XENCONS_RING_IDX;
 
 #define MASK_XENCONS_IDX(idx, ring) ((idx) & (sizeof(ring)-1))
@@ -38,6 +40,10 @@ struct xencons_interface {
     XENCONS_RING_IDX out_cons, out_prod;
 };
 
+#if defined(__GNUC__) && !defined(__STRICT_ANSI__)
+DEFINE_XEN_FLEX_RING(xencons);
+#endif
+
 #endif /* __XEN_PUBLIC_IO_CONSOLE_H__ */
 
 /*
--
generated by git-patchbot for /home/xen/git/xen.git#master

_______________________________________________
Xen-changelog mailing list
[hidden email]
https://lists.xenproject.org/xen-changelog