Ok. So, the problem appears to be that the nouveau kernel module is unable to parse some part of the VBIOS tables, and this causes it to fail to detect the attached LVDS laptop monitor. Relevant pieces of dmesg are:
[ 9.962665] [drm] nouveau 0000:01:00.0: 0x5E8D: parsing output script 0
[ 9.962667] [drm] nouveau 0000:01:00.0: 0x5E8D: Init table command not found: 0x3A
[ 9.962826] [drm] nouveau 0000:01:00.0: Couldn't find matching output script table
[ 9.962979] [drm] nouveau 0000:01:00.0: 0x5E8D: parsing output script 0
[ 9.962981] [drm] nouveau 0000:01:00.0: 0x5E8D: Init table command not found: 0x3A
[ 9.963119] [drm] nouveau 0000:01:00.0: 0x5A46: parsing output script 0
[ 9.963121] [drm] nouveau 0000:01:00.0: 0x5E8D: parsing output script 0
[ 9.963123] [drm] nouveau 0000:01:00.0: 0x5E8D: Init table command not found: 0x3A
[ 9.963254] [drm] nouveau 0000:01:00.0: 0x5A46: parsing output script 0
=================== snip =======================================
[ 10.297006] [drm] nouveau 0000:01:00.0: Detected a DP output
[ 10.297009] [drm] nouveau 0000:01:00.0: Detected a DAC output
[ 10.297011] [drm] nouveau 0000:01:00.0: Detected a DP output
[ 10.297012] [drm] nouveau 0000:01:00.0: Detected a TMDS output
[ 10.297014] [drm] nouveau 0000:01:00.0: Detected a DP output
[ 10.297016] [drm] nouveau 0000:01:00.0: Detected a TMDS output
[ 10.297018] [drm] nouveau 0000:01:00.0: Detected a DisplayPort connector
[ 10.297079] [drm] nouveau 0000:01:00.0: Detected a VGA connector
[ 10.297114] [drm] nouveau 0000:01:00.0: Detected a DisplayPort connector
[ 10.297163] [drm] nouveau 0000:01:00.0: Detected a DisplayPort connector
There have been a bunch of connector-related commits upstream since 2.6.33, of which the most promising looks to be:
================================================
git commit: df7f943388cd40cb7a249a97ffa82b669157638f
committer: Ben Skeggs <email address hidden>
timestamp: Wed 2010-03-10 15:58:06 +1000
message:
drm/nv50: fix connector table parsing for some cards
The connector table index in the DCB entry for each output type is an
index into the connector table, and does *not* necessarily match up
with what was previously called "index" in the connector table entries
themselves.
Not real sure what that index is exactly, renamed to "index2" as we
still use it to prevent creating multiple TV connectors.
Signed-off-by: Ben Skeggs <email address hidden>
===================================================
There's also the warning that acceleration is disabled on the NVa3 chipset due to missing ctxprog; that's recently been implemented upstream, but should be harmless.
Ok. So, the problem appears to be that the nouveau kernel module is unable to parse some part of the VBIOS tables, and this causes it to fail to detect the attached LVDS laptop monitor. Relevant pieces of dmesg are:
[ 9.962665] [drm] nouveau 0000:01:00.0: 0x5E8D: parsing output script 0 ======= ======= ======= ======= ====
[ 9.962667] [drm] nouveau 0000:01:00.0: 0x5E8D: Init table command not found: 0x3A
[ 9.962826] [drm] nouveau 0000:01:00.0: Couldn't find matching output script table
[ 9.962979] [drm] nouveau 0000:01:00.0: 0x5E8D: parsing output script 0
[ 9.962981] [drm] nouveau 0000:01:00.0: 0x5E8D: Init table command not found: 0x3A
[ 9.963119] [drm] nouveau 0000:01:00.0: 0x5A46: parsing output script 0
[ 9.963121] [drm] nouveau 0000:01:00.0: 0x5E8D: parsing output script 0
[ 9.963123] [drm] nouveau 0000:01:00.0: 0x5E8D: Init table command not found: 0x3A
[ 9.963254] [drm] nouveau 0000:01:00.0: 0x5A46: parsing output script 0
=================== snip =======
[ 10.297006] [drm] nouveau 0000:01:00.0: Detected a DP output
[ 10.297009] [drm] nouveau 0000:01:00.0: Detected a DAC output
[ 10.297011] [drm] nouveau 0000:01:00.0: Detected a DP output
[ 10.297012] [drm] nouveau 0000:01:00.0: Detected a TMDS output
[ 10.297014] [drm] nouveau 0000:01:00.0: Detected a DP output
[ 10.297016] [drm] nouveau 0000:01:00.0: Detected a TMDS output
[ 10.297018] [drm] nouveau 0000:01:00.0: Detected a DisplayPort connector
[ 10.297079] [drm] nouveau 0000:01:00.0: Detected a VGA connector
[ 10.297114] [drm] nouveau 0000:01:00.0: Detected a DisplayPort connector
[ 10.297163] [drm] nouveau 0000:01:00.0: Detected a DisplayPort connector
There have been a bunch of connector-related commits upstream since 2.6.33, of which the most promising looks to be: ======= ======= ======= ======= ======= ====== b7a249a97ffa82b 669157638f
=======
git commit: df7f943388cd40c
committer: Ben Skeggs <email address hidden>
timestamp: Wed 2010-03-10 15:58:06 +1000
message:
drm/nv50: fix connector table parsing for some cards
The connector table index in the DCB entry for each output type is an
index into the connector table, and does *not* necessarily match up
with what was previously called "index" in the connector table entries
themselves.
Not real sure what that index is exactly, renamed to "index2" as we
still use it to prevent creating multiple TV connectors.
Signed-off-by: Ben Skeggs <email address hidden> ======= ======= ======= ======= ======= ======= ==
=======
All these connector-related commits are in the linux-backports -modules- nouveau package in the xorg-edgers PPA: https:/ /edge.launchpad .net/~xorg- edgers/ +archive and are also available in the drm-next kernel-team builds http:// kernel. ubuntu. com/~kernel- ppa/mainline/ drm-next/ 2010-04- 09-lucid/. Testing if the kernel-team package fixes this would be useful.
There's also the warning that acceleration is disabled on the NVa3 chipset due to missing ctxprog; that's recently been implemented upstream, but should be harmless.