Subject: port-i386/20410: SIS 85C496 chipset support is bad
To: None <>
From: None <>
List: netbsd-bugs
Date: 02/18/2003 01:15:49
>Number:         20410
>Category:       port-i386
>Synopsis:       SIS 85C496 chipset support is bad
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    port-i386-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Feb 18 01:16:01 PST 2003
>Originator:     Wojciech Puchar
>Release:        release 1-5 (quite new)
NetBSD 1.5.4_ALPHA NetBSD 1.5.4_ALPHA ( #8: Tue Feb 18 09:56:31 CET 2003 i386
1.5 kernels (possibly 1.6 but i don't use) consider this chipset as broken 
on mmaped devices and just disables memory mapping.

that's definitely too strong, and it breaks some devices that works well and stable

try using puc(4) with such chipset. computer hangs, serial ports locks

last lines in pci_machdep.c should look like:
                switch (PCI_VENDOR(id)) {
                case PCI_VENDOR_SIS:
                        switch (PCI_PRODUCT(id)) {
                        case PCI_PRODUCT_SIS_85C496:
                                goto warning_mem;

        return (rval);

        printf("Warning: broken PCI-Host bridge detected; some memory-mapped devices may not function
//      rval &= ~PCI_FLAGS_MEM_ENABLED;
        return (rval);

so administrator is just warned, but allowed to use.

after this patch router with puc works stable for 2 days (beofre - max 15 minutes )
other machine works fine with matrox millenium PCI (memory mapped) card as X terminal

memory mapped things seems to work fine, while busmaster devices not. for example
sip(4) doesn't.