Update some comments for tuner AIDL HAL.
*) Clarify the meaning and unit of FrontendStatus.
*) Add comment for STC ready support.
*) Support for control signal (e.g. TMCC) change monitoring
Bug: 183634950
Bug: 202247846
Bug: 183630794
Test: Make
Change-Id: I3c48993c354e865b0edfe56adbd34c7fce120efc
diff --git a/tv/tuner/aidl/android/hardware/tv/tuner/DemuxFilterStatus.aidl b/tv/tuner/aidl/android/hardware/tv/tuner/DemuxFilterStatus.aidl
index f07c26f..e6f3b63 100644
--- a/tv/tuner/aidl/android/hardware/tv/tuner/DemuxFilterStatus.aidl
+++ b/tv/tuner/aidl/android/hardware/tv/tuner/DemuxFilterStatus.aidl
@@ -24,7 +24,8 @@
@Backing(type="byte")
enum DemuxFilterStatus {
/**
- * The data in the filter buffer is ready to be read.
+ * The data in the filter buffer is ready to be read. It can also be used to know the STC
+ * (System Time Clock) ready status if it's PCR filter.
*/
DATA_READY = 1 << 0,
diff --git a/tv/tuner/aidl/android/hardware/tv/tuner/FrontendEventType.aidl b/tv/tuner/aidl/android/hardware/tv/tuner/FrontendEventType.aidl
index 40b5161..501dc1f 100644
--- a/tv/tuner/aidl/android/hardware/tv/tuner/FrontendEventType.aidl
+++ b/tv/tuner/aidl/android/hardware/tv/tuner/FrontendEventType.aidl
@@ -24,7 +24,9 @@
@Backing(type="int")
enum FrontendEventType {
/**
- * The frontend has locked to the signal specified by the tune method.
+ * The frontend has locked to the signal specified by the tune method. It can also be notified
+ * after signal is locked if the signal attributes transmission parameter of the signal is
+ * changed (e.g., Modulation).
*/
LOCKED,
diff --git a/tv/tuner/aidl/android/hardware/tv/tuner/FrontendStatus.aidl b/tv/tuner/aidl/android/hardware/tv/tuner/FrontendStatus.aidl
index 234e183..6e6f315 100644
--- a/tv/tuner/aidl/android/hardware/tv/tuner/FrontendStatus.aidl
+++ b/tv/tuner/aidl/android/hardware/tv/tuner/FrontendStatus.aidl
@@ -91,11 +91,19 @@
/**
* AGC value is normalized from 0 to 255.
+ * Larger AGC values indicate it is applying more gain.
*/
int agc;
boolean isLnaOn;
+ /**
+ * Layer Error status.
+ *
+ * The order of the vectors is in ascending order of the required CNR (Contrast-to-noise ratio).
+ * The most robust layer is the first. For example, in ISDB-T, isLayerError[0] is the
+ * information of layer A. isLayerError[1] is the information of layer B.
+ */
boolean[] isLayerError;
/**
@@ -119,16 +127,28 @@
/**
* Modulation status.
+ *
+ * The order of the vectors is in ascending order of the required CNR (Contrast-to-noise ratio).
+ * The most robust layer is the first. For example, in ISDB-T, modulations[0] is the information
+ * of layer A. modulations[1] is the information of layer B.
*/
FrontendModulation[] modulations;
/**
* Bit error ratio status.
+ *
+ * The order of the vectors is in ascending order of the required CNR (Contrast-to-noise ratio).
+ * The most robust layer is the first. For example, in ISDB-T, bers[0] is the information of
+ * layer A. bers[1] is the information of layer B.
*/
int[] bers;
/**
* Code rate status.
+ *
+ * The order of the vectors is in ascending order of the required CN. The most robust layer is
+ * the first. For example, in ISDB-T, codeRates[0] is the information of layer A. codeRates[1]
+ * is the information of layer B.
*/
FrontendInnerFec[] codeRates;
@@ -160,11 +180,19 @@
/**
* Frontend Interleaving Modes.
+ *
+ * The order of the vectors is in ascending order of the required CNR (Contrast-to-noise ratio).
+ * The most robust layer is the first. For example, in ISDB-T, interleaving[0] is the
+ * information of layer A. interleaving[1] is the information of layer B.
*/
FrontendInterleaveMode[] interleaving;
/**
* Segments in ISDB-T Specification of all the channels.
+ *
+ * The order of the vectors is in ascending order of the required CNR (Contrast-to-noise ratio).
+ * The most robust layer is the first. For example, in ISDB-T, isdbtSegment[0] is the
+ * information of layer A. isdbtSegment[1] is the information of layer B.
*/
int[] isdbtSegment;