Hi all,
Most of you already received the email displayed below. Later that day I spoke Uwe on IRC and he told me he had fogot to tell me I had to include the irq_tables.c as generated by getpir as well. So, here it is in the attachments. In case your mailing systems do not forward attachments, here are the contents of that file:
/* 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, which BIOS sets up. * * Documentation at: http://www.microsoft.com/whdc/archive/pciirq.mspx */
#ifdef GETPIR #include "pirq_routing.h" #else #include <arch/pirq_routing.h> #endif
const struct irq_routing_table intel_irq_routing_table = { PIRQ_SIGNATURE, /* u32 signature */ PIRQ_VERSION, /* u16 version */ 32+16*7, /* There can be total 7 devices on the bus */ 0x00, /* Where the interrupt router lies (bus) */ (0x07<<3)|0x0, /* Where the interrupt router lies (dev) */ 0x800, /* IRQs devoted exclusively to PCI usage */ 0x8086, /* Vendor */ 0x7000, /* Device */ 0, /* Crap (miniport) */ { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */ 0x9c, /* u8 checksum. This has to be set to some value that would give 0 after the sum of all bytes for this structure (including checksum) */ { /* bus, dev|fn, {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap}, slot, rfu */ {0x00,(0x0e<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x1, 0x0}, {0x00,(0x10<<3)|0x0, {{0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0x0deb8}}, 0x2, 0x0}, {0x00,(0x12<<3)|0x0, {{0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0x0deb8}}, 0x3, 0x0}, {0x00,(0x14<<3)|0x0, {{0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0x0deb8}}, 0x4, 0x0}, {0x00,(0x07<<3)|0x1, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0}, {0x00,(0x07<<3)|0x2, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0}, {0x00,(0x01<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0}, } };
greetz from Holland,
Maarten "merethan"
On Jan 13, 2008 12:50 PM, Maarten van Eeuwijk mechno@gmail.com wrote:
Hi all,
A few day's ago I asked Uwe for a little help on my MS6119 board from MSI. He adviced me to post the results of lspci -tvnn, superiotool -dV and flashrom -V to the mailing list, for the sake of archiving. So, after some creative wiring I got a LiveCD going and ran the pieces of software mentioned above.
The tests are done with minimal hardware, all the PCI slots were empty. The only slots filled were the CPU slot and the AGP slot.
For the ones who think they recognize a Asus p2b here, you're almost dead on. The MS6119 has the same hardware and similair layout but the wiring is likely to be different.
Here are the results:
*lspci -tvnn:* -[0000:00]-+-00.0 8086:7190 +-01.0-[0000:01]----00.0 1002:4742 +-07.0 8086:7110 +-07.1 8086:7111 +-07.2 8086:7112 -07.3 8086:7113
*superiotool -dV:* superiotool r3011 Probing for ALi Super I/O at 0x3f0... Failed. Returned data: id=0xffff, rev=0xff Probing for ALi Super I/O at 0x370... Failed. Returned data: id=0xffff, rev=0xff Probing for Fintek Super I/O at 0x2e... Failed. Returned data: vid=0xffff, id=0xffff Probing for Fintek Super I/O at 0x4e... Failed. Returned data: vid=0xffff, id=0xffff Probing for ITE Super I/O (init=0x87,0x01,0x55,0x55/0xaa) at 0x2e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=0x87,0x87) at 0x2e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=0x87,0x01,0x55,0x55/0xaa) at 0x4e... Failed. Returned data: id=0xffff, rev=0xf Probing for ITE Super I/O (init=0x87,0x87) at 0x4e... Failed. Returned data: id=0xffff, rev=0xf Probing for NSC Super I/O at 0x2e... Failed. Returned data: port=0xff, port+1=0xff Probing for NSC Super I/O at 0x4e... Failed. Returned data: port=0xff, port+1=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x2e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x2e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x4e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x4e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x162e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x162e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x164e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x164e... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x3f0... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x3f0... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x370... Failed. Returned data: id=0xff, rev=0xff Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x370... Failed. Returned data: id=0xff, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x2e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x2e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x2e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x2e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x4e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x4e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x4e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x4e... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x3f0... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x3f0... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x3f0... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x3f0... Found Winbond W83977TF (id=0x97, rev=0x73) at 0x3f0 Register dump: idx 20 21 22 23 24 25 26 28 2a 2b 2c 2d 2e 2f val 97 73 ff fe 84 00 00 00 00 00 00 00 00 ff def 97 73 ff fe MM 00 MM 00 00 00 00 RR RR RR LDN 0x00 (Floppy) idx 30 60 61 70 74 f0 f1 f2 f4 f5 val 01 03 f0 06 02 0e 00 ff 00 00 def 01 03 f0 06 02 0e 00 ff 00 00 LDN 0x01 (Parallel port) idx 30 60 61 70 74 f0 val 01 03 78 07 03 00 def 01 03 78 07 04 3f LDN 0x02 (COM1) idx 30 60 61 70 f0 val 01 03 f8 04 00 def 01 03 f8 04 00 LDN 0x03 (COM2) idx 30 60 61 70 f0 f1 val 01 02 f8 03 00 00 def 01 02 f8 03 00 00 LDN 0x05 (Keyboard / mouse) idx 30 60 61 62 63 70 72 f0 val 01 00 60 00 64 01 00 42 def 01 00 60 00 64 01 0c 83 LDN 0x07 (GPIO 1) idx 30 60 61 62 63 64 65 70 72 e0 e1 e2 e3 e4 e5 e6 e7 f1 val 00 00 00 00 00 00 00 00 00 01 01 01 01 01 01 01 01 00 def 00 00 00 00 00 00 00 00 00 01 01 01 01 01 01 01 01 00 LDN 0x08 (GPIO 2) idx 30 60 61 70 72 e8 e9 ea eb ec ed ee f0 f1 f2 f3 f4 val 01 00 00 00 00 10 01 01 01 01 08 01 00 ff 00 00 00 def 00 00 00 00 00 01 01 01 01 01 01 01 00 RR 00 00 00 LDN 0x09 (GPIO 3) idx 30 60 61 62 63 64 65 70 72 e0 e1 e2 e3 e4 e5 e6 e7 f1 val 00 00 00 00 00 00 00 00 00 01 01 01 01 01 01 01 01 00 def 00 00 00 00 00 00 00 00 00 01 01 01 01 01 01 01 01 00 LDN 0x0a (ACPI) idx 30 60 61 62 63 64 65 70 e0 e1 02 e3 e4 f0 f1 f2 f3 f4 f5 f6 f7 fe ff
val 00 00 00 00 00 00 00 00 00 00 ff 07 00 00 00 0f 07 00 00 00 00 00 00 def 00 00 00 00 00 00 00 00 00 00 NA MM RR 00 00 00 00 00 00 00 00 RR RR Probing for Winbond Super I/O (init=0x88) at 0x370... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x370... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x370... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x370... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x88) at 0x250... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x89) at 0x250... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x86,0x86) at 0x250... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff Probing for Winbond Super I/O (init=0x87,0x87) at 0x250... Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
*flashrom -V:* Calibrating delay loop... 100M loops per second. OK. No LinuxBIOS table found. Found chipset "PIIX4/PIIX4E/PIIX4M", enabling flash write... OK. Probing for Am29F040B, 512 KB probe_29f040b: id1 0x7f, id2 0x3f Probing for Am29LV040B, 512 KB probe_29f040b: id1 0x7f, id2 0x3f Probing for Am29F016D, 2048 KB probe_29f040b: id1 0xff, id2 0xff Probing for AE49F2008, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for At29C040A, 512 KB probe_jedec: id1 0xda, id2 0x45 Probing for At29C020, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for At49F002(N), 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for At49F002(N)T, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for EN29F002(A)(N)T, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for EN29F002(A)(N)B, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for MBM29F400TC, 512 KB probe_m29f400bt: id1 0x7f, id2 0x3f Probing for MX29F002, 256 KB probe_29f002: id1 0xda, id2 0x45 Probing for MX25L4005, 512 KB generic_spi_command called, but no SPI chipset detected Probing for MX25L8005, 1024 KB generic_spi_command called, but no SPI chipset detected Probing for SST25VF040B, 512 KB generic_spi_command called, but no SPI chipset detected Probing for SST25VF016B, 2048 KB generic_spi_command called, but no SPI chipset detected Probing for SST29EE020A, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST28SF040A, 512 KB probe_28sf040: id1 0x7f, id2 0x3f Probing for SST39SF010A, 128 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST39SF020A, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST39SF040, 512 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST39VF020, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF040B, 512 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF040, 512 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF020A, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF080A, 1024 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF002A/B, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF003A/B, 384 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF004A/B, 512 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF008A, 1024 KB probe_jedec: id1 0xda, id2 0x45 Probing for SST49LF004C, 512 KB probe_49lfxxxc: id1 0x7f, id2 0x3f Probing for SST49LF008C, 1024 KB probe_49lfxxxc: id1 0x7f, id2 0x3f Probing for SST49LF016C, 2048 KB probe_49lfxxxc: id1 0xff, id2 0xff Probing for SST49LF160C, 2048 KB probe_49lfxxxc: id1 0xff, id2 0xff Probing for Pm49FL002, 256 KB probe_jedec: id1 0xda, id2 0x45 Probing for Pm49FL004, 512 KB probe_jedec: id1 0xda, id2 0x45 Probing for W29C011, 128 KB probe_jedec: id1 0xda, id2 0x45 Probing for W29C040P, 512 KB probe_jedec: id1 0xda, id2 0x45 Probing for W29C020C, 256 KB probe_jedec: id1 0xda, id2 0x45 W29C020C found at physical address 0xfffc0000. Flash part is W29C020C (256 KB). No operations were specified.
That's it.
Uwe told me he could help me with hacking up a MS6119 target file with this info. Once the bios works, I 'll use it to make a router of that board utilizing coreboot, m0n0wall, a few ethernet NIC's and a Compact flash card. Once that works I will demonstrate it at school. Perhaps I 'll put it against a Cisco router in a VS showdown on troughput. Might be cool to beat a 800+ bucks Cisco machine with an old piece of hardware I found in a trashbox.
tnx for your time,
Maarten "merethan"