Hello,
I am trying to migrate a project from Yocto Pyro (3.14 kernel) to Sumo and use a newer kernel and the new Vivante 6.2.4.p4.0 package, since it has more complete OpenGL ES drivers than ETNAVIV.
I am following the instructions in the i.MX_Yocto_Project_User's_Guide, to build. To summarize, I am using:
repo init -u https://source.codeaurora.org/external/imx/imx-manifest -b imx-linux-sumo -m imx-4.14.98-2.0.0_ga.xml
DISTRO=fsl-imx-fb MACHINE=wandboard source fsl-setup-release.sh -b build-fb
bitbake fsl-image-machine-test
The problem is that the built linux image has no fb device and this causes many other problems, such as with V4L2, OpenGL ES and even NXP's unit tests, such as:
./mxc_vpu_test -D "-f0 -x0 -i akiyo.mp4"
[ERR] unable to open fb0
Even 'fbset' fails, with:
open /dev/fb0: No such file or directory
As best as I can tell, fb support should be enabled. Here is the relevant portion of my defconfig:
CONFIG_DRM=y
CONFIG_DRM_VIVANTE=y
CONFIG_FB=y
CONFIG_FB_MXS=y
CONFIG_FB_MXC_SYNC_PANEL=y
CONFIG_FB_MXC_MIPI_DSI=y
CONFIG_FB_MXC_MIPI_DSI_SAMSUNG=y
CONFIG_FB_MXC_TRULY_WVGA_SYNC_PANEL=y
CONFIG_FB_MXC_TRULY_PANEL_TFT3P5079E=y
CONFIG_FB_MXC_TRULY_PANEL_TFT3P5581E=y
CONFIG_FB_MXC_LDB=y
CONFIG_FB_MXC_HDMI=y
CONFIG_FB_MXS_SII902X=y
CONFIG_FB_MXC_DCIC=m
CONFIG_HANNSTAR_CABC=y
CONFIG_FB_MXC_EINK_PANEL=y
CONFIG_FB_MXC_EINK_V2_PANEL=y
CONFIG_LCD_CLASS_DEVICE=y
CONFIG_LCD_L4F00242T03=y
CONFIG_LCD_PLATFORM=y
CONFIG_BACKLIGHT_PWM=y
CONFIG_FRAMEBUFFER_CONSOLE=y
CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY=y
CONFIG_MXC_IPU=y
CONFIG_MXC_IPU_V3_PRE=y
CONFIG_MXC_SIM=y
CONFIG_MXC_MIPI_CSI2=y
CONFIG_MXC_HDMI_CEC=y
CONFIG_MXC_GPU_VIV=y
Does the Vivante 6.2.4.p4.0 package really support fb on the i.MX6?
How can I enable the fb device?
Thanks, Clay Montgomery
Hello Clay,
fb should works, since this is prebuild package sometimes incompatibility comes due to libc. You should try the 4.9.51 version the fb work while the 4.14.98 has a bug.
Regards
I'm not sure how to build exactly 4.9.51, but I built and tested two more kernel versions, 4.9.67 and 4.8.17 (older and newer) with the same Yocto Sumo release and Vivante 6.2.4.p4.0 package and I found that the fb device is broken on these also.These boot with no errors reported, but there is no fb device in the system.
It does not seem to be possible to build any functional OS using these packages with DISTRO='fsl-imx-fb' for the i.MX6.
Can you please advise what I might be doing wrong or how can this issue be resolved?
Thank you for your assistance.
Regards, Clay
I did some more testing and found the situation is actually much worse than I thought. Even the X11 and Wayland support is completely non-functional, in addition to fb, on the i.MX6. The linux kernel version makes no difference. I have tried 4.8 to 4.14.
This means the Vivante 6.2.4 release is COMPLETELY USELESS on the i.MX6. If there is anyone who has actually gotten this to work in any mode, please reply.
This is really strange considering that NXP's i.MX Graphics Users Guide (April 2019) documents fb, x11 and Wayland use on the i.MX6, extensively. Also, NXP's release notes for Yocto Sumo claim extensive testing on many i.MX6 boards.
Regards, Clay
Hello,
Does this mean that fb support is not available for kernels newer than 4.9.51?
Specifically, for the upcoming 4.19 release, will we be able to use the fb device with Vivante drivers on i.MX6?
Thanks,
David
I will try the 4.9.51 version.
Thank you, Clay