[haiku-commits] Re: haiku: hrev43365 - in src: add-ons/kernel/drivers/network/rtl81xx/pci libs/compat/freebsd_network/compat/dev/mii add-ons/kernel/drivers/network/rtl81xx/dev/mii

  • From: Siarzhuk Zharski <zharik@xxxxxx>
  • To: <haiku-commits@xxxxxxxxxxxxx>
  • Date: Wed, 30 Nov 2011 00:11:27 +0200

On Tue, 29 Nov 2011 15:21:06 -0600, Alexander von Gluck wrote:
Author:      Alexander von Gluck IV <kallisti5@xxxxxxxxxxx>
Date:        Tue Nov 29 21:11:34 2011 UTC

Add support for newer Realtek RTL8105E ethernet card revision

* backport from recent FreeBSD rt driver


2 All: So what is now with the functionality provided earlier by vendor branch in SVN repo? How should be 3rd party sources tracked now with the git?


An FYI, It seems the FreeBSD mii structs changed a bit recently.

If we want to copy any additional FreeBSD drivers over as-is,
freebsd compat (just network?) as well as all the drivers will
need to be re-worked a bit :(

the compat layer has to be reworked, driver sources are usually taken as unchanged as possible.

Usual workflow of updating compat-drivers on SVN repo was following:

a) The version from some RELASE_X_X_X branch in FreeBSD repo was copied to vendor/freebsd/current/ branch on our SVN repo in correspondency with the structure of directories; b) This version was tagged to corresponding tag in vendor/freebsd/RELEASE_X_X_X ; c) The differences between the these release tags were merged to the trunk, tested and finally committed;

Because the FreeBSD drivers code were taken with as minimal changes as possible, most of Haiku-related functionality goes either in glue code or in compat layer. And it is like a strict requirement to "mark" the Haiku-related changes in if_*.c files with #ifdef __HAIKU__ sections - just to let your followers to update the driver with minimal regression, pain and headache. I personally found very usefull to grab the FreeBSD driver sources from the CVS repo because CVS expands the "$Id:" keywords with exact revision of the file and this made the situation clear. In opposite, files, grabbed from the FreeBSD SVN has no revisions so this make any update of this source in the future like a Russian Roulette - "Hm, what I'm going to break today?".

--
Kind Regards,
   S.Zharski

Other related posts: