Dear lists, I have two questions: (1) I use getpir(8.30 freebios v1) to get irq_tables.c of epia-500. I have compared mine with one under mainboard/via/epia. They are always different. What cause it? My irq_tables.c is as following: /* This file was generated by getpir.c, do not modify! (but if you do, please run checkpir on it to verify) Contains the IRQ Routing Table dumped directly from your memory , wich BIOS s ets up
Documentation at : http://www.microsoft.com/hwdev/busbios/PCIIRQ.HTM */
#include <arch/pirq_routing.h>
const struct irq_routing_table intel_irq_routing_table = { PIRQ_SIGNATURE, /* u32 signature */ PIRQ_VERSION, /* u16 version */ 32+16*5, /* there can be total 5 devices on the bus */ 0, /* Where the interrupt router lies (bus) */ 0, /* Where the interrupt router lies (dev) */ 0x1c00, /* IRQs devoted exclusively to PCI usage */ 0, /* Vendor */ 0, /* Device */ 0, /* Crap (miniport) */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */ 0x88, /* u8 checksum , this hase to set to some value that woul d give 0 after the sum of all bytes for this structure (including checksum) */ { {0,0x98, {{0x1, 0xdeb8}, {0x2, 0xdeb8}, {0x3, 0xdeb8}, {0x4, 0xd eb8}}, 0x2, 0}, {0,0x50, {{0x1, 0xdeb8}, {0x2, 0xdeb8}, {0x3, 0xdeb8}, {0x4, 0xd eb8}}, 0x3, 0}, {0,0x58, {{0x4, 0xdeb8}, {0x1, 0xdeb8}, {0x2, 0xdeb8}, {0x3, 0xd eb8}}, 0x4, 0}, {0,0x8, {{0x1, 0xdeb8}, {0x2, 0xdeb8}, {0x3, 0xdeb8}, {0x4, 0xde b8}}, 0, 0}, {0x50,0, {{0, 0}, {0, 0}, {0, 0}, {0, 0}}, 0, 0}, } };
(2) I've got QDIA6T MB based on vt8601 and vt82c686. I have made some progress on this MB(8.30 freebios v1). The romimage can find VGABIOS, but unsupport int error occurred. The output log is as following:
LinuxBIOS-1.0.0 Tue Aug 31 19:52:18 CST 2004 starting... Enabled first bank of RAM: 0x10000000 bytes Copying LinuxBIOS to ram. Jumping to LinuxBIOS. LinuxBIOS-1.0.0 Tue Aug 31 19:52:18 CST 2004 booting... Finding PCI configuration type. PCI: Using configuration type 1 Scanning PCI bus...PCI: pci_scan_bus for bus 0 PCI: 00:00.0 [1106/0601] PCI: 00:01.0 [1106/8601] PCI: 00:07.0 [1106/0686] PCI: 00:07.2 [1106/3038] PCI: 00:07.3 [1106/3038] PCI: 00:07.4 [1106/3057] PCI: 00:07.5 [1106/3058] PCI: pci_scan_bus for bus 1 PCI: 01:00.0 [1023/8500] PCI: pci_scan_bus returning with max=01 PCI: pci_scan_bus returning with max=01 done Allocating PCI resources... PCI: 00:00.0 register 10(00000008), read-only ignoring it PCI: 00:00.0 register 10(00000008), read-only ignoring it PCI: 00:00.0 register 10(00000008), read-only ignoring it PCI: 00:00.0 register 10(00000008), read-only ignoring it ASSIGN RESOURCES, bus 0 PCI: 00:01.0 1c <- [0x00001000 - 0x00000fff] bus 1 io PCI: 00:01.0 24 <- [0xfe900000 - 0xfe8fffff] bus 1 prefmem PCI: 00:01.0 20 <- [0xfd800000 - 0xfe8fffff] bus 1 mem ASSIGN RESOURCES, bus 1 PCI: 01:00.0 10 <- [0xfd800000 - 0xfdffffff] mem PCI: 01:00.0 14 <- [0xfe800000 - 0xfe81ffff] mem PCI: 01:00.0 18 <- [0xfe000000 - 0xfe7fffff] mem ASSIGNED RESOURCES, bus 1 PCI: 00:07.2 20 <- [0x00001400 - 0x0000141f] io PCI: 00:07.3 20 <- [0x00001420 - 0x0000143f] io PCI: 00:07.5 10 <- [0x00001000 - 0x000010ff] io PCI: 00:07.5 14 <- [0x00001440 - 0x00001443] io PCI: 00:07.5 18 <- [0x00001450 - 0x00001453] io ASSIGNED RESOURCES, bus 0 Allocating VGA resource done. Enabling PCI resourcess...PCI: 00:00.0 cmd <- 06 PCI: 00:01.0 cmd <- 07 PCI: 00:07.0 cmd <- 87 PCI: 00:07.2 cmd <- 01 PCI: 00:07.3 cmd <- 01 PCI: 00:07.4 cmd <- 00 PCI: 00:07.5 cmd <- 01 PCI: 01:00.0 cmd <- 03 done. Initializing PCI devices... PCI devices initialized Disable Cache Bank0 256MB (MA type 0xe) bank 2 MA 0x0: 0 bytes bank 2 MA 0x8: 0 bytes bank 2 MA 0xe: 0 bytes bank 4 MA 0x0: 0 bytes bank 4 MA 0x8: 0 bytes bank 4 MA 0xe: 0 bytes Enable Cache Total 248MB + frame buffer 8MB Enabling shadow DRAM at 0xC0000-0xFFFFF: done totalram: 248M Initializing CPU #0 Enabling cache... Setting fixed MTRRs(0-88) type: UC Setting fixed MTRRs(0-16) type: WB Setting fixed MTRRs(24-88) type: WB DONE fixed MTRRs Setting variable MTRR 0, base: 0MB, range: 128MB, type WB Setting variable MTRR 1, base: 128MB, range: 64MB, type WB Setting variable MTRR 2, base: 192MB, range: 32MB, type WB Setting variable MTRR 3, base: 224MB, range: 16MB, type WB Setting variable MTRR 4, base: 240MB, range: 8MB, type WB DONE variable MTRRs Clear out the extra MTRR's call intel_enable_fixed_mtrr() call intel_enable_var_mtrr() Leave setup_mtrrs done.
Max cpuid index : 2 Vendor ID : GenuineIntel Processor Type : 0x00 Processor Family : 0x06 Processor Model : 0x08 Processor Mask : 0x00 Processor Stepping : 0x0a Feature flags : 0x0383fbff
Cache/TLB descriptor values: 1 reads required Desc 0x01 : Instr TLB: 4KB pages, 4-way set assoc, 32 entries Desc 0x02 : Instr TLB: 4MB pages, fully assoc, 2 entries Desc 0x03 : Data TLB: 4KB pages, 4-way set assoc, 64 entries Desc 0x00 : null Desc 0x00 : null Desc 0x00 : null Desc 0x00 : null Desc 0x00 : null Desc 0x00 : null Desc 0x00 : null Desc 0x00 : null Desc 0x41 : L2 Unified cache: 128K bytes, 4-way set assoc, 32 byte line size Desc 0x08 : Inst cache: 16K bytes, 4-way set assoc, 32 byte line size Desc 0x04 : Data TLB: 4MB pages, 4-way set assoc, 8 entries Desc 0x0c : Data cache: 16K bytes, 2-way or 4-way set assoc, 32 byte line size
MTRR check Fixed MTRRs : Enabled Variable MTRRs: Enabled
Disabling local apic...done. CPU #0 Initialized Mainboard fixup IDE enable in reg. 48 is 0x3 set IDE reg. 48 to 0x1 IRQs in reg. 4a are 0x4 setting reg. 4a to 0x44 IDE enable in reg.1-40 is 0x8 set IDE reg.1-40 to 0x3 IDE enable in reg.1-40 read back is 0x3 enables in reg 0x9 0x8f enables in reg 0x9 read back as 0x8a command in reg 0x4 0x80 command in reg 0x4 reads back as 0x85 keyboard_on Final mainboard fixup Southbridge fixup keyboard_on IDE enable in reg. 48 is 0x5 set IDE reg. 48 to 0x5 IRQs in reg. 4a are 0x4 setting reg. 4a to 0x44 IDE enable in reg.1-40 is 0x3 set IDE reg.1-40 to 0x3 IDE enable in reg.1-40 read back is 0x3 enables in reg 0x9 0x8a enables in reg 0x9 read back as 0x8a command in reg 0x4 0x85 command in reg 0x4 reads back as 0x85 setting southbridge Assigning IRQ 10 to 0:7.5 Readback = 10 Assigning IRQ 11 to 1:0.0 Readback = 11 INSTALL REAL-MODE IDT DO THE VGA BIOS found VGA: vid=1023, did=8500 0x55 0xaa 0x60 0xeb 0x4d 0x37 0x34 0x30 0x30 0x30 0x37 0xdc 0x73 0x2a 0x2a 0x52 bus/devfn = 0x100 biosint: # 0x1a, eax 0xb109 ebx 0x100 ecx 0x100 edx 0xb1bf biosint: ebp 0x10fd8 esp 0xfc9 edi 0x2 esi 0x13f60 biosint: ip 0x56e8 cs 0xc000 flags 0x16 0xb109: bus 1 devfn 0x0 reg 0x2 val 0x8500 biosint: # 0xd8, eax 0xc000 ebx 0x100 ecx 0x8500 edx 0x3c2 biosint: ebp 0x10fd8 esp 0xfc7 edi 0x2 esi 0x13f60 biosint: ip 0x2329 cs 0xc000 flags 0x246 biosint: Unsupport int #0xd8 biosint: # 0xcd, eax 0xc000 ebx 0x100 ecx 0x8500 edx 0x3c2 biosint: ebp 0x10fd8 esp 0xfc7 edi 0x2 esi 0x13f60 biosint: ip 0x2329 cs 0xc000 flags 0x246 biosint: Unsupport int #0xcd
__________________________________ Do you Yahoo!? Yahoo! Mail - 50x more storage than other providers! http://promotions.yahoo.com/new_mail
zhu shi song wrote:
Dear lists, I have two questions: (1) I use getpir(8.30 freebios v1) to get irq_tables.c of epia-500. I have compared mine with one under mainboard/via/epia. They are always different. What cause it? My irq_tables.c is as following:
I don't know about your pir difference problems but your irq_tables and the "unsupported int" messages in the vga translation code are not really related to each other.
The unsupported int is telling you that the vga bios made a int call that is not suppoted by linuxbios. These are software interrupts and only remotly related to irqs which are hardware interrupts.
On Tue, 31 Aug 2004, zhu shi song wrote:
(2) I've got QDIA6T MB based on vt8601 and vt82c686.
that's why irq_tables.c is different.
you need to look up what those unsupported int's are and see if they are real or an error or some sort.
ron