Hi,

I am also having some issues with the CN400 chipset on a VIA EPIA SP8000E board.

I am using the following software:

* Gentoo Linux
* Kernel 2.6.13 (epia patches from epiawiki.org)
* linux-viafb from DirectFB CVS
* DirectFB-0.9.24 ebuild, unichrome driver
* DirectFB-extra-0.9.23 ebuild

I had to make some trivial changes to be able to patch the kernel using the linux-viafb patch (Kconfig and Makefile changes). I also added the PCI device ID (0x3118) of my graphics device to via_fbobj.c (although I'm not sure it really is supported). I've attached a patch to linux-viafb showing my changes.

Running the DirectFB examples, everything looks pretty good. df_dok and df_neo looks ok to me. But when I try to play back video, using e.g. df_xine, it looks like the wrong colourspace gets used. The image is stretched to fit the screen vertically, but horizontally it only occupies the leftmost third of the screen. The rest of the screen contains garbage. Also the colours are incorrect.

Any ideas? Is this because some features are simply missing from the unichrome driver, or is it just that the driver doesn't work with the newer Unichrome devices?

Here's the output of df_xine while playing a DVD:

epia ~ # df_xine dvd://
(*) DirectFB/Config: Parsing config file '/etc/directfbrc'.

       ---------------------- DirectFB v0.9.24 ---------------------
             (c) 2000-2002  convergence integrated media GmbH
             (c) 2002-2004  convergence GmbH
        -----------------------------------------------------------

(*) DirectFB/Core: Single Application Core. (2005-12-12 23:19)
(*) Direct/Memcpy: Using MMXEXT optimized memcpy()
(*) Direct/Thread: Running 'VT Switcher' (CRITICAL, 5514)...
(*) Direct/Thread: Running 'Keyboard Input' (INPUT, 5515)...
 (!!!)  *** UNIMPLEMENTED [fusion_reactor_set_lock] *** [reactor.c:797]
(*) DirectFB/Input: Keyboard 0.9 (convergence integrated media GmbH)
(*) Direct/Thread: Running 'LiRC Input' (INPUT, 5516)...
(*) DirectFB/Input: LIRC Device 0.2 (convergence integrated media GmbH)
(*) DirectFB/Genefx: MMX detected and enabled
(*) DirectFB/Graphics: VIA/S3G UniChrome 0.4 (-)
(*) DirectFB/Core/WM: Default 0.2 (Convergence GmbH)
df_xine: here we go!
df_xine: scanning layers for a suitable one
df_xine: probing layer 1
df_xine: -> has a surface
df_xine: -> can be positioned on the screen
df_xine: -> trying to access...uc_overlay: color-keying is disabled
uc_overlay: color-keying is disabled
ok
df_xine: -> checking if double-buffering is supported...yes
df_xine: -> checking if YUY2 is supported...yes
df_xine: -> checking if YV12 is supported...yes
df_xine: using layer 1 [VIA Unichrome Video]
        packed format: YUY2
        planar format: YV12
uc_overlay: color-keying is disabled
uc_overlay: color-keying is disabled
video_out_dfb: using ITURBT601 conversion matrix
video_out_dfb: MMX detected and enabled
video_out_dfb: destination surface is YV12
audio_alsa_out : supported modes are 8bit 16bit 24bit 32bit mono stereo (4-channel not enabled in xine config) (4.1-channel not enabled in xine config) (5-channel not enabled in xine config) (5.1-channel not enabled in xine config) (a/52 and DTS pass-through not enabled in xine config)
xine: found input plugin  : DVD Navigator
[...]
? linux-viafb.patch
Index: ksource.patch
===================================================================
RCS file: /cvs/directfb/linux-viafb/ksource.patch,v
retrieving revision 1.1
diff -u -r1.1 ksource.patch
--- ksource.patch       31 Oct 2005 18:37:05 -0000      1.1
+++ ksource.patch       14 Dec 2005 18:06:49 -0000
@@ -1,6 +1,7 @@
---- linux-2.6.11-orig/drivers/video/Kconfig    2004-12-24 22:33:49.000000000 
+0100
-+++ linux-2.6.11/drivers/video/Kconfig 2005-01-02 14:33:50.000000000 +0100
-@@ -478,6 +478,17 @@
+diff -ru linux-2.6.13-epiam-r1/drivers/video/Kconfig 
linux-2.6.13-epiam-r1-viafb/drivers/video/Kconfig
+--- linux-2.6.13-epiam-r1/drivers/video/Kconfig        2005-12-14 
19:51:42.000000000 +0100
++++ linux-2.6.13-epiam-r1-viafb/drivers/video/Kconfig  2005-12-11 
03:03:54.000000000 +0100
+@@ -720,6 +720,20 @@
          of debugging informations to provide to the maintainer when
          something goes wrong.
  
@@ -8,6 +9,9 @@
 +      tristate "VIA CLE266 support"
 +      depends on FB && PCI
 +      select FB_MODE_HELPERS
++      select FB_CFB_FILLRECT
++      select FB_CFB_COPYAREA
++      select FB_CFB_IMAGEBLIT
 +      help
 +        This driver supports the on-board graphics built in to the VIA CLE266 
 +        chipsets.  Say Y if you have and plan to use such a board.
@@ -18,13 +22,14 @@
  config FB_I810
        tristate "Intel 810/815 support (EXPERIMENTAL)"
        depends on FB && EXPERIMENTAL && PCI && X86 && !X86_64
---- linux-2.6.11-orig/drivers/video/Makefile   2004-12-24 22:33:59.000000000 
+0100
-+++ linux-2.6.11/drivers/video/Makefile        2005-01-02 14:34:35.000000000 
+0100
-@@ -35,6 +35,7 @@
-                                    cfbimgblt.o
- obj-$(CONFIG_FB_I810)             += cfbcopyarea.o cfbfillrect.o cfbimgblt.o \
-                                    vgastate.o
-+obj-$(CONFIG_FB_CLE266)           += cle266/ cfbfillrect.o cfbcopyarea.o 
cfbimgblt.o
- obj-$(CONFIG_FB_INTEL)            += cfbfillrect.o cfbcopyarea.o \
-                                    cfbimgblt.o
- 
+diff -ru linux-2.6.13-epiam-r1/drivers/video/Makefile 
linux-2.6.13-epiam-r1-viafb/drivers/video/Makefile
+--- linux-2.6.13-epiam-r1/drivers/video/Makefile       2005-12-14 
19:51:42.000000000 +0100
++++ linux-2.6.13-epiam-r1-viafb/drivers/video/Makefile 2005-12-11 
02:57:32.000000000 +0100
+@@ -40,6 +40,7 @@
+ obj-$(CONFIG_FB_SAVAGE)                 += savage/
+ obj-$(CONFIG_FB_GEODE)                  += geode/
+ obj-$(CONFIG_FB_I810)             += vgastate.o
++obj-$(CONFIG_FB_CLE266)           += cle266/
+ obj-$(CONFIG_FB_RADEON_OLD)     += radeonfb.o
+ obj-$(CONFIG_FB_NEOMAGIC)         += neofb.o vgastate.o
+ obj-$(CONFIG_FB_VIRGE)            += virgefb.o
Index: linux/drivers/video/cle266/via_fbobj.c
===================================================================
RCS file: /cvs/directfb/linux-viafb/linux/drivers/video/cle266/via_fbobj.c,v
retrieving revision 1.3
diff -u -r1.3 via_fbobj.c
--- linux/drivers/video/cle266/via_fbobj.c      4 Nov 2005 12:39:38 -0000       
1.3
+++ linux/drivers/video/cle266/via_fbobj.c      14 Dec 2005 18:06:49 -0000
@@ -1701,6 +1701,7 @@
 static struct pci_device_id via_devices[] __devinitdata = {
     {PCI_VENDOR_ID_VIA, 0x3122, PCI_ANY_ID,PCI_ANY_ID,0,0,0},
     {PCI_VENDOR_ID_VIA, 0x7205, PCI_ANY_ID,PCI_ANY_ID,0,0,0},
+    {PCI_VENDOR_ID_VIA, 0x3118, PCI_ANY_ID,PCI_ANY_ID,0,0,0},
     {0,}
 };
     
_______________________________________________
directfb-users mailing list
[email protected]
http://mail.directfb.org/cgi-bin/mailman/listinfo/directfb-users

Reply via email to