mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
From: Tom Eastep <teastep@shorewall.net>
To: linux-kernel@vger.kernel.org
Subject: VIA Northbridge Workaround in 2.4.18 Causing Video Problems
Date: Tue, 26 Feb 2002 11:57:30 -0800	[thread overview]
Message-ID: <20020226195730.BD7691B93C@mail.shorewall.net> (raw)



[1.] One line summary of the problem:

The VIA Northbridge workaround in 2.4.18 (arch/i386/kernel/pci-pc.c:pci_fixup_via_northbridge_bug)
is causing Video Problems on one of my systems.

[2.] Full description of the problem/report:

System is an Athlon 1.2GZ with VIA KT133 Northbridge and VT82C686 Southbridge. This is a
Compaq Presario with onboard S3 Savage Video that uses 8 or 16mb of system RAM as Video
RAM. Prior to my installing 2.4.18, I have experienced none of the Athlon/VIA problems
that have plagued other users (including the one addressed by the workaround).

With 2.4.18:

a) VGA console goes berserk during boot (random fixed pattern appears and console is unusable).
b) Vesafb console and X (XF86_FBDEV) -- Heavy memory access (either from CPU or disk activity)
   produces flicker and horizontal white "noise" on the Display. The amount of flicker and
   noise is proportional to memory activity.

I have definitely determined that the problem is with the VIA Workaround as
the symptoms are eliminated when I disable the workaround (see hack below). 

[3.] Keywords (i.e., modules, networking, kernel):
Video VIA Workaround
[4.] Kernel version (from /proc/version):
Linux version 2.4.18 (teastep@ursa.shorewall.net) (gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-98)) #2 Tue Feb 26 07:24:29 PST 2002

[5.] Output of Oops.. message (if applicable) with symbolic information
     resolved (see Documentation/oops-tracing.txt)
N/A
[6.] A small shell script or example program which triggers the
     problem (if possible)
N/A
[7.] Environment
[7.1.] Software (add the output of the ver_linux script here)

Linux ursa.shorewall.net 2.4.18 #2 Tue Feb 26 07:24:29 PST 2002 i686 unknown

Gnu C                  2.96
Gnu make               3.79.1
util-linux             2.11f
mount                  2.11g
modutils               2.4.13
e2fsprogs              1.23
PPP                    2.4.1
isdn4k-utils           3.1pre1
Linux C Library        2.2.4
Dynamic linker (ldd)   2.2.4
Procps                 2.0.7
Net-tools              1.60
Console-tools          0.3.3
Sh-utils               2.0.11
Modules Loaded         via82cxxx_audio ac97_codec uart401 sound parport_pc lp parport tulip usb-storage nls_iso8859-1 nls_cp437 vfat fat mousedev keybdev hid input usb-uhci usbcore

[7.2.] Processor information (from /proc/cpuinfo):
processor       : 0
vendor_id       : AuthenticAMD
cpu family      : 6
model           : 4
model name      : AMD Athlon(tm) Processor
stepping        : 2
cpu MHz         : 1202.134
cache size      : 256 KB
fdiv_bug        : no
hlt_bug         : no
f00f_bug        : no
coma_bug        : no
fpu             : yes
fpu_exception   : yes
cpuid level     : 1
wp              : yes
flags           : fpu vme de pse tsc msr pae mce cx8 sep mtrr pge mca cmov
pat pse36 mmx fxsr syscall mmxext 3dnowext 3dnow
bogomips        : 2398.61
[7.3.] Module information (from /proc/modules):
via82cxxx_audio        18048   8 (autoclean)
ac97_codec              9440   0 (autoclean) [via82cxxx_audio]
uart401                 6368   0 (autoclean) [via82cxxx_audio]
sound                  55884   0 (autoclean) [via82cxxx_audio uart401]
parport_pc             25896   1 (autoclean)
lp                      6240   0 (autoclean)
parport                24576   1 (autoclean) [parport_pc lp]
tulip                  39680   1
usb-storage            22140   0
nls_iso8859-1           2816   1 (autoclean)
nls_cp437               4320   1 (autoclean)
vfat                    9852   1 (autoclean)
fat                    31096   0 (autoclean) [vfat]
mousedev                4128   1
keybdev                 1856   0 (unused)
hid                    12992   0 (unused)
input                   3264   0 [mousedev keybdev hid]
usb-uhci               21316   0 (unused)
usbcore                49472   1 [usb-storage hid usb-uhci]
[7.4.] Loaded driver and hardware information (/proc/ioports, /proc/iomem)
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
0170-0177 : ide1
01f0-01f7 : ide0
0376-0376 : ide1
0378-037a : parport0
03c0-03df : vesafb
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0cf8-0cff : PCI conf1
1000-10ff : Lite-On Communications Inc LNE100TX
  1000-10ff : tulip
1400-14ff : VIA Technologies, Inc. AC97 Audio Controller
  1400-14ff : via82cxxx_audio
1800-183f : PCTel Inc HSP MicroModem 56
1840-185f : VIA Technologies, Inc. UHCI USB
  1840-185f : usb-uhci
1860-187f : VIA Technologies, Inc. UHCI USB (#2)
  1860-187f : usb-uhci
1880-188f : VIA Technologies, Inc. Bus Master IDE
  1880-1887 : ide0
  1888-188f : ide1
1890-1893 : VIA Technologies, Inc. AC97 Audio Controller
  1890-1893 : via82cxxx_audio
1894-1897 : VIA Technologies, Inc. AC97 Audio Controller
  1894-1897 : via82cxxx_audio
ec00-ec0f : VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
ee00-eeff : VIA Technologies, Inc. VT82C686 [Apollo Super ACPI]
           CPU0
  0:     120510          XT-PIC  timer
  1:          6          XT-PIC  keyboard
  2:          0          XT-PIC  cascade
  5:       4826          XT-PIC  eth0
  8:          1          XT-PIC  rtc
  9:          2          XT-PIC  acpi
 10:       8473          XT-PIC  via82cxxx
 11:      10879          XT-PIC  usb-uhci, usb-uhci
 14:      12635          XT-PIC  ide0
 15:         10          XT-PIC  ide1
NMI:          0
ERR:
[7.5.] PCI information ('lspci -vvv' as root)
00:00.0 Host bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133] (rev 81)
        Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
        Latency: 0
        Region 0: Memory at 90000000 (32-bit, prefetchable) [size=64M]
        Capabilities: [a0] AGP version 2.0
                Status: RQ=31 SBA+ 64bit- FW- Rate=x1,x2
                Command: RQ=0 SBA- AGP- 64bit- FW- Rate=<none>
        Capabilities: [c0] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:01.0 PCI bridge: VIA Technologies, Inc. VT8363/8365 [KT133/KM133 AGP] (prog-if 00 [Normal decode])
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR+
        Latency: 0
        Bus: primary=00, secondary=01, subordinate=01, sec-latency=0
        Memory behind bridge: 80000000-800fffff
        Prefetchable memory behind bridge: 88000000-8fffffff
        BridgeCtl: Parity- SERR- NoISA+ VGA+ MAbort- >Reset- FastB2B-
        Capabilities: [80] Power Management version 2
                Flags: PMEClk- DSI- D1+ D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:04.0 Modem: PCTel Inc HSP MicroModem 56 (rev 02) (prog-if 01 [Hayes/16450])
        Subsystem: PCTel Inc: Unknown device 0001
        Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin A routed to IRQ 10
        Region 0: I/O ports at 1800 [size=64]
        Capabilities: [40] Power Management version 2
                Flags: PMEClk- DSI+ D1- D2+ AuxCurrent=55mA PME(D0+,D1-,D2+,D3hot+,D3cold+)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:05.0 Ethernet controller: Lite-On Communications Inc LNE100TX (rev 20)
        Subsystem: Netgear FA310TX
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 66
        Interrupt: pin A routed to IRQ 5
        Region 0: I/O ports at 1000 [size=256]
        Region 1: Memory at a0000000 (32-bit, non-prefetchable) [size=256]
        Expansion ROM at <unassigned> [disabled] [size=256K]

00:14.0 ISA bridge: VIA Technologies, Inc. VT82C686 [Apollo Super South] (rev 22)
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping+ SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort+ >SERR- <PERR-
        Latency: 0

00:14.1 IDE interface: VIA Technologies, Inc. Bus Master IDE (rev 10) (prog-if 8a [Master SecP PriP])
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64
        Region 4: I/O ports at 1880 [size=16]
        Capabilities: [c0] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:14.2 USB Controller: VIA Technologies, Inc. UHCI USB (rev 10) (prog-if 00 [UHCI])
        Subsystem: Unknown device 0925:1234
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 66, cache line size 08
        Interrupt: pin D routed to IRQ 11
        Region 4: I/O ports at 1840 [size=32]
        Capabilities: [80] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:14.3 USB Controller: VIA Technologies, Inc. UHCI USB (rev 10) (prog-if 00 [UHCI])
        Subsystem: Unknown device 0925:1234
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 66, cache line size 08
        Interrupt: pin D routed to IRQ 11
        Region 4: I/O ports at 1860 [size=32]
        Capabilities: [80] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:14.4 Bridge: VIA Technologies, Inc. VT82C686 [Apollo Super ACPI] (rev 30)
        Control: I/O- Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Capabilities: [68] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

00:14.5 Multimedia audio controller: VIA Technologies, Inc. AC97 Audio Controller (rev 20)
        Subsystem: Compaq Computer Corporation: Unknown device 003d
        Control: I/O+ Mem- BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Interrupt: pin C routed to IRQ 10
        Region 0: I/O ports at 1400 [size=256]
        Region 1: I/O ports at 1890 [size=4]
        Region 2: I/O ports at 1894 [size=4]
        Capabilities: [c0] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-

01:00.0 VGA compatible controller: S3 Inc.: Unknown device 8a26 (prog-if 00 [VGA])
        Subsystem: Compaq Computer Corporation: Unknown device 005b
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B-
        Status: Cap+ 66Mhz+ UDF- FastB2B- ParErr- DEVSEL=medium >TAbort- <TAbort- <MAbort- >SERR- <PERR-
        Latency: 64 (1000ns min, 63750ns max), cache line size 08
        Interrupt: pin A routed to IRQ 3
        Region 0: Memory at 80000000 (32-bit, non-prefetchable) [size=512K]
        Region 1: Memory at 88000000 (32-bit, prefetchable) [size=128M]
        Expansion ROM at <unassigned> [disabled] [size=64K]
        Capabilities: [dc] Power Management version 2
                Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [80] AGP version 2.0
                Status: RQ=31 SBA- 64bit- FW- Rate=x1,x2
                Command: RQ=0 SBA- AGP- 64bit- FW- Rate=<none>

[7.6.] SCSI information (from /proc/scsi/scsi)
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
  Vendor: COMPAQ   Model: DVD-ROM DRD8120B Rev: 1.10
  Type:   CD-ROM                           ANSI SCSI revision: 02
Host: scsi0 Channel: 00 Id: 01 Lun: 00
  Vendor: LG       Model: CD-RW CED-8120B  Rev: 1.09
  Type:   CD-ROM                           ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 00 Lun: 00
  Vendor: Photo Po Model: rt 7700#         Rev:
  Type:   Direct-Access                    ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 00 Lun: 01
  Vendor: Photo Po Model: rt 7700#         Rev:
  Type:   Direct-Access                    ANSI SCSI revision: 02
[7.7.] Other information that might be relevant to the problem
       (please look in /proc and include all information that you
       think to be relevant):
[X.] Other notes, patches, fixes, workarounds:
I'm currently getting around the problem with the following hack:

diff -u  arch/i386/kernel/pci-pc.orig arch/i386/kernel/pci-pc.c
--- arch/i386/kernel/pci-pc.orig        Tue Feb 26 07:12:50 2002
+++ arch/i386/kernel/pci-pc.c   Tue Feb 26 07:24:23 2002
@@ -1144,7 +1144,7 @@
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_SI,       PCI_DEVICE_ID_SI_5597,          pci_fixup_latency },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_SI,       PCI_DEVICE_ID_SI_5598,          pci_fixup_latency },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_INTEL,    PCI_DEVICE_ID_INTEL_82371AB_3,  pci_fixup_piix4_acpi },
-       { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_8363_0,       pci_fixup_via_northbridge_bug },
+/*     { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_8363_0,       pci_fixup_via_northbridge_bug }, */
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_8622,         pci_fixup_via_northbridge_bug },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_8361,         pci_fixup_via_northbridge_bug },
        { PCI_FIXUP_HEADER,     PCI_VENDOR_ID_VIA,      PCI_DEVICE_ID_VIA_8367_0,       pci_fixup_via_northbridge_bug },

-Tom
-- 
Tom Eastep    \ Shorewall - iptables made easy
AIM: tmeastep  \ http://www.shorewall.net
ICQ: #60745924  \ teastep@shorewall.net

             reply	other threads:[~2002-02-26 19:57 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2002-02-26 19:57 Tom Eastep [this message]
2002-02-26 20:42 ` Vincent Bernat
2002-02-26 21:19   ` Mark Cooke
2002-02-27 15:12   ` Tom Eastep
2002-02-27 16:29     ` Vincent Bernat
2002-02-27  2:27 ` Steven Walter
2002-02-27 22:33 ` James Cassidy
2002-02-27 22:45   ` Tom Eastep
2002-02-27 18:01 Alex Davis
2002-02-27 21:26 ` Mark Cooke

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20020226195730.BD7691B93C@mail.shorewall.net \
    --to=teastep@shorewall.net \
    --cc=linux-kernel@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®