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 <lars@metafoo.de>
main
Lars-Peter Clausen 2015-06-30 21:14:07 +02:00
parent cf6052e2a8
commit cb03152f1f
1 changed files with 8 additions and 0 deletions

View File

@ -512,6 +512,10 @@ module axi_hdmi_tx_core (
end else if ((hdmi_full_range == 1'b0) && end else if ((hdmi_full_range == 1'b0) &&
(hdmi_es_data_s[15:8] < 8'h10)) begin (hdmi_es_data_s[15:8] < 8'h10)) begin
hdmi_es_data[15:8] <= 8'h10; 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 end else begin
hdmi_es_data[15:8] <= hdmi_es_data_s[15:8]; hdmi_es_data[15:8] <= hdmi_es_data_s[15:8];
end end
@ -523,6 +527,10 @@ module axi_hdmi_tx_core (
end else if ((hdmi_full_range == 1'b0) && end else if ((hdmi_full_range == 1'b0) &&
(hdmi_es_data_s[7:0] < 8'h10)) begin (hdmi_es_data_s[7:0] < 8'h10)) begin
hdmi_es_data[7:0] <= 8'h10; 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 end else begin
hdmi_es_data[7:0] <= hdmi_es_data_s[7:0]; hdmi_es_data[7:0] <= hdmi_es_data_s[7:0];
end end