Patchwork i.MX6q Boot failure using MACHINE=nitrogen6x

login
register
mail settings
Submitter Eric Nelson
Date Dec. 2, 2013, 5:07 p.m.
Message ID <529CBE41.2040805@boundarydevices.com>
Download mbox | patch
Permalink /patch/62671/
State Not Applicable
Delegated to: Otavio Salvador
Headers show

Comments

Eric Nelson - Dec. 2, 2013, 5:07 p.m.
Hi Tarek,

On 12/02/2013 09:51 AM, Tarek El-Sherbiny wrote:
> Hello,
>
> I'm building the latest Yocto branch (/dora/) for the Nitrogen6 board as
> given by this post:
> http://boundarydevices.com/yocto-dora-release-mx6/
>
> The image is based on core-image-basic + packagegroup-fsl-gstreamer .
>
> When I boot the nitrogen board I get the following kernel messages then
> system hangs:
>
>
>  <snip>
>
> INIT: version 2.88 booting
>
> generic-usb: probe of 0003:D0D9:0002.0001 failed with error -22
> usb 2-1.2: new low speed USB device number 4 using fsl-ehci
> Starting udev
> Starting Bootlog daemon: input: USB Optical Mouse as
> /devices/platform/fsl-ehci.1/usb2/2-1/2-1.2/2-1.2:1.0/input/input1
> generic-usb 0003:0461:4D0F.0002: input,hidraw0: USB HID v1.11 Mouse [USB
> Optical Mouse] on usb-fsl-ehci.1-1.2/input0
> udevd[1433]: starting version 182
> camera_reset: power_gp=0x6, reset_gp=0x8 reset_gp2=0xab
> ov5642_powerdown: powerdown=0, power_gp=0x6
> ov5642_read_reg:write reg error:reg=300a
> camera ov5642 is not found
> mxc_sdc_fb mxc_sdc_fb.0: timeout when waiting for flip irq
> bootlogd.
>
> ALSA: Restoring mixer settings...
>
> Configuring network interfaces... eth0: Freescale FEC PHY driver [Micrel
> KSZ9021 Gigabit PHY] (mii_bus:phy_addr=1:06, irq=284)
> udhcpc (v1.21.1) started
>
> Sending discover...
>
> mxc_hdmi mxc_hdmi: same edid
> mxc_hdmi mxc_hdmi: mxc_hdmi_edid_rebuild_modelist: Added mode 0(VIC 16):
> mxc_hdmi mxc_hdmi: mxc_hdmi_edid_rebuild_modelist: Added mode 1(VIC 0):
> mxc_hdmi mxc_hdmi: mxc_hdmi_edid_rebuild_modelist: Added mode 23(VIC 0):
>
> What exactly is missing?
>

It doesn't appear that your machine is hanging, but rather bouncing
on HDMI connect/disconnect. Jose reported this a while back:

	https://lists.yoctoproject.org/pipermail/meta-freescale/2013-October/005113.html

Can you try applying this patch into sources/meta-fsl-arm-extra?

	~/yocto/sources/meta-fsl-arm-extra$ patch -p1 < 0001-*.patch

We've seen some issues with particular monitors (especially DVI) where
the DVI/HDMI detection pins seem to "bounce" when X starts up.

This kernel version includes a patch which bypasses the HDMI/DVI
disconnect code:
	https://github.com/boundarydevices/linux-imx6/commit/d9cd79d11ff9f7a7f89cbc94b68757b67cdfe5fc


Please advise,


Eric
Tarek El-Sherbiny - Dec. 3, 2013, 12:43 p.m.
Hi Eric,

Thank you very much for the patch. With the new kernel I don't see the
bouncing on HDMI problem.
I am using HDMI to DVI cable to test 1080 as I don't have 1080 HDMI monitor.
With the new kernel Linux does not drive the DVI monitor at all. I switched
to 720 HDMI monitor and now there is output signal but I get horizontal
scrolling lines across the screen!
I don't see this problem with u-boot or Freescale kernel.
Have you seen this problem before?

Thanks,
Tarek


On Mon, Dec 2, 2013 at 5:07 PM, Eric Nelson <eric.nelson@boundarydevices.com
> wrote:

> Hi Tarek,
>
>
> On 12/02/2013 09:51 AM, Tarek El-Sherbiny wrote:
>
>> Hello,
>>
>> I'm building the latest Yocto branch (/dora/) for the Nitrogen6 board as
>>
>> given by this post:
>> http://boundarydevices.com/yocto-dora-release-mx6/
>>
>> The image is based on core-image-basic + packagegroup-fsl-gstreamer .
>>
>> When I boot the nitrogen board I get the following kernel messages then
>> system hangs:
>>
>>
>>  <snip>
>>
>>
>> INIT: version 2.88 booting
>>
>> generic-usb: probe of 0003:D0D9:0002.0001 failed with error -22
>> usb 2-1.2: new low speed USB device number 4 using fsl-ehci
>> Starting udev
>> Starting Bootlog daemon: input: USB Optical Mouse as
>> /devices/platform/fsl-ehci.1/usb2/2-1/2-1.2/2-1.2:1.0/input/input1
>> generic-usb 0003:0461:4D0F.0002: input,hidraw0: USB HID v1.11 Mouse [USB
>> Optical Mouse] on usb-fsl-ehci.1-1.2/input0
>> udevd[1433]: starting version 182
>> camera_reset: power_gp=0x6, reset_gp=0x8 reset_gp2=0xab
>> ov5642_powerdown: powerdown=0, power_gp=0x6
>> ov5642_read_reg:write reg error:reg=300a
>> camera ov5642 is not found
>> mxc_sdc_fb mxc_sdc_fb.0: timeout when waiting for flip irq
>> bootlogd.
>>
>> ALSA: Restoring mixer settings...
>>
>> Configuring network interfaces... eth0: Freescale FEC PHY driver [Micrel
>> KSZ9021 Gigabit PHY] (mii_bus:phy_addr=1:06, irq=284)
>> udhcpc (v1.21.1) started
>>
>> Sending discover...
>>
>> mxc_hdmi mxc_hdmi: same edid
>> mxc_hdmi mxc_hdmi: mxc_hdmi_edid_rebuild_modelist: Added mode 0(VIC 16):
>> mxc_hdmi mxc_hdmi: mxc_hdmi_edid_rebuild_modelist: Added mode 1(VIC 0):
>> mxc_hdmi mxc_hdmi: mxc_hdmi_edid_rebuild_modelist: Added mode 23(VIC 0):
>>
>> What exactly is missing?
>>
>>
> It doesn't appear that your machine is hanging, but rather bouncing
> on HDMI connect/disconnect. Jose reported this a while back:
>
>         https://lists.yoctoproject.org/pipermail/meta-freescale/
> 2013-October/005113.html
>
> Can you try applying this patch into sources/meta-fsl-arm-extra?
>
>         ~/yocto/sources/meta-fsl-arm-extra$ patch -p1 < 0001-*.patch
>
> We've seen some issues with particular monitors (especially DVI) where
> the DVI/HDMI detection pins seem to "bounce" when X starts up.
>
> This kernel version includes a patch which bypasses the HDMI/DVI
> disconnect code:
>         https://github.com/boundarydevices/linux-imx6/commit/
> d9cd79d11ff9f7a7f89cbc94b68757b67cdfe5fc
>
>
> Please advise,
>
>
> Eric
>
Eric Nelson - Dec. 3, 2013, 2:48 p.m.
Hi Tarek,

On 12/03/2013 05:43 AM, Tarek El-Sherbiny wrote:
> Hi Eric,
>
> Thank you very much for the patch. With the new kernel I don't see the
> bouncing on HDMI problem.
> I am using HDMI to DVI cable to test 1080 as I don't have 1080 HDMI monitor.
> With the new kernel Linux does not drive the DVI monitor at all. I
> switched to 720 HDMI monitor and now there is output signal but I get
> horizontal scrolling lines across the screen!
> I don't see this problem with u-boot or Freescale kernel.
> Have you seen this problem before?
>

Can you forward the output from /sys/class/graphics/fb0/modes and
/sys/class/graphics/fb0/mode from each of these displays?

It's possible that we're blocking some of the modes because they
don't support audio:
	https://github.com/boundarydevices/linux-imx6/commit/104d4ebfcad4021ed982ec0f436d56c3d0f44068

We added a driver parameter to the mxc_hdmi driver to force
the use of CEA modes. You can override it with this kernel
command-line parameter.
	mxc_hdmi.only_cea=0

If you're running a recent U-Boot, you can also get a list
of supported modes from your monitor using these two
commands:
	U-Boot > i2c dev 1
	U-Boot > i2c edid

Please advise,


Eric
Tarek El-Sherbiny - Dec. 3, 2013, 3:12 p.m.
Hi Eric,

root@nitrogen6x:~# cat /sys/class/graphics/fb0/modes
S:720x480p-60
S:720x576p-50
S:1280x720p-50
S:1280x720p-60
S:1280x1024p-60
V:1024x768p-75
V:1024x768p-70
V:1024x768p-60
V:800x600p-75
V:800x600p-72
V:800x600p-60
V:640x480p-75
V:640x480p-72
V:640x480p-60
U:720x400p-70
D:1360x768p-60
D:1280x720p-60
V:640x480p-60
root@nitrogen6x:~# cat /sys/class/graphics/fb0/mode
S:1280x1024p-60


I'm not running the latest U-boot!

Thanks,
Tarek




On Tue, Dec 3, 2013 at 2:48 PM, Eric Nelson <eric.nelson@boundarydevices.com
> wrote:

> Hi Tarek,
>
>
> On 12/03/2013 05:43 AM, Tarek El-Sherbiny wrote:
>
>> Hi Eric,
>>
>> Thank you very much for the patch. With the new kernel I don't see the
>> bouncing on HDMI problem.
>> I am using HDMI to DVI cable to test 1080 as I don't have 1080 HDMI
>> monitor.
>> With the new kernel Linux does not drive the DVI monitor at all. I
>> switched to 720 HDMI monitor and now there is output signal but I get
>> horizontal scrolling lines across the screen!
>> I don't see this problem with u-boot or Freescale kernel.
>> Have you seen this problem before?
>>
>>
> Can you forward the output from /sys/class/graphics/fb0/modes and
> /sys/class/graphics/fb0/mode from each of these displays?
>
> It's possible that we're blocking some of the modes because they
> don't support audio:
>         https://github.com/boundarydevices/linux-imx6/commit/
> 104d4ebfcad4021ed982ec0f436d56c3d0f44068
>
> We added a driver parameter to the mxc_hdmi driver to force
> the use of CEA modes. You can override it with this kernel
> command-line parameter.
>         mxc_hdmi.only_cea=0
>
> If you're running a recent U-Boot, you can also get a list
> of supported modes from your monitor using these two
> commands:
>         U-Boot > i2c dev 1
>         U-Boot > i2c edid
>
> Please advise,
>
>
> Eric
>
Eric Nelson - Dec. 3, 2013, 4:40 p.m.
Hi Tarek,

On 12/03/2013 08:12 AM, Tarek El-Sherbiny wrote:
> Hi Eric,
>
> root@nitrogen6x:~# cat /sys/class/graphics/fb0/modes
> S:720x480p-60
> S:720x576p-50
> S:1280x720p-50
> S:1280x720p-60
> S:1280x1024p-60
> V:1024x768p-75
> V:1024x768p-70
> V:1024x768p-60
> V:800x600p-75
> V:800x600p-72
> V:800x600p-60
> V:640x480p-75
> V:640x480p-72
> V:640x480p-60
> U:720x400p-70
> D:1360x768p-60
> D:1280x720p-60
> V:640x480p-60

This looks like a pretty standard set of modes for a
4:3 aspect ratio monitor.

> root@nitrogen6x:~# cat /sys/class/graphics/fb0/mode
> S:1280x1024p-60

This doesn't match one of the CEA modes:
	https://github.com/boundarydevices/linux-imx6/blob/boundary-imx_3.0.35_4.1.0/drivers/video/mxc/mxc_edid.c#L41

Can you boot with this command-line argument?
	mxc_hdmi.only_cea=0

I think you'll either need that or you'll need to choose a
display resolution from the list. It appears that your monitor
and CEA both like 1280x720@60, though you'll likely get
letter-boxing.

Regards,


Eric
Tarek El-Sherbiny - Dec. 3, 2013, 5:33 p.m.
Hi Eric,

On the command line arguments I had dmfc=3. That was set to improve the IPU
performance as I need to play up to 16 streams simultaneously.
When I removed this option the boundary kernel is booting without the
horizontal lines problem. HDMI to DVI is still not working.

cat /proc/cmdline
console=ttymxc1,115200 video=mxcfb0:dev=hdmi,1920x1080@60 fbmem=24M,10M
root=/dev/mmcblk0p1 rootfs=ext2 rw rootwait enable_wait_mode=off
consoleblank=0 bpp=32


This is fine for know but it would be nice to understand why dmfc is
conflict with boundary kernel.
Also I'm not sure how is this going to affect the IPU performance!
Hope you have an answer to this question so I can fully test the
application.
https://lists.yoctoproject.org/pipermail/meta-freescale/2013-December/005854.html

Thanks,
Tarek



The command line argument doesn't help:

console=ttymxc1,115200 video=mxcfb0:dev=hdmi,1920x1080@60 fbmem=24M,10M
root=/dev/mmcblk0p1 rootfs=ext2 rw rootwait enable_wait_mode=off
consoleblank=0 dmfc=3 bpp=32

Also



On Tue, Dec 3, 2013 at 4:40 PM, Eric Nelson <eric.nelson@boundarydevices.com
> wrote:

> Hi Tarek,
>
>
> On 12/03/2013 08:12 AM, Tarek El-Sherbiny wrote:
>
>> Hi Eric,
>>
>> root@nitrogen6x:~# cat /sys/class/graphics/fb0/modes
>> S:720x480p-60
>> S:720x576p-50
>> S:1280x720p-50
>> S:1280x720p-60
>> S:1280x1024p-60
>> V:1024x768p-75
>> V:1024x768p-70
>> V:1024x768p-60
>> V:800x600p-75
>> V:800x600p-72
>> V:800x600p-60
>> V:640x480p-75
>> V:640x480p-72
>> V:640x480p-60
>> U:720x400p-70
>> D:1360x768p-60
>> D:1280x720p-60
>> V:640x480p-60
>>
>
> This looks like a pretty standard set of modes for a
> 4:3 aspect ratio monitor.
>
>
>  root@nitrogen6x:~# cat /sys/class/graphics/fb0/mode
>> S:1280x1024p-60
>>
>
> This doesn't match one of the CEA modes:
>         https://github.com/boundarydevices/linux-imx6/
> blob/boundary-imx_3.0.35_4.1.0/drivers/video/mxc/mxc_edid.c#L41
>
> Can you boot with this command-line argument?
>         mxc_hdmi.only_cea=0
>
> I think you'll either need that or you'll need to choose a
> display resolution from the list. It appears that your monitor
> and CEA both like 1280x720@60, though you'll likely get
> letter-boxing.
>
> Regards,
>
>
> Eric
>
Eric Nelson - Dec. 3, 2013, 6:31 p.m.
Hi Tarek,

Are you using multiple displays?

If not, you're going to want these
	video=mxcfb1:off video=mxcfb2:off video=mxcfb2:off

Otherwise you'll get a default LDB display. You can check this
in /sys/class/graphics/fb2/.

Did you try running the DVI monitor with "mxc_hdmi.only_cea=0" in your
kernel command-line?

I'm not sure what dmfc=3 is doing to the display, but I suspect
that you're exceeding the bandwidth requirements with multiple
displays configured.

I'm also not certain what you're running into with the
gstreamer build.

Regards,


Eric

On 12/03/2013 10:33 AM, Tarek El-Sherbiny wrote:
> Hi Eric,
>
> On the command line arguments I had dmfc=3. That was set to improve the
> IPU performance as I need to play up to 16 streams simultaneously.
> When I removed this option the boundary kernel is booting without the
> horizontal lines problem. HDMI to DVI is still not working.
>
> cat /proc/cmdline
> console=ttymxc1,115200 video=mxcfb0:dev=hdmi,1920x1080@60 fbmem=24M,10M
> root=/dev/mmcblk0p1 rootfs=ext2 rw rootwait enable_wait_mode=off
> consoleblank=0 bpp=32
>
>
> This is fine for know but it would be nice to understand why dmfc is
> conflict with boundary kernel.
> Also I'm not sure how is this going to affect the IPU performance!
> Hope you have an answer to this question so I can fully test the
> application.
> https://lists.yoctoproject.org/pipermail/meta-freescale/2013-December/005854.html
>
> Thanks,
> Tarek
>
>
>
> The command line argument doesn't help:
>
> console=ttymxc1,115200 video=mxcfb0:dev=hdmi,1920x1080@60 fbmem=24M,10M
> root=/dev/mmcblk0p1 rootfs=ext2 rw rootwait enable_wait_mode=off
> consoleblank=0 dmfc=3 bpp=32
>
> Also
>
>
>
> On Tue, Dec 3, 2013 at 4:40 PM, Eric Nelson
> <eric.nelson@boundarydevices.com
> <mailto:eric.nelson@boundarydevices.com>> wrote:
>
>     Hi Tarek,
>
>
>     On 12/03/2013 08:12 AM, Tarek El-Sherbiny wrote:
>
>         Hi Eric,
>
>         root@nitrogen6x:~# cat /sys/class/graphics/fb0/modes
>         S:720x480p-60
>         S:720x576p-50
>         S:1280x720p-50
>         S:1280x720p-60
>         S:1280x1024p-60
>         V:1024x768p-75
>         V:1024x768p-70
>         V:1024x768p-60
>         V:800x600p-75
>         V:800x600p-72
>         V:800x600p-60
>         V:640x480p-75
>         V:640x480p-72
>         V:640x480p-60
>         U:720x400p-70
>         D:1360x768p-60
>         D:1280x720p-60
>         V:640x480p-60
>
>
>     This looks like a pretty standard set of modes for a
>     4:3 aspect ratio monitor.
>
>
>         root@nitrogen6x:~# cat /sys/class/graphics/fb0/mode
>         S:1280x1024p-60
>
>
>     This doesn't match one of the CEA modes:
>     https://github.com/__boundarydevices/linux-imx6/__blob/boundary-imx_3.0.35_4.1.__0/drivers/video/mxc/mxc_edid.__c#L41
>     <https://github.com/boundarydevices/linux-imx6/blob/boundary-imx_3.0.35_4.1.0/drivers/video/mxc/mxc_edid.c#L41>
>
>     Can you boot with this command-line argument?
>              mxc_hdmi.only_cea=0
>
>     I think you'll either need that or you'll need to choose a
>     display resolution from the list. It appears that your monitor
>     and CEA both like 1280x720@60, though you'll likely get
>     letter-boxing.
>
>     Regards,
>
>
>     Eric
>
>
>
>
> --
> /Tarek/
Tarek El-Sherbiny - Dec. 4, 2013, 12:55 p.m.
On Tue, Dec 3, 2013 at 6:31 PM, Eric Nelson <eric.nelson@boundarydevices.com
> wrote:

> Hi Tarek,
>
> Are you using multiple displays?
>

No just one display


> If not, you're going to want these
>         video=mxcfb1:off video=mxcfb2:off video=mxcfb2:off
>

I will give this a try. Thanks


> Otherwise you'll get a default LDB display. You can check this
> in /sys/class/graphics/fb2/.
>
> Did you try running the DVI monitor with "mxc_hdmi.only_cea=0" in your
> kernel command-line?
>

Yes, it doesn't help.


> I'm not sure what dmfc=3 is doing to the display, but I suspect
> that you're exceeding the bandwidth requirements with multiple
> displays configured.
>
> I'm also not certain what you're running into with the
> gstreamer build.
>
No problem I found it :-)


> Regards,
>
>
> Eric
>
>
> On 12/03/2013 10:33 AM, Tarek El-Sherbiny wrote:
>
>> Hi Eric,
>>
>> On the command line arguments I had dmfc=3. That was set to improve the
>> IPU performance as I need to play up to 16 streams simultaneously.
>> When I removed this option the boundary kernel is booting without the
>> horizontal lines problem. HDMI to DVI is still not working.
>>
>> cat /proc/cmdline
>> console=ttymxc1,115200 video=mxcfb0:dev=hdmi,1920x1080@60 fbmem=24M,10M
>> root=/dev/mmcblk0p1 rootfs=ext2 rw rootwait enable_wait_mode=off
>> consoleblank=0 bpp=32
>>
>>
>> This is fine for know but it would be nice to understand why dmfc is
>> conflict with boundary kernel.
>> Also I'm not sure how is this going to affect the IPU performance!
>> Hope you have an answer to this question so I can fully test the
>> application.
>> https://lists.yoctoproject.org/pipermail/meta-freescale/
>> 2013-December/005854.html
>>
>> Thanks,
>> Tarek
>>
>>
>>
>> The command line argument doesn't help:
>>
>> console=ttymxc1,115200 video=mxcfb0:dev=hdmi,1920x1080@60 fbmem=24M,10M
>> root=/dev/mmcblk0p1 rootfs=ext2 rw rootwait enable_wait_mode=off
>> consoleblank=0 dmfc=3 bpp=32
>>
>> Also
>>
>>
>>
>> On Tue, Dec 3, 2013 at 4:40 PM, Eric Nelson
>> <eric.nelson@boundarydevices.com
>> <mailto:eric.nelson@boundarydevices.com>> wrote:
>>
>>     Hi Tarek,
>>
>>
>>     On 12/03/2013 08:12 AM, Tarek El-Sherbiny wrote:
>>
>>         Hi Eric,
>>
>>         root@nitrogen6x:~# cat /sys/class/graphics/fb0/modes
>>         S:720x480p-60
>>         S:720x576p-50
>>         S:1280x720p-50
>>         S:1280x720p-60
>>         S:1280x1024p-60
>>         V:1024x768p-75
>>         V:1024x768p-70
>>         V:1024x768p-60
>>         V:800x600p-75
>>         V:800x600p-72
>>         V:800x600p-60
>>         V:640x480p-75
>>         V:640x480p-72
>>         V:640x480p-60
>>         U:720x400p-70
>>         D:1360x768p-60
>>         D:1280x720p-60
>>         V:640x480p-60
>>
>>
>>     This looks like a pretty standard set of modes for a
>>     4:3 aspect ratio monitor.
>>
>>
>>         root@nitrogen6x:~# cat /sys/class/graphics/fb0/mode
>>         S:1280x1024p-60
>>
>>
>>     This doesn't match one of the CEA modes:
>>     https://github.com/__boundarydevices/linux-imx6/__
>> blob/boundary-imx_3.0.35_4.1.__0/drivers/video/mxc/mxc_edid.__c#L41
>>
>>     <https://github.com/boundarydevices/linux-imx6/
>> blob/boundary-imx_3.0.35_4.1.0/drivers/video/mxc/mxc_edid.c#L41>
>>
>>     Can you boot with this command-line argument?
>>              mxc_hdmi.only_cea=0
>>
>>     I think you'll either need that or you'll need to choose a
>>     display resolution from the list. It appears that your monitor
>>     and CEA both like 1280x720@60, though you'll likely get
>>     letter-boxing.
>>
>>     Regards,
>>
>>
>>     Eric
>>
>>
>>
>>
>> --
>> /Tarek/
>>
>
>

Patch

From ec2e6d82a16974aa652d38f955d7303b037a1112 Mon Sep 17 00:00:00 2001
From: Eric Nelson <eric.nelson@boundarydevices.com>
Date: Mon, 2 Dec 2013 09:57:49 -0700
Subject: [PATCH] linux-boundary: bump version to include SATA/HDMI updates

Signed-off-by: Eric Nelson <eric.nelson@boundarydevices.com>
---
 recipes-kernel/linux/linux-boundary_3.0.35.bb | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/recipes-kernel/linux/linux-boundary_3.0.35.bb b/recipes-kernel/linux/linux-boundary_3.0.35.bb
index 7875f93..6ed31bc 100644
--- a/recipes-kernel/linux/linux-boundary_3.0.35.bb
+++ b/recipes-kernel/linux/linux-boundary_3.0.35.bb
@@ -8,8 +8,8 @@  DESCRIPTION = "Linux kernel for Boundary Devices boards"
 SRC_URI = "git://github.com/boundarydevices/linux-imx6.git \
            file://defconfig"
 
-LOCALVERSION = "-4.1.0+yocto"
-SRCREV = "58099389255add7c17ce6babf37a50ce5d11d6b8"
+LOCALVERSION = "-4.1.0+yocto-20131202"
+SRCREV = "ee999dcf7b8e8e2854d4f5cf0243c42e7c39ac48"
 
 
 # GPU support patches
-- 
1.8.1.2