[svn-commits] kpfleming: branch linux/kpfleming/echocan_work r6362 - /linux/team/kpfleming/...
SVN commits to the Digium repositories
svn-commits at lists.digium.com
Tue Apr 14 13:09:07 CDT 2009
Author: kpfleming
Date: Tue Apr 14 13:09:03 2009
New Revision: 6362
URL: http://svn.digium.com/svn-view/dahdi?view=rev&rev=6362
Log:
finish documentation for new structures so i can go get some lunch
Modified:
linux/team/kpfleming/echocan_work/include/dahdi/kernel.h
Modified: linux/team/kpfleming/echocan_work/include/dahdi/kernel.h
URL: http://svn.digium.com/svn-view/dahdi/linux/team/kpfleming/echocan_work/include/dahdi/kernel.h?view=diff&rev=6362&r1=6361&r2=6362
==============================================================================
--- linux/team/kpfleming/echocan_work/include/dahdi/kernel.h (original)
+++ linux/team/kpfleming/echocan_work/include/dahdi/kernel.h Tue Apr 14 13:09:03 2009
@@ -273,21 +273,73 @@
/*! An instance of a DAHDI echo canceler (software or hardware). */
struct dahdi_echocan_state {
+
+ /*! Pointer to a dahdi_echocan_ops structure of operations that can be
+ * performed on this instance.
+ */
const struct dahdi_echocan_ops *ops;
+
+ /*! State data used by the DAHDI core's CED detector for the transmit
+ * direction, if needed.
+ */
echo_can_disable_detector_state_t txecdis;
+
+ /*! State data used by the DAHDI core's CED detector for the receive
+ * direction, if needed.
+ */
echo_can_disable_detector_state_t rxecdis;
+
+ /*! Features offered by the echo canceler that provided this instance. */
struct dahdi_echocan_features features;
+
struct {
+ /*! Whether the echocan's NLP is currently enabled or disabled. */
__u32 NLP_enabled:1;
} status;
+
+ /*! This structure contains event flags, allowing the echocan to report
+ * events that occurred as it processed the transmit and receive streams
+ * of samples. Each call to the echocan_array_update operation for this
+ * instance may report events, so the structure should be cleared before
+ * calling that operation.
+ */
union {
__u32 all;
struct {
+ /*! CED tone was detected in the transmit direction. If the
+ * echocan automatically disables its NLP when this occurs,
+ * it must also signal the NLP_auto_disabled event and
+ * set the status.NLP_enabled flag to zero during the *same*
+ * call to echocan_array_update that reports the CED detection.
+ */
__u32 CED_tx_detected:1;
+
+ /*! CED tone was detected in the receive direction. If the
+ * echocan automatically disables its NLP when this occurs,
+ * it must also signal the NLP_auto_disabled event and
+ * set the status.NLP_enabled flag to zero during the *same*
+ * call to echocan_array_update that reports the CED detection.
+ */
__u32 CED_rx_detected:1;
+
+ /*! CNG tone was detected in the transmit direction. */
__u32 CNG_tx_detected:1;
+
+ /*! CNG tone was detected in the receive direction. */
__u32 CNG_rx_detected:1;
+
+ /*! The echocan disabled its NLP automatically. The echocan
+ * must also set the status.NLP_enabled flag to zero during
+ * the *same* call to echocan_array_update that reports the
+ * NLP disablement.
+ */
__u32 NLP_auto_disabled:1;
+
+ /*! The echocan enabled its NLP automatically. The echocan
+ * must also set the status.NLP_enabled flag to non-zero during
+ * the *same* call to echocan_array_update that reports the
+ * NLP enablement.
+ */
__u32 NLP_auto_enabled:1;
};
} events;
More information about the svn-commits
mailing list