From cb03152f1f0528d93ae4b7aecec03a4bc6b3b1f0 Mon Sep 17 00:00:00 2001 From: Lars-Peter Clausen Date: Tue, 30 Jun 2015 21:14:07 +0200 Subject: [PATCH] axi_hdmi_tx: Don't accidentally send control characters in embedded sync mode ffff and 0000 are always reserved control characters when using embedded syncs. So make sure that we never have them in the pixel data, even when running in full-range mode. Signed-off-by: Lars-Peter Clausen --- library/axi_hdmi_tx/axi_hdmi_tx_core.v | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/library/axi_hdmi_tx/axi_hdmi_tx_core.v b/library/axi_hdmi_tx/axi_hdmi_tx_core.v index 9706f854c..5a875d9cb 100644 --- a/library/axi_hdmi_tx/axi_hdmi_tx_core.v +++ b/library/axi_hdmi_tx/axi_hdmi_tx_core.v @@ -512,6 +512,10 @@ module axi_hdmi_tx_core ( end else if ((hdmi_full_range == 1'b0) && (hdmi_es_data_s[15:8] < 8'h10)) begin hdmi_es_data[15:8] <= 8'h10; + end else if (hdmi_es_data_s[15:8] > 8'hfe) begin + hdmi_es_data[15:8] <= 8'hfe; + end else if (hdmi_es_data_s[15:8] < 8'h01) begin + hdmi_es_data[15:8] <= 8'h01; end else begin hdmi_es_data[15:8] <= hdmi_es_data_s[15:8]; end @@ -523,6 +527,10 @@ module axi_hdmi_tx_core ( end else if ((hdmi_full_range == 1'b0) && (hdmi_es_data_s[7:0] < 8'h10)) begin hdmi_es_data[7:0] <= 8'h10; + end else if (hdmi_es_data_s[7:0] > 8'hfe) begin + hdmi_es_data[7:0] <= 8'hfe; + end else if (hdmi_es_data_s[7:0] < 8'h01) begin + hdmi_es_data[7:0] <= 8'h01; end else begin hdmi_es_data[7:0] <= hdmi_es_data_s[7:0]; end