<table width="100%">
  <tr>
    <td>
    </td>
    <td align="right"><a href="http://hurd.gnufans.orghttp://LOCATIONHurd/JoachimNilssonHurdPage" target="_top">Edit</a> this page </td>
  </tr>
  <tr align="center">
    <td align="right"> %ATTACHURL%/patch_kit.jpg </td>
    <td align="left"><nop><h2><a name="Table_of_Contents"> Table of Contents </a></h2> %TOC% </nop></td>
  </tr>
</table>

## <a name="Introduction"> Introduction </a>

This page serves as a simple project page for me. I use it to list my personal Hurd related projects, currently only OSKit related. If you wish to comment on my work, do so in [[TWiki/GoodStyle]], preferably at the bottom of this page.

The OSKit work is based on the St. Patrick's Day release, snapshot 20020317.

## <a name="Current_Project"> Current Project </a>

I'm working on importing the Linux ATA-100 drivers to the OSKit. Using patches by Linux ATA guy, Andr� Hedrick. [ATA-100 patches](http://www.kernel.org/pub/linux/kernel/people/hedrick/ide-2.2.20/).

At my help I now have [[Main/OgnyanKulev]], he will test a few ATA-100 cards he has access to.

[[Main/JoachimNilsson]]:

* HighPoint HPT366 ATA-66
* Promise PDC202XX ATA-100

[[Main/OgnyanKulev]]:

* Promise PDC202XX
* Intel 82801BA
* Silicon Image CMD649

### <a name="OSKit_ATA_100_Support"> </a> OSKit - ATA-100 Support

I have used the Linux 2.2.22 patch as the base and added the Linux ide-2.2.20.01102002 patch on top. Integration is now complete, testing have started. An alpha quality release is available below, if you want to help out with testing or be on the bleeding edge of things, please contact me via email.

<table border="1" cellpadding="1" cellspacing="0">
  <tr>
    <th bgcolor="#99CCCC"><strong>Part</strong></th>
    <th bgcolor="#99CCCC"><strong>Brief description</strong></th>
    <th bgcolor="#99CCCC"><strong>DIFF</strong></th>
    <th bgcolor="#99CCCC"><strong>Date</strong></th>
  </tr>
  <tr>
    <td> 2.2.22-ATA (ALPHA) </td>
    <td> Adds ATA-100/66 capabilities (alpha release) </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.22-ATA-alpha.diff.gz" target="_top">patch-oskit-linux-2.2.22-ATA-alpha.diff.gz</a></td>
    <td align="right"> Jan 3, 2003 </td>
  </tr>
</table>

**_Comments:_**

* Progress is slow.
  * Off-board chipsets seem more difficult ...
  * PIIX chipset works, tuning included.

----

## <a name="Previous_Projects"> Previous Projects </a>

### <a name="OSKit_New_Linux_NIC_drivers"> </a> OSKit - "New" Linux NIC drivers

"New" means simply to add more of the drivers existing in Linux 2.2.X that don't exist in the OSKit today.

To test any of the work in this project you first need to upgrade the OSKit to Linux 2.2.22 (or later) using my patches below. The first stage deals with network drivers, 10 and 100 Mbps. Gigabit ethernet I have no possibility to test ... so they are **not** included.

I may, at a later date, also include updates to drivers by Donald Becker. See the drivers at <http://www.scyld.com/network/>

<table border="1" cellpadding="1" cellspacing="0">
  <tr>
    <th bgcolor="#99CCCC"><strong>Part</strong></th>
    <th bgcolor="#99CCCC"><strong>Brief description</strong></th>
    <th bgcolor="#99CCCC"><strong>DIFF</strong></th>
    <th bgcolor="#99CCCC"><strong>Date</strong></th>
  </tr>
  <tr>
    <td> 2.2.22-NET </td>
    <td> Adds more Linux NIC drivers </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.22-net.diff.gz" target="_top">patch-oskit-linux-2.2.22-net.diff.gz</a></td>
    <td align="right"> Dec 26, 2002 </td>
  </tr>
</table>

**_Added NICs:_**

* 3Com 3c515
* D-Link DE-600, DE-620
* Davicom DM9102(A)/DM9132/DM9801
* N2k-PCi, NE2000 PCI-based cards
* PCNet32
* RealTek RTL8139
* SiS 900/7016
* ThunderLAN
* VIA Rhine

### <a name="OSKit_Upgrade_existing_Linux_dri"> </a> OSKit - Upgrade existing Linux drivers

 The OSKit itslef is currently at Linux version 2.2.12 for most of its drivers. The objective of this project was to upgrade to 2.2.22. I will of course also provide upgrades to upcoming revisions of the 2.2.x series, but they have a low priority right now. Please note:

* The patches are cummulative, i.e., you only need one.
* The patches only upgrade existing OSKit drivers, they don't add support for new ones. Unlike the corresponding Linux patches.

To build [[Mach/OskitMach]] you also need some other [[Mach/OskitPatches]]. As well as two unofficial GNUmach2 patches. See Daniel Wagners post to bug-hurd, <http://mail.gnu.org/pipermail/bug-hurd/2002-December/011134.html>, or the [[Mach/OskitPatches]].

**_Tested NICs:_**

Testbed: Intel AL440LX mobo 128MiB RAM (only 64MiB detected by Grub 0.93).

* Digital Equipment Corp. Etherworks Turbo PCI Controller DE435 - digital Tulip 21040-AA
* 3Com 3C905B-TXNM Fast Etherlink XL PCI - Parallel Tasking II 3Com 40-0483-004
* RTL8139

**_Untested NICs:_**

These I have and will test eventually

* Western Digital 10 Mbps ISA - WD8003EBT
* SMC Ultra 16 ISA
* NE1000/2000

<table border="1" cellpadding="1" cellspacing="0">
  <tr>
    <th bgcolor="#99CCCC"><strong>Part</strong></th>
    <th bgcolor="#99CCCC"><strong>Brief description</strong></th>
    <th bgcolor="#99CCCC"><strong>DIFF</strong></th>
    <th bgcolor="#99CCCC"><strong>Date</strong></th>
    <th bgcolor="#99CCCC"><strong>Verified?</strong></th>
  </tr>
  <tr>
    <td> 2.2.13 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.13 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.13.diff.gz" target="_top">patch-oskit-linux-2.2.13.diff.gz</a></td>
    <td> Oct 27, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.14 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.14 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.14.diff.gz" target="_top">patch-oskit-linux-2.2.14.diff.gz</a></td>
    <td> Oct 30, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.15 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.15 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.15.diff.gz" target="_top">patch-oskit-linux-2.2.15.diff.gz</a></td>
    <td> Oct 31, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.16 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.16 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.16.diff.gz" target="_top">patch-oskit-linux-2.2.16.diff.gz</a></td>
    <td> Oct 31, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.17 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.17 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.17.diff.gz" target="_top">patch-oskit-linux-2.2.17.diff.gz</a></td>
    <td> Nov 1, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.18 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.18 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.18.diff.gz" target="_top">patch-oskit-linux-2.2.18.diff.gz</a></td>
    <td> Nov 1, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.19 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.19 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.19.diff.gz" target="_top">patch-oskit-linux-2.2.19.diff.gz</a></td>
    <td> Nov 4, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.20 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.20 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.20.diff.gz" target="_top">patch-oskit-linux-2.2.20.diff.gz</a></td>
    <td> Nov 5, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.21 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.21 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.21.diff.gz" target="_top">patch-oskit-linux-2.2.21.diff.gz</a></td>
    <td> Nov 5, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.22 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.22 </td>
    <td><a href="http://gnufans.org/joachim/hurd/patch-oskit-linux-2.2.22.diff.gz" target="_top">patch-oskit-linux-2.2.22.diff.gz</a></td>
    <td> Nov 5, 2002 </td>
    <td> Yes (1) </td>
  </tr>
  <tr>
    <td> 2.2.23 </td>
    <td> Upgrade from Linux 2.2.12 to 2.2.23 </td>
    <td> [[][patch-oskit-linux-2.2.23.diff.gz]] </td>
    <td> Not yet </td>
    <td>   </td>
  </tr>
</table>

**_Notes:_**

1. Yes, the patch has been tested using the latest CVS version (HEAD) of GNUmach. Verified means that I have verified that GNUmach can be built, booted successfully (using IDE and various NICs).

## <a name="Future_Work"> Future Work </a>

1. Try to enable GNUmach to use the [[TWiki/FreeBSD]] drivers in the OSKit.
2. Port a simple DHCP client (udhcp perhaps?).
3. Enable the sound drivers in the OSKit -- port a useful sound daemon.
4. SMP support for GNUmach2 - Current OSKit is broken.

### <a name="TWiki_FreeBSD_NIC_drivers_for_GN"> </a> [[TWiki/FreeBSD]] NIC drivers for GNUmach

 I have looked into this a bit. The [[TWiki/FreeBSD]] PCI drivers are initialized from the [[TWiki/FreeBSD]] PCI probe. GNUmach v2 uses the Linux PCI stuff which means the [[TWiki/FreeBSD]] probe will not run - this is probably solved in some ingenious way in the OSKit, but I've yet to find out about that.

----

 Feel free to contact me if you have any comments or suggestions.

-- [[Main/JoachimNilsson]] - Jan 8th 2003

## <a name="Comments"> Comments </a>

Go Joachim! Great work!

-- [[Main/GrantBow]] - 11 Nov 2002