From 1caed97d30b40ed88cd64d2d75d36b319ea89415 Mon Sep 17 00:00:00 2001
From: Juan David Gonzalez Cobas <dcobas@cern.ch>
Date: Fri, 14 Oct 2016 17:59:40 +0200
Subject: [PATCH] cvorbtest: enhance decoding of channel status

---
 cvorb/include/cvorb.h  | 3 +++
 cvorb/test/cvorbtest.c | 4 ++++
 2 files changed, 7 insertions(+)

diff --git a/cvorb/include/cvorb.h b/cvorb/include/cvorb.h
index e36d29df..3597a836 100644
--- a/cvorb/include/cvorb.h
+++ b/cvorb/include/cvorb.h
@@ -51,7 +51,10 @@ enum cvorb_input_polarity {
  */
 #define CVORB_CH_BUSY                   0x1
 #define CVORB_CH_FCN_PAUSED             0x2
+#define CVORB_CH_FCN_NOT_USED		 0x4
+#define CVORB_CH_FCN_WAITING_START      0x8
 #define CVORB_CH_SERIAL_LINK_ERR        0x10
+#define CVORB_CH_WAVEFORM_COPY          0x100
 
 /**
  * @brief Function Vectors
diff --git a/cvorb/test/cvorbtest.c b/cvorb/test/cvorbtest.c
index ddd2bd5d..1871f9de 100644
--- a/cvorb/test/cvorbtest.c
+++ b/cvorb/test/cvorbtest.c
@@ -105,6 +105,10 @@ int h_ch_status(struct cmd_desc *cmdd, struct atom *atoms)
 		printf("\tWaveform paused\n");
 	if (ch_status & CVORB_CH_SERIAL_LINK_ERR)
 		printf("\tSerial link in fault\n");
+	if (ch_status & CVORB_CH_FCN_WAITING_START)
+		printf("\tIdle (waiting for start pulse)\n");
+	if (ch_status & CVORB_CH_WAVEFORM_COPY)
+		printf("\tWaveform copy in progress\n");
 	printf("\tChannel state machine details:\n");
 	/* Extract the bit field channel state in order to use it as an index in the state messages*/
 	ch_state = (ch_status >> CVORB_CH_STATE_SHIFT) & CVORB_CH_STATE_MASK;
-- 
GitLab