]> Joshua Wise's Git repositories - netwatch.git/blobdiff - net/net.c
more stuff
[netwatch.git] / net / net.c
index 46ea9cd75bb9d1ab345eccaebbede9bd20028064..7164746a56f389a1da1a2290a5c8f11dcff01c8e 100644 (file)
--- a/net/net.c
+++ b/net/net.c
@@ -5,6 +5,7 @@
 #include <pci-bother.h>
 #include <output.h>
 #include <minilib.h>
 #include <pci-bother.h>
 #include <output.h>
 #include <minilib.h>
+#include <lwip/init.h>
 #include "net.h"
 #include "../aseg/keyboard.h"
 
 #include "net.h"
 #include "../aseg/keyboard.h"
 
@@ -44,10 +45,14 @@ void handle_command(packet_t * p)
 
        outputf("NIC: Command: 0x%x, %d bytes", p->command, dl);
 
 
        outputf("NIC: Command: 0x%x, %d bytes", p->command, dl);
 
-       if (p->command == 0x42)
-       {
+       switch (p->command) {
+       case 0x42:
                for (i = 0; i < dl; i++)
                        kbd_inject_key(p->data[i]);
                for (i = 0; i < dl; i++)
                        kbd_inject_key(p->data[i]);
+               break;
+       case 0xFE:
+               outb(0xCF9, 0x4);       /* Reboot */
+               break;
        }
 }
 
        }
 }
 
@@ -120,4 +125,5 @@ void eth_init()
        /* Required for DMA to work. :( */
        smram_tseg_set_state(SMRAM_TSEG_OPEN);
        pci_probe_driver(a3c90x_driver);
        /* Required for DMA to work. :( */
        smram_tseg_set_state(SMRAM_TSEG_OPEN);
        pci_probe_driver(a3c90x_driver);
+       lwip_init();
 }
 }
This page took 0.025196 seconds and 4 git commands to generate.