Hi all,<br><br>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:
<br><br>/* This file was generated by getpir.c, do not modify!<br> * (but if you do, please run checkpir on it to verify)<br> *<br> * Contains the IRQ Routing Table dumped directly from your<br> * memory, which BIOS sets up.
<br> *<br> * Documentation at: <a href="http://www.microsoft.com/whdc/archive/pciirq.mspx">http://www.microsoft.com/whdc/archive/pciirq.mspx</a><br> */<br><br>#ifdef GETPIR<br>#include "pirq_routing.h"<br>#else<br>
#include <arch/pirq_routing.h><br>#endif<br><br>const struct irq_routing_table intel_irq_routing_table = {<br>    PIRQ_SIGNATURE,  /* u32 signature */<br>    PIRQ_VERSION,    /* u16 version   */<br>    32+16*7,     /* There can be total 7 devices on the bus */
<br>    0x00,         /* Where the interrupt router lies (bus) */<br>    (0x07<<3)|0x0,   /* Where the interrupt router lies (dev) */<br>    0x800,         /* IRQs devoted exclusively to PCI usage */<br>    0x8086,         /* Vendor */
<br>    0x7000,         /* Device */<br>    0,         /* Crap (miniport) */<br>    { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8 rfu[11] */<br>    0x9c,         /* u8 checksum. This has to be set to some<br>                value that would give 0 after the sum of all
<br>                bytes for this structure (including checksum) */<br>    {<br>        /* bus,     dev|fn,   {link, bitmap}, {link, bitmap}, {link, bitmap}, {link, bitmap},  slot, rfu */<br>        {0x00,(0x0e<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x1, 0x0},
<br>        {0x00,(0x10<<3)|0x0, {{0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0x0deb8}}, 0x2, 0x0},<br>        {0x00,(0x12<<3)|0x0, {{0x62, 0xdeb8}, {0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0x0deb8}}, 0x3, 0x0},
<br>        {0x00,(0x14<<3)|0x0, {{0x63, 0xdeb8}, {0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0x0deb8}}, 0x4, 0x0},<br>        {0x00,(0x07<<3)|0x1, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0x0deb8}}, 0x0, 0x0},
<br>        {0x00,(0x07<<3)|0x2, {{0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x00, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},<br>        {0x00,(0x01<<3)|0x0, {{0x60, 0xdeb8}, {0x61, 0xdeb8}, {0x62, 0xdeb8}, {0x63, 0x0deb8}}, 0x0, 0x0},
<br>    }<br>};<br><br><br>greetz from Holland,<br><br>Maarten "merethan"<br><br><div class="gmail_quote">On Jan 13, 2008 12:50 PM, Maarten van Eeuwijk <<a href="mailto:mechno@gmail.com">mechno@gmail.com</a>> wrote:
<br><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;"><div>Hi all,</div>
<div> </div>
<div>A few day's ago I asked Uwe for a little help on my MS6119 board from MSI.</div>
<div>He adviced me to post the results of lspci -tvnn, superiotool -dV and flashrom -V to the mailing list, for the sake of archiving.</div>
<div>So, after some creative wiring I got a LiveCD going and ran the pieces of software mentioned above.</div>
<div> </div>
<div>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.</div>
<div> </div>
<div>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.</div>
<div> </div>
<div>Here are the results:</div>
<div> </div>
<div><b>lspci -tvnn:</b></div>
<div>-[0000:00]-+-00.0  8086:7190<br>           +-01.0-[0000:01]----00.0  1002:4742<br>           +-07.0  8086:7110<br>           +-07.1  8086:7111<br>           +-07.2  8086:7112<br>           \-07.3  8086:7113</div>
<div> </div>
<div> </div>
<div><b>superiotool -dV:</b></div>
<div>superiotool r3011<br>Probing for ALi Super I/O at 0x3f0...<br>  Failed. Returned data: id=0xffff, rev=0xff<br>Probing for ALi Super I/O at 0x370...<br>  Failed. Returned data: id=0xffff, rev=0xff<br>Probing for Fintek Super I/O at 0x2e...
<br>  Failed. Returned data: vid=0xffff, id=0xffff<br>Probing for Fintek Super I/O at 0x4e...<br>  Failed. Returned data: vid=0xffff, id=0xffff<br>Probing for ITE Super I/O (init=0x87,0x01,0x55,0x55/0xaa) at 0x2e...<br>  Failed. Returned data: id=0xffff, rev=0xf
<br>Probing for ITE Super I/O (init=0x87,0x87) at 0x2e...<br>  Failed. Returned data: id=0xffff, rev=0xf<br>Probing for ITE Super I/O (init=0x87,0x01,0x55,0x55/0xaa) at 0x4e...<br>  Failed. Returned data: id=0xffff, rev=0xf
<br>Probing for ITE Super I/O (init=0x87,0x87) at 0x4e...<br>  Failed. Returned data: id=0xffff, rev=0xf<br>Probing for NSC Super I/O at 0x2e...<br>  Failed. Returned data: port=0xff, port+1=0xff<br>Probing for NSC Super I/O at 0x4e...
<br>  Failed. Returned data: port=0xff, port+1=0xff<br>Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x2e...<br>  Failed. Returned data: id=0xff, rev=0xff<br>Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x2e...<br>

  Failed. Returned data: id=0xff, rev=0xff<br>Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x4e...<br>  Failed. Returned data: id=0xff, rev=0xff<br>Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x4e...<br>  Failed. Returned data: id=0xff, rev=0xff
<br>Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x162e...<br>  Failed. Returned data: id=0xff, rev=0xff<br>Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x162e...<br>  Failed. Returned data: id=0xff, rev=0xff<br>
Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x164e...
<br>  Failed. Returned data: id=0xff, rev=0xff<br>Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x164e...<br>  Failed. Returned data: id=0xff, rev=0xff<br>Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x3f0...<br>  Failed. Returned data: id=0xff, rev=0xff
<br>Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x3f0...<br>  Failed. Returned data: id=0xff, rev=0xff<br>Probing for SMSC Super I/O (idregs=0x20/0x21) at 0x370...<br>  Failed. Returned data: id=0xff, rev=0xff<br>Probing for SMSC Super I/O (idregs=0x0d/0x0e) at 0x370...
<br>  Failed. Returned data: id=0xff, rev=0xff<br>Probing for Winbond Super I/O (init=0x88) at 0x2e...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x89) at 0x2e...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x86,0x86) at 0x2e...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x87,0x87) at 0x2e...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x88) at 0x4e...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x89) at 0x4e...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x86,0x86) at 0x4e...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x87,0x87) at 0x4e...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x88) at 0x3f0...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x89) at 0x3f0...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x86,0x86) at 0x3f0...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x87,0x87) at 0x3f0...<br>Found Winbond W83977TF (id=0x97, rev=0x73) at 0x3f0
<br>Register dump:<br>idx 20 21 22 23 24 25 26 28  2a 2b 2c 2d 2e 2f<br>val 97 73 ff fe 84 00 00 00  00 00 00 00 00 ff<br>def 97 73 ff fe MM 00 MM 00  00 00 00 RR RR RR<br>LDN 0x00 (Floppy)<br>idx 30 60 61 70 74 f0 f1 f2  f4 f5
<br>val 01 03 f0 06 02 0e 00 ff  00 00<br>def 01 03 f0 06 02 0e 00 ff  00 00<br>LDN 0x01 (Parallel port)<br>idx 30 60 61 70 74 f0<br>val 01 03 78 07 03 00<br>def 01 03 78 07 04 3f<br>LDN 0x02 (COM1)<br>idx 30 60 61 70 f0
<br>
val 01 03 f8 04 00<br>def 01 03 f8 04 00<br>LDN 0x03 (COM2)<br>idx 30 60 61 70 f0 f1<br>val 01 02 f8 03 00 00<br>def 01 02 f8 03 00 00<br>LDN 0x05 (Keyboard / mouse)<br>idx 30 60 61 62 63 70 72 f0<br>val 01 00 60 00 64 01 00 42
<br>def 01 00 60 00 64 01 0c 83<br>LDN 0x07 (GPIO 1)<br>idx 30 60 61 62 63 64 65 70  72 e0 e1 e2 e3 e4 e5 e6  e7 f1<br>val 00 00 00 00 00 00 00 00  00 01 01 01 01 01 01 01  01 00<br>def 00 00 00 00 00 00 00 00  00 01 01 01 01 01 01 01  01 00
<br>LDN 0x08 (GPIO 2)<br>idx 30 60 61 70 72 e8 e9 ea  eb ec ed ee f0 f1 f2 f3  f4<br>val 01 00 00 00 00 10 01 01  01 01 08 01 00 ff 00 00  00<br>def 00 00 00 00 00 01 01 01  01 01 01 01 00 RR 00 00  00<br>LDN 0x09 (GPIO 3)
<br>idx 30 60 61 62 63 64 65 70  72 e0 e1 e2 e3 e4 e5 e6  e7 f1<br>val 00 00 00 00 00 00 00 00  00 01 01 01 01 01 01 01  01 00<br>def 00 00 00 00 00 00 00 00  00 01 01 01 01 01 01 01  01 00<br>LDN 0x0a (ACPI)<br>idx 30 60 61 62 63 64 65 70  e0 e1 02 e3 e4 f0 f1 f2  f3 f4 f5 f6 f7 fe ff
<br>val 00 00 00 00 00 00 00 00  00 00 ff 07 00 00 00 0f  07 00 00 00 00 00 00<br>def 00 00 00 00 00 00 00 00  00 00 NA MM RR 00 00 00  00 00 00 00 00 RR RR<br>Probing for Winbond Super I/O (init=0x88) at 0x370...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x89) at 0x370...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x86,0x86) at 0x370...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x87,0x87) at 0x370...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x88) at 0x250...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x89) at 0x250...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff<br>Probing for Winbond Super I/O (init=0x86,0x86) at 0x250...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff
<br>Probing for Winbond Super I/O (init=0x87,0x87) at 0x250...<br>  Failed. Returned data: id/oldid=0xff/0x0f, rev=0xff</div>
<div> </div>
<div> </div>
<div><b>flashrom -V:</b></div>
<div>Calibrating delay loop... 100M loops per second. OK.<br>No LinuxBIOS table found.<br>Found chipset "PIIX4/PIIX4E/PIIX4M", enabling flash write... OK.<br>Probing for Am29F040B, 512 KB<br>probe_29f040b: id1 0x7f, id2 0x3f
<br>Probing for Am29LV040B, 512 KB<br>probe_29f040b: id1 0x7f, id2 0x3f<br>Probing for Am29F016D, 2048 KB<br>probe_29f040b: id1 0xff, id2 0xff<br>Probing for AE49F2008, 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for At29C040A, 512 KB
<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for At29C020, 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for At49F002(N), 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for At49F002(N)T, 256 KB<br>probe_jedec: id1 0xda, id2 0x45
<br>Probing for EN29F002(A)(N)T, 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for EN29F002(A)(N)B, 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for MBM29F400TC, 512 KB<br>probe_m29f400bt: id1 0x7f, id2 0x3f
<br>Probing for MX29F002, 256 KB<br>probe_29f002: id1 0xda, id2 0x45<br>Probing for MX25L4005, 512 KB<br>generic_spi_command called, but no SPI chipset detected<br>Probing for MX25L8005, 1024 KB<br>generic_spi_command called, but no SPI chipset detected
<br>Probing for SST25VF040B, 512 KB<br>generic_spi_command called, but no SPI chipset detected<br>Probing for SST25VF016B, 2048 KB<br>generic_spi_command called, but no SPI chipset detected<br>Probing for SST29EE020A, 256 KB
<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST28SF040A, 512 KB<br>probe_28sf040: id1 0x7f, id2 0x3f<br>Probing for SST39SF010A, 128 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST39SF020A, 256 KB<br>probe_jedec: id1 0xda, id2 0x45
<br>Probing for SST39SF040, 512 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST39VF020, 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST49LF040B, 512 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST49LF040, 512 KB
<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST49LF020A, 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST49LF080A, 1024 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST49LF002A/B, 256 KB<br>probe_jedec: id1 0xda, id2 0x45
<br>Probing for SST49LF003A/B, 384 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST49LF004A/B, 512 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST49LF008A, 1024 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for SST49LF004C, 512 KB
<br>probe_49lfxxxc: id1 0x7f, id2 0x3f<br>Probing for SST49LF008C, 1024 KB<br>probe_49lfxxxc: id1 0x7f, id2 0x3f<br>Probing for SST49LF016C, 2048 KB<br>probe_49lfxxxc: id1 0xff, id2 0xff<br>Probing for SST49LF160C, 2048 KB
<br>probe_49lfxxxc: id1 0xff, id2 0xff<br>Probing for Pm49FL002, 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for Pm49FL004, 512 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for W29C011, 128 KB<br>probe_jedec: id1 0xda, id2 0x45
<br>Probing for W29C040P, 512 KB<br>probe_jedec: id1 0xda, id2 0x45<br>Probing for W29C020C, 256 KB<br>probe_jedec: id1 0xda, id2 0x45<br>W29C020C found at physical address 0xfffc0000.<br>Flash part is W29C020C (256 KB).
<br>
No operations were specified.</div>
<div> </div>
<div>That's it.</div>
<div> </div>
<div>Uwe told me he could help me with hacking up a MS6119 target file with this info.</div>
<div>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.</div>
<div>Once that works I will demonstrate it at school. Perhaps I 'll put it against a Cisco router in a VS showdown on troughput.</div>
<div>Might be cool to beat a 800+ bucks Cisco machine with an old piece of hardware I found in a trashbox.</div>
<div> </div>
<div> </div>
<div>tnx for your time,</div>
<div> </div>
<div>Maarten "merethan"</div>
</blockquote></div><br>