Yocto Fido iMX6Q: no screens found, no /dev/fb0

cancel
Showing results for 
Search instead for 
Did you mean: 

Yocto Fido iMX6Q: no screens found, no /dev/fb0

Jump to solution
6,386 Views
adrianmcgrath
Contributor III

Hello All

 

I'm using the Yocto Fido (1.8) community BSP with kernel 3.14.28 to build a GUI image (based on fsl-image-gui) for an iMX6Q custom board (based on SabreSD).

 

The image has been successfully built and when run gives me full console access. On boot-up I see the Freescale U-Boot splash screen so I know that the HDMI interface can work. However, after loading the Linux kernel I see a "No signal" message on my HDTV and X windows is not started.

 

My U-Boot kernel command line is:

console=ttymxc2,115200 root=/dev/mmcblk2p2 rootwait rw video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24

so I expected to see X windows coming out of the HDMI port onto the HDTV.

 

However, the boot log shows that X windows does not start due to the error underlined in red (see Boot log below).

 

It seems clear that the issue is due to no "/dev/fb0" device file and indeed this file is missing from the "/dev" directory.

 

To me, this appears to be a kernel config issue. However, my defconfig contains the following (please see attached file for full defconfig):

CONFIG_DRM_VIVANTE=y

CONFIG_DRM=y

CONFIG_HDMI=y

CONFIG_FB=y

CONFIG_FB_IMX=y

 

My questions to my learned colleagues in the community are:

1) Could anyone suggest why the /dev/fb0 device not created and what I need to change in order to rectify the issue?

2) Is there any significance to the "unknown username "xuser" comment on the following line?

 

Many thanks in advance.

 

 

 

Boot log:

...

Error opening /dev/fb0: No such file or directory

Starting udev

...

Starting Xserver

^[[59;105R^[[59;105RStarting system message bus: open /dev/fb0: No such file or directory

Unknown username "xuser" in message bus configuration file

dbus.

Starting Connection Manager

Starting Dropbear SSH server: dropbear.

Starting rpcbind daemon...done.

igb: eth0 NIC Link is Up 1000 Mbps Full Duplex, Flow Control: RX/TX

8021q: adding VLAN 0 to HW filter on device eth0

starting statd: done

Starting advanced power management daemon: No APM support in kernel

(failed.)

NFS daemon support not enabled in kernel

Starting syslogd/klogd: done

* Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon

   ...done.

Starting Watchdog: Stopping watchdog keepalive daemon...

0

Starting watchdog daemon...

0

No state file exists, creating

Gpio125 does not exist

Starting OProfileUI server

^[[59;105RStarting autohdmi:

Running local boot scripts (/etc/rc.local).

 

Poky (Yocto Project Reference Distro) 1.8 imx6qswan /dev/ttymxc2

 

imx6qswan login: root

root@imx6qswan:~# more /etc/X11/xorg.conf

Section "Device"

   Identifier  "i.MX Accelerated Framebuffer Device"

   Driver   "vivante"

   Option   "fbdev"   "/dev/fb0"

   Option   "vivante_fbdev" "/dev/fb0"

   Option   "HWcursor"  "false"

EndSection

Section "Screen"

   Identifier   "Default Screen"

   Device   "i.MX Accelerated Framebuffer Device"

EndSection

Section "ServerLayout"

   Identifier   "Default Layout"

   Screen   "Default Screen"

EndSection

root@imx6qswan:~#

 

 

 

/etc/X11/xorg.conf:

Section "Device"

   Identifier  "i.MX Accelerated Framebuffer Device"

   Driver   "vivante"

   Option   "fbdev"   "/dev/fb0"

   Option   "vivante_fbdev" "/dev/fb0"

   Option   "HWcursor"  "false"

EndSection

Section "Screen"

   Identifier   "Default Screen"

   Device   "i.MX Accelerated Framebuffer Device"

EndSection

Section "ServerLayout"

   Identifier   "Default Layout"

   Screen   "Default Screen"

EndSection

 

 

 

/var/log/Xorg.0.log:

...

[977609.560] (II) Loading sub module "fbdevhw"

[977609.560] (II) LoadModule: "fbdevhw"

[977609.560] (II) Loading /usr/lib/xorg/modules/libfbdevhw.so

[977609.564] (II) Module fbdevhw: vendor="X.Org Foundation"

[977609.564]    compiled for 1.16.3, module version = 0.0.2

[977609.564]    ABI class: X.Org Video Driver, version 18.0

[977609.564] (EE) open /dev/fb0: No such file or directory

[977609.564] (EE) No devices detected.

[977609.565] (EE)          

Fatal server error:        

[977609.565] (EE) no screens found(EE)

[977609.565] (EE)          

Please consult the The X.Org Foundation support

         at http://wiki.x.org

for help.                 

[977609.565] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.

[977609.565] (EE)           

Original Attachment has been moved to: defconfig-no-fb.zip

Original Attachment has been moved to: bootlog-no-fb.zip

0 Kudos
1 Solution
1,958 Views
adrianmcgrath
Contributor III

Hi Igor

I've managed to resolve this issue by going over my kernel changes. During this exercise I noticed an error in my board.dts file.

To assist anyone with a similar issue in future, I corrected the enabling of the HDMI FrameBuffer in my board.dts file as shown below:

&mxcfb2 {

    status = "okay";

};

I now have Xwindows [hurray].

Thanks for your suggestions.

Adrian

View solution in original post

0 Kudos
5 Replies
1,958 Views
igorpadykov
NXP TechSupport
NXP TechSupport

Hi Adrian

one can try NXP/FSL 3.14.28 BSP, it has prebuilt images,

Freescale_Yocto_Project_User's_Guide.pdf gives building instructions

Board Support Packages (32)

L3.14.28_1.0.0_iMX6QDLS_BUNDLE (REV L3.14.28_1.0.0)

SABRE Board Reference Design|NXP

Best regards

igor

-----------------------------------------------------------------------------------------------------------------------

Note: If this post answers your question, please click the Correct Answer button. Thank you!

-----------------------------------------------------------------------------------------------------------------------

0 Kudos
1,958 Views
adrianmcgrath
Contributor III

Hi Igor

Apologies for taking so long to reply. Okay, now using the supported Yocto Fido BSP.

Sadly, the pre-built images don't work on my board. The board I'm using is based on SabreSD but it's not the same, on this board uSD card is used for the rootfs and NAND is used for booting U-Boot.

Current status:

* Back-ported my U-boot changes from v2015.04 to v2014.04.

* As before, I see the U-boot splash screen on the HDMI TV

* U-boot kernel command line:

          >> editenv mmcargs

          >> setenv bootargs console=ttymxc2,115200 root=/dev/mmcblk2p2 rootwait rw    \

                                          video=mxcfb0:dev=hdmi,1920x1080M@60,if=RGB24

          >> boot

* System boots to the login prompt, again no /dev/fb present and therefore no Xwindows seen

My defconfig contains the following framebuffer specific selections:

$ more defconfig | grep -i "FB" | grep "y"

CONFIG_FB=y

CONFIG_FB_BOOT_VESA_SUPPORT=y

CONFIG_FB_CFB_FILLRECT=y

CONFIG_FB_CFB_COPYAREA=y

CONFIG_FB_CFB_IMAGEBLIT=y

CONFIG_FB_DEFERRED_IO=y

CONFIG_FB_MODE_HELPERS=y

CONFIG_FB_MX3=y

CONFIG_FB_MXS=y

CONFIG_FB_MXC=y

CONFIG_FB_MXC_SYNC_PANEL=y

CONFIG_FB_MXC_LDB=y

CONFIG_FB_MXC_MIPI_DSI=y

CONFIG_FB_MXC_TRULY_WVGA_SYNC_PANEL=y

CONFIG_FB_MXC_HDMI=y

CONFIG_FB_MXC_EDID=y

CONFIG_FB_MXC_EINK_PANEL=y

CONFIG_FB_MXS_SII902X=y

and the following HDMI specific selections:

$ more defconfig | grep -i "HDMI" | grep "y"

CONFIG_MFD_MXC_HDMI=y

CONFIG_HDMI=y

CONFIG_FB_MXC_HDMI=y

CONFIG_SND_SOC_FSL_HDMI=y

CONFIG_SND_SOC_IMX_HDMI_DMA=y

CONFIG_SND_SOC_IMX_HDMI=y

CONFIG_SND_SOC_HDMI_CODEC=y

Any ideas on what I'm missing?

Thanks in advance

Adrian

ps: full defconfig and boot log attached to posting

0 Kudos
1,958 Views
igorpadykov
NXP TechSupport
NXP TechSupport

Hi Adrian

could you try to disable HDMI in u-boot and let Linux initialize it :

https://community.freescale.com/thread/342916

Best regards

igor

0 Kudos
1,958 Views
adrianmcgrath
Contributor III

Hi Igor

Thanks for the link.

I've removed the HDMI and display sections from my board specific aspects of U-Boot (v2014.04) and still no /dev/fb0.

Can anyone suggest other routes of investigation to pursue?

Many thanks

Adrian

ps:

Defconfig for video specific settings

CONFIG_MXC_HDMI_CEC=y

CONFIG_MFD_MXC_HDMI=y

CONFIG_HDMI=y

CONFIG_SND_SOC_FSL_HDMI=y

CONFIG_SND_SOC_IMX_HDMI_DMA=y

CONFIG_SND_SOC_IMX_HDMI=y

CONFIG_SND_SOC_HDMI_CODEC=y

CONFIG_FB=y

CONFIG_FB_BOOT_VESA_SUPPORT=y

CONFIG_FB_CFB_FILLRECT=y

CONFIG_FB_CFB_COPYAREA=y

CONFIG_FB_CFB_IMAGEBLIT=y

CONFIG_FB_DEFERRED_IO=y

CONFIG_FB_MODE_HELPERS=y

CONFIG_FB_MX3=y

CONFIG_FB_MXS=y

CONFIG_FB_MXC=y

CONFIG_FB_MXC_SYNC_PANEL=y

CONFIG_FB_MXC_LDB=y

CONFIG_FB_MXC_MIPI_DSI=y

CONFIG_FB_MXC_TRULY_WVGA_SYNC_PANEL=y

CONFIG_FB_MXC_HDMI=y

CONFIG_FB_MXC_EDID=y

CONFIG_FB_MXC_EINK_PANEL=y

CONFIG_FB_MXS_SII902X=y

CONFIG_FB_MXC_DCIC=m

CONFIG_VIDEO_DEV=y

CONFIG_VIDEO_V4L2=y

CONFIG_VIDEOBUF_GEN=y

CONFIG_VIDEOBUF_DMA_CONTIG=y

CONFIG_VIDEOBUF2_CORE=y

CONFIG_VIDEOBUF2_MEMOPS=y

CONFIG_VIDEOBUF2_DMA_CONTIG=y

CONFIG_VIDEOBUF2_VMALLOC=m

CONFIG_USB_VIDEO_CLASS=m

CONFIG_USB_VIDEO_CLASS_INPUT_EVDEV=y

CONFIG_VIDEO_MXC_OUTPUT=y

CONFIG_VIDEO_MXC_CAPTURE=m

CONFIG_VIDEO_V4L2_MXC_INT_DEVICE=m

CONFIG_VIDEO_MXC_IPU_CAMERA=y

CONFIG_VIDEO_MXC_IPU_OUTPUT=y

CONFIG_VIDEO_MXC_PXP_V4L2=y

CONFIG_VIDEO_MXC_CSI_CAMERA=m

CONFIG_VIDEO_MX3=y

CONFIG_VIDEO_CODA=y

CONFIG_VIDEO_IR_I2C=y

CONFIG_VIDEOMODE_HELPERS=y

CONFIG_VIDEO_MXC_IPU_CAMERA=y

CONFIG_MXC_IPU_DEVICE_QUEUE_SDC=m

CONFIG_MXC_IPU_PRP_ENC=m

CONFIG_MXC_IPU_CSI_ENC=m

CONFIG_VIDEO_MXC_IPU_OUTPUT=y

CONFIG_MXC_IPU=y

CONFIG_MXC_IPU_V3=y

CONFIG_MX3_IPU=y

CONFIG_MX3_IPU_IRQS=4

0 Kudos
1,959 Views
adrianmcgrath
Contributor III

Hi Igor

I've managed to resolve this issue by going over my kernel changes. During this exercise I noticed an error in my board.dts file.

To assist anyone with a similar issue in future, I corrected the enabling of the HDMI FrameBuffer in my board.dts file as shown below:

&mxcfb2 {

    status = "okay";

};

I now have Xwindows [hurray].

Thanks for your suggestions.

Adrian

0 Kudos