[Openchrome-users] Unknown Card-Ids

Paul Antoine pma-openchrome
Mon Jun 26 22:55:58 PDT 2006


Sorry, let me be clearer.  The CN700 is being recognised as 1106/3344 
(which is the same as my chipset, i.e. Unichrome Pro), however 
recognition of the type of chipset is *not* sufficient.

Elsewhere in the code there is a bandwidth calculation for the memory to 
see what resolutions can be supported... it is here that you need to fix 
it so something higher than 640x480/16bit is allowed as a setting.

Specifically this occurs in the via_mode.c code... in this routine:

	CARD32 ViaGetMemoryBandwidth(ScrnInfoPtr pScrn)

The table you need to fix is in via_mode.h, in the section headed 
"Bandwidth", because the routine above is getting a value that is not 
defined in the ViaBandwidthTable.

P.

I have patched my code to make this all work well for my MythTV HTPC, 
but have not produced patches for folks as yet. Since I did the code, 
the Unichrome code has moved and *some* of my patches are no longer 
required.  Just don't have the time to poke at it right now, sorry. In 
the meantime here's a snip from my via_mode.h for reference:

/*
  * Bandwidth
  *
  */
/* used for impossible entries: allow a minimum bandwidth in case
    this does happen */
#define VIA_BW_MIN 74000000 /* > 640x480 at 60Hz at 32bpp */

/* index to table */
#define VIA_BW_CLE266A  0
#define VIA_BW_CLE266C  1
#define VIA_BW_KM400    2
#define VIA_BW_KM400A   3
#define VIA_BW_K8M800   4
#define VIA_BW_PM800    5
#define VIA_BW_VM800    6
#define VIA_BW_P4M800   7    /* My entry for the P4M800CE chipset */
#define VIA_BW_ALL      8

/*
  * 393216000 is for SDR133 in via_refresh.h
  * 460800000 is for DDR266
  * 921600000 is for DDR533 - a rough guess for the BW_MAX for P4M800CE
  * maybe we need 2x that for DDR2/533???
  */
static struct {
     CARD8 Device; /* equal to index */
     CARD32 Bandwidth[VIA_MEM_END];
} ViaBandwidthTable[VIA_BW_ALL] = {
     { VIA_BW_CLE266A, { VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN,  394000000, 
  461000000, VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN } },
     { VIA_BW_CLE266C, { VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN,  394000000, 
  461000000, VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN } },
     { VIA_BW_KM400,   { VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN,  394000000, 
  461000000,  461000000, VIA_BW_MIN, VIA_BW_MIN } },
     { VIA_BW_KM400A,  { VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN,  394000000, 
  461000000,  461000000,  461000000, 461000000 } },
     { VIA_BW_K8M800,  { VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN,  394000000, 
  461000000,  461000000,  461000000, 461000000 } },
     { VIA_BW_PM800,   { VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN,  394000000, 
  461000000,  461000000,  461000000, 461000000 } },
     { VIA_BW_VM800,   { VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN,  394000000, 
  461000000,  461000000,  461000000, 461000000 } },
     { VIA_BW_P4M800,  { VIA_BW_MIN, VIA_BW_MIN, VIA_BW_MIN,  394000000, 
  461000000,  461000000,  461000000, 922000000 } }
};



tALSit de CoD wrote:
> Sorry, I didn't understand how you solved it. How do i get it to detect 
> my chipset?
> 
> Oh, is it because it's detecting chipsets CLE266, KM400/KN400, K8M800, 
> PM800/PM880/CN400, VM800, but not the CN700 ?
> 
> Anyone out there with the same problem?
> 
> Paul Antoine wrote:
>> Morning!
>>
>> Your problem is due to the card not being known for the purposes of 
>> video memory bandwidth calculation - the result is 640x480/16bit.
>>
>> I had a similar issue with the P4M800 chipset in my Asus P5VDC-MX 
>> board, which required adding detection of the chipset to which I 
>> allocated MemClk 7 for the DDR2/533 memory used on my motherboard.
>>
>> P.
>>
>> tALSit de CoD wrote:
>>> Morning!
>>>
>>> I know that this has been reported before, but I've searched through the
>>> archives, and followed what i thought was the relevant posts, but I
>>> still get the message.
>>>
>>> I have a Via Epia EN15000. It's a C7 @ 1.5GHz, CN700 North Bridge, VIA
>>> VT8237R-series South Bridge & VIA UniChrome Pro AGP graphics.
>>>
>>> I have followed the compiling steps show on the openchrome wiki, and the
>>> Card Ids is in both drm/shared-core/drm_pciids.txt &
>>> drm/shared/drm_pciids.txt under [viadrv] (and i can also see it in
>>> drm_pciids.h), but I still get this message on X startup:
>>>
>>> (WW) VIA(0): Manufacturer plainly copied main PCI ids to 
>>> Subsystem/Card ids.
>>> (EE) VIA(0): Unknown Card-Ids (1106|3344), report this to
>>> openchrome-users at openchrome.org ASAP
>>>
>>> X starts up almost fine, I get acceleration in video playback (10% cpu
>>> when playing dvd's, 7% or so playing .avi's), but it only likes 640x480
>>> 16bit colour.
>>>
>>> These are the relevant parts of dmesg:
>>>
>>> [drm] Initialized drm 1.0.1 20051102
>>> ACPI: PCI Interrupt 0000:01:00.0[A] -> Link [LNKA] -> GSI 11 (level,
>>> low) -> IRQ 11
>>> [drm] Initialized via 2.10.2 20060616 on minor 0:
>>> agpgart: Detected VIA P4M800CE chipset
>>> agpgart: AGP aperture is 128M @ 0xe8000000
>>> hwmon-vid: Unknown VRM version of your x86 CPU
>>>
>>> And output of X -verbose -logverbose:
>>>
>>> (II) VIA: driver for VIA chipsets: CLE266, KM400/KN400, K8M800,
>>>     PM800/PM880/CN400, VM800
>>> (--) Chipset VM800 found
>>> ...
>>> (!!) (development build, at svn revision  189)
>>>
>>> Anyone know what i'm missing?
>>> Thank you very much.
>>>
>>> _______________________________________________
>>> openchrome-users mailing list
>>> openchrome-users at openchrome.org
>>> http://wiki.openchrome.org/mailman/listinfo/openchrome-users
>>> Main page:
>>> http://www.openchrome.org
>>> Wiki:
>>> http://wiki.openchrome.org
>>> User Forum:
>>> http://wiki.openchrome.org/tikiwiki/tiki-view_forum.php?forumId=1
>>>
>>
> 



More information about the Openchrome-users mailing list