PORTING OBDS-LVDS TEST TO CUSTOM BOARD

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

PORTING OBDS-LVDS TEST TO CUSTOM BOARD

Jump to solution
979 Views
Mats1z
Contributor III

I have ported OBDS to our imx535 based custom board. In display tests, hdmi is successful but lvds test failed.

we're using lvds1 and it is connected to di0. The iomux changes are configured in hardware.c and the address generated by iomux tool is defined in iomux_register.h . The lvds panel used is "tn" type 7'' panel. 

Could you pls share your  thoughts regarding this issue?

Labels (1)
Tags (3)
0 Kudos
1 Solution
625 Views
TheAdmiral
NXP Employee
NXP Employee

I am familiar with the OBDS code, and I have made modifications to it myself in my hardware testing. I cannot comment on why things were done the way they were, but I think I can help in making it work.

First, the OBDS code is set up for the user to select between a number of pre-designated LVDS panels. I think the best approach is to define a new panel in the same format as the other panels, and then just hardcode the new panel at the prompt question asking for the panel to be used.

When selecting the drivers to use, you would basically need all the drivers from the IPU section. These are all probably present if HDMI is already working. File names that you would specifically need to modify for the new panel would be:

ipu_dc.c               (set panel parameters, two places)

ipu_test.c            (set panel parameters, two places. Don’t need to add to list)

display_common.h         (add one place to list)

display_list.h      (Very important, need whole section of parameters)

  1. hardware.c         (one spot, defines how to turn backlight on)

These changes should at least make sure that the data stream is correctly formatted for the LVDS panel being used. You probably also need to make sure that the proper IPU channel and DI channel are set up to direct flow to the LVDS port. I don’t know if you are using the same channels as are being used for HDMI (easiest) or are trying to set up a separate channel to eventually display dual video.

If more help is needed, I would need to know more specific details as to what is wrong.

Cheers,

Mark

View solution in original post

0 Kudos
1 Reply
626 Views
TheAdmiral
NXP Employee
NXP Employee

I am familiar with the OBDS code, and I have made modifications to it myself in my hardware testing. I cannot comment on why things were done the way they were, but I think I can help in making it work.

First, the OBDS code is set up for the user to select between a number of pre-designated LVDS panels. I think the best approach is to define a new panel in the same format as the other panels, and then just hardcode the new panel at the prompt question asking for the panel to be used.

When selecting the drivers to use, you would basically need all the drivers from the IPU section. These are all probably present if HDMI is already working. File names that you would specifically need to modify for the new panel would be:

ipu_dc.c               (set panel parameters, two places)

ipu_test.c            (set panel parameters, two places. Don’t need to add to list)

display_common.h         (add one place to list)

display_list.h      (Very important, need whole section of parameters)

  1. hardware.c         (one spot, defines how to turn backlight on)

These changes should at least make sure that the data stream is correctly formatted for the LVDS panel being used. You probably also need to make sure that the proper IPU channel and DI channel are set up to direct flow to the LVDS port. I don’t know if you are using the same channels as are being used for HDMI (easiest) or are trying to set up a separate channel to eventually display dual video.

If more help is needed, I would need to know more specific details as to what is wrong.

Cheers,

Mark

0 Kudos