[Nouveau] SVIDEO and xrandr
Emil Velikov
emil.l.velikov at gmail.com
Sun Nov 25 15:56:35 PST 2012
On 25/11/12 08:46, Wade Berrier wrote:
> Hello,
>
> I've been trying to get my n17 card to do SVIDEO tv out
>
> --------------------------
> 01:00.0 VGA compatible controller: NVIDIA Corporation NV17 [GeForce4 MX 440] (rev a3)
> --------------------------
>
> It is close to working. The first issue is that it was outputting PAL, and I
> found the module parameter and kernel boot config to change that:
>
> --------------------------
> nouveau.tv_norm=NTSC-M
> --------------------------
>
> That makes the picture look much better, but the colors are still off.
>
> Then I notice that the card thinks it's outputting COMPOSITE instead of SVIDEO:
>
> --------------------------
> wberrier at myth:~$ xrandr --prop
> Screen 0: minimum 320 x 200, current 640 x 480, maximum 4096 x 4096
> VGA-1 disconnected (normal left inverted right x axis y axis)
> TV-1 connected 640x480+0+0 (normal left inverted right x axis y axis) 0mm x 0mm
> overscan: 50 (0x00000032) range: (0,100)
> hue: 0 (0x00000000) range: (0,100)
> saturation: 50 (0x00000032) range: (0,100)
> flicker reduction: 50 (0x00000032) range: (0,100)
> mode: NTSC-M
> supported: PAL PAL-M PAL-N PAL-Nc
> NTSC-M NTSC-J
> subconnector: Composite
> supported: Unknown Composite SVIDEO Component
> SCART
> select subconnector: Automatic
> supported: Automatic Composite SVIDEO Component
> SCART
> 720x480 59.9 +
> 1024x768 59.9
> 800x600 59.9
> 720x576 59.9
> 640x480 59.9*
> 400x300 119.9
> 320x240 119.9
> 320x200 119.9
> --------------------------
>
> When trying to change the subconnector it to SVIDEO, it fails:
>
> --------------------------
> wberrier at myth:~$ xrandr --output TV-1 --set subconnector SVIDEO
> X Error of failed request: BadValue (integer parameter out of range for operation)
> Major opcode of failed request: 149 (RANDR)
> Minor opcode of failed request: 13 (RRChangeOutputProperty)
> Value in failed request: 0x52
> Serial number of failed request: 29
> Current serial number in output stream: 30
> --------------------------
>
> It appears that other people on the net are also having this issue.
>
> I dug around the kernel nouveau/drm source and found where the default for
> COMPOSITE gets set, and also discovered that the "override_conntype" wasn't
> what I was looking for.
>
> Any help about how to solve this and what the best method is?
>
> An additional module parameter for nouveau may be nice for forcing the
> subconnector.
>
> Fixing xrandr to work would also be nice, as it also fails to set the mode:
>
> --------------------------
> wberrier at myth:~$ xrandr --output TV-1 --set mode PAL
> X Error of failed request: BadValue (integer parameter out of range for operation)
> Major opcode of failed request: 149 (RANDR)
> Minor opcode of failed request: 13 (RRChangeOutputProperty)
> Value in failed request: 0x52
> Serial number of failed request: 29
> Current serial number in output stream: 30
> --------------------------
>
> Help?
>
> Wade
> _______________________________________________
> Nouveau mailing list
> Nouveau at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/nouveau
>
Hi Wade
If you look at nv17_tv.c it will answer all your questions
It boils down to nv17_tv_set_property()
* if (property == conf->tv_mode_property) {
if (connector->dpms != DRM_MODE_DPMS_OFF)
return -EINVAL;
* if (property == conf->tv_select_subconnector_property) {
if (tv_norm->kind != TV_ENC_MODE)
return -EINVAL;
For a list of TV_ENC_MODE vs CTV_ENC_MODE take a look in nv17_tv_modes.c
Have fun :P
More information about the Nouveau
mailing list