Skip to contentSkip to conversation

2.6.7-rc2, VIA VT8237

culprit found Andi Kleen 2 participants 2 messages Jun 12, 2004 5 messages not in the archive

lore
Share & tools
lore

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): [email protected]

A message that is not in the archive (sent off-list or not yet received): [email protected]

Andi Kleen

author
#5 lore raw
Quoted 2 lines · David Ford

Culprit found. If CONFIG_IOMMU_DEBUG is enabled, the machine will hang on boot at the partition check when using the VIA driver.

The real culprit is buggy VIA silicon. Use this patch.

-Andi

---------------------------------------------------------------
Enable VIA softmmu workaround for iommu=force/IOMMU_DEBUG too

arch/x86_64/kernel/io_apic.c renamed from arch/x86_64/kernel/io_apic.c-o +2 -1
diff -u linux-2.6.7rc3-bk3/arch/x86_64/kernel/io_apic.c-o linux-2.6.7rc3-bk3/arch/x86_64/kernel/io_apic.c
@@ -252,7 +252,8 @@
 				switch (vendor) { 
 				case PCI_VENDOR_ID_VIA:
 #ifdef CONFIG_GART_IOMMU
-					if (end_pfn >= (0xffffffff>>PAGE_SHIFT) &&
+					if ((end_pfn >= (0xffffffff>>PAGE_SHIFT) ||
+					     force_iommu) &&
 					    !iommu_aperture_allowed) {
 						printk(KERN_INFO
     "Looks like a VIA chipset. Disabling IOMMU. Overwrite with \"iommu=allowed\"\n");
#6 lore raw

Yep, that patch makes this thing bootable now :)

Thank you,
David

Quoted 23 lines · Andi Kleen
Quoted 4 lines · David Ford

Culprit found. If CONFIG_IOMMU_DEBUG is enabled, the machine will hang on boot at the partition check when using the VIA driver.

The real culprit is buggy VIA silicon. Use this patch.

-Andi

---------------------------------------------------------------
Enable VIA softmmu workaround for iommu=force/IOMMU_DEBUG too

diff -u linux-2.6.7rc3-bk3/arch/x86_64/kernel/io_apic.c-o linux-2.6.7rc3-bk3/arch/x86_64/kernel/io_apic.c

arch/x86_64/kernel/io_apic.c line 259

Quoted 9 lines
arch/x86_64/kernel/io_apic.c renamed from arch/x86_64/kernel/io_apic.c-o +2 -1
@@ -252,7 +252,8 @@
 				switch (vendor) { 
 				case PCI_VENDOR_ID_VIA:
 #ifdef CONFIG_GART_IOMMU
-					if (end_pfn >= (0xffffffff>>PAGE_SHIFT) &&
+					if ((end_pfn >= (0xffffffff>>PAGE_SHIFT) ||
+					     force_iommu) &&
 					    !iommu_aperture_allowed) {
 						printk(KERN_INFO
    "Looks like a VIA chipset. Disabling IOMMU. Overwrite with \"iommu=allowed\"\n");

begin:vcard
fn:David Ford
n:Ford;David
email;internet:[email protected]
title:Industrial Geek
tel;home:Ask please
tel;cell:(203) 650-3611
x-mozilla-html:TRUE
version:2.1
end:vcard