I have an Android build environment that creates an Android BSP for a proprietary device based on the i.MX6Q/DL/Solo. The BSP works fine for the i.MX6Q device but I cannot get video to work on the i.MX6DL device. I use the same build environment except for a few changes for unsupported features on the DL version.
The MX6DL board boots fine and is usable from the console. The LVDS screen is solid white with no GUI. I am able to blank the screen to solid black by echoing data to /sys/class/graphics/fb0/blank. So it appears that the frame buffers are being configured properly. Using adb it does not appear that there is any major difference in the bug report when comparing the two boards. The drivers being loaded in /sys/modules and /sys/device/platform are almost identical except for the removed functions.
I found the following message on the Community site: https://community.freescale.com/message/320374#320374. This is similar to my issue because I had the "COULD NOT SET GP VOLTAGE" messages. By removing the duplicate regulator initialization, I was able to eliminate the messages but still no graphics appear.
Has anybody seen issues similar to this? Any additional debug ideas would also be appreciated. Thanks.
已解决! 转到解答。
AnsonHuang Nov 13, 2013 5:47 PM (in response to Karina Valencia Aguilar)
Hi, Karina
We use one image for both i.MX6Q/DL, as you sai it is working on i.MX6Q, then I think you no need to remove unnecessary features. Can you try linux BSP + gnome mobile rootfs, see whether there is desktop display on LVDS. So, you can try undo the changes first, then try linux BSP, if they all not work, can you tell me which BSP version you used, I can try it on my side.
Have you check the IPU initialization on board init?
Don't forget that i.MX6DL has only one IPU so you need to check the way you setup IPU.
For example, to setup IPU for i.MX6Q IPU will be something like shown below because it has two IPU.
imx6q_add_ipuv3(0, &ipu_data[0]);
imx6q_add_ipuv3(1, &ipu_data[1]);
for (i = 0; i < ARRAY_SIZE(sabrelite_fb_data); i++)
{
imx6q_add_ipuv3fb(i, &sabrelite_fb_data[i]);
}
To setup IPU for i.MX6DL will be something like shown below because there is one IPU.
imx6q_add_ipuv3(0, &ipu_data[0]);
for (i = 0; i < 2 && i < ARRAY_SIZE(sabrelite_fb_data); i++)
{
imx6q_add_ipuv3fb(i, &sabrelite_fb_data[i]);
}
I'll hope this help you.
AnsonHuang Nov 13, 2013 5:47 PM (in response to Karina Valencia Aguilar)
Hi, Karina
We use one image for both i.MX6Q/DL, as you sai it is working on i.MX6Q, then I think you no need to remove unnecessary features. Can you try linux BSP + gnome mobile rootfs, see whether there is desktop display on LVDS. So, you can try undo the changes first, then try linux BSP, if they all not work, can you tell me which BSP version you used, I can try it on my side.