While I don’t know what the exact issue is at the moment. If the only issue with the display output is the color, then it might be related to the data/color-mapping set in the device tree. Perhaps your display here uses a different color format than the one used by default in the device tree.
If you zoom in, you can see there are 2 lines of pixels with different colours.
The manufacturer asked to move Odd pixel information to one channel and Even on another one. hence the new hactive value should be 1920/2. As consequence, I got only the black screen and no image displayed.
If so, then this seems odd to me, if the issue was with configuration/timing then I would expect the distortion to be a continuous line across the entire screen. But here it looks like it’s just isolated to these 2 small portions of the display. It’s hard to say if it’s a timing issue or not.
Have you tried another display of the same model just as a sanity check to compare?
The manufacturer asked to move Odd pixel information to one channel and Even on another one. hence the new hactive value should be 1920/2. As consequence, I got only the black screen and no image displayed.
That sounds strange to me, but if the display went black with that configuration then obviously that’s not the right configuration for this display.
With regards to the timing values in your overlay, other than the resolution how did you determine the other values? Did you derive these from the datasheet or such?
If so, then this seems odd to me, if the issue was with configuration/timing then I would expect the distortion to be a continuous line across the entire screen. But here it looks like it’s just isolated to these 2 small portions of the display. It’s hard to say if it’s a timing issue or not.
Have you tried another display of the same model just as a sanity check to compare?
Yes, I tested on another screen but the same issue.
That sounds strange to me, but if the display went black with that configuration then obviously that’s not the right configuration for this display.
Yes, I would agree as per my observation
With regards to the timing values in your overlay, other than the resolution how did you determine the other values? Did you derive these from the datasheet or such?
We followed this link
and
clock-frequency is the pixel clock in Hz. On the table, this is the Clock Rate so the value is 83500000.* hactive is the horizontal display resolution in pixels. On the table, this is the Horizontal period (High) THd (1280).* vactive is the vertical display resolution in pixels. On the table, this is the Vertical period (High) TVd (800).* hfront-porch is the horizontal front porch, the number of clock pulses (pixels) between the last valid pixel data in the line and the next HSYNC pulse. The datasheet does not provide this number but it provides the complete Horizontal period (TH) and the Horizontal period (High) (THd) so you can calculate the horizontal front porch as TH - THd = 1680 - 1280 = 4001.* hback-porch is the horizontal back porch, the number of pulses (pixels) between the HSYNC signal and the first valid pixel data. According to the datasheet timings diagram, this value is zero.* hsync-len is the number of clock pulses (pixels) during which the HSYNC signal is active. There is no entry on the datasheet so you can assume zero1.* vback-porch is the vertical back porch, the number of lines (HSYNC pulses) from a VSYNC signal to the first valid line. According to the datasheet timings diagram, this value is zero.* vfront-porch is the vertical front porch, the number of lines (HSYNC pulses) between the last valid line of the frame and the next VSYNC pulse. The datasheet does not provide this number but it provides the complete Vertical period (TV) and the Vertical period (High) (TVd) so you can calculate the vertical front porch as TV - TVd = 831 - 800 = 311.* vsync-len is the number of HSYNC pulses during which a VSYNC signal is active. There is no entry on the datasheet so you can assume zero1.
Yes these calculated parameters derive from the datasheet.
If so, then this seems odd to me, if the issue was with configuration/timing then I would expect the distortion to be a continuous line across the entire screen. But here it looks like it’s just isolated to these 2 small portions of the display. It’s hard to say if it’s a timing issue or not.
No, it is not these 2 portions. This pattern that I used is: Philips circle pattern - Wikipedia
If you zoom the photo, we can see continuous lines as you mentioned
Have you tried another display of the same model just as a sanity check to compare?
Yes, I tried another display and it was the same issue.
That sounds strange to me, but if the display went black with that configuration then obviously that’s not the right configuration for this display.
Yes, I would agree based on my observation.
With regards to the timing values in your overlay, other than the resolution how did you determine the other values? Did you derive these from the datasheet or such?
clock-frequency is the pixel clock in Hz. On the table, this is the Clock Rate so the value is 83500000.* hactive is the horizontal display resolution in pixels. On the table, this is the Horizontal period (High) THd (1280).* vactive is the vertical display resolution in pixels. On the table, this is the Vertical period (High) TVd (800).* hfront-porch is the horizontal front porch, the number of clock pulses (pixels) between the last valid pixel data in the line and the next HSYNC pulse. The datasheet does not provide this number but it provides the complete Horizontal period (TH) and the Horizontal period (High) (THd) so you can calculate the horizontal front porch as TH - THd = 1680 - 1280 = 4001.* hback-porch is the horizontal back porch, the number of pulses (pixels) between the HSYNC signal and the first valid pixel data. According to the datasheet timings diagram, this value is zero.* hsync-len is the number of clock pulses (pixels) during which the HSYNC signal is active. There is no entry on the datasheet so you can assume zero1.* vback-porch is the vertical back porch, the number of lines (HSYNC pulses) from a VSYNC signal to the first valid line. According to the datasheet timings diagram, this value is zero.* vfront-porch is the vertical front porch, the number of lines (HSYNC pulses) between the last valid line of the frame and the next VSYNC pulse. The datasheet does not provide this number but it provides the complete Vertical period (TV) and the Vertical period (High) (TVd) so you can calculate the vertical front porch as TV - TVd = 831 - 800 = 311.* vsync-len is the number of HSYNC pulses during which a VSYNC signal is active. There is no entry on the datasheet so you can assume zero1.
Yes, we derive these parameters from the datasheet.
I can sort of see the distortions now, though it’s rather subtle. I wasn’t sure if this was the display output or artifacts from taking a picture of a screen. Okay then, this would lead me to think the timing values you’ve derived aren’t completely correct for this display then.
That said, I’m not sure I follow your logic in how you derived these values. For hfront-porch you said:
hfront-porch is the horizontal front porch, the number of clock pulses (pixels) between the last valid pixel data in the line and the next HSYNC pulse. The datasheet does not provide this number but it provides the complete Horizontal period (TH) and the Horizontal period (High) (THd) so you can calculate the horizontal front porch as TH - THd = 1680 - 1280 = 4001.
Yet I don’t see this value for front-porch anywhere in the device tree overlays you’ve shared so far. Perhaps I’m misunderstanding something.
By the way since you said this LVDS display is dual channel, what do the rest of your device tree changes/overlays look like?
The manufacturer asked to move Odd pixel information to one channel and Even on another one. hence the new hactive value should be 1920/2. As consequence, I got only the black screen and no image displayed.