Module Name: src Committed By: bouyer Date: Wed Sep 18 20:00:53 UTC 2013
Modified Files: src/sys/arch/sandpoint/stand/altboot [netbsd-6]: brdsetup.c rge.c src/sys/dev/ic [netbsd-6]: rtl8169.c Log Message: Pull up following revision(s) (requested by phx in ticket #946): sys/arch/sandpoint/stand/altboot/rge.c: revision 1.7 sys/arch/sandpoint/stand/altboot/brdsetup.c: revision 1.32 sys/dev/ic/rtl8169.c: revision 1.138 QNAP V200 boards have no EEPROM for the MAC address, so all devices default to the same address (00:e0:4c:69:20:01). Now we read the real MAC address from the flash ROM. It is stored at the beginning of a 512-byte block in ASCII format. Some QNAP's have a broken ext2 file system, so we cannot look for the file ETH0.MAC_ADDR therein, but have to search the whole flash in 512-byte steps for candidates... Make re(4) driver always use IDR register values for its MAC address. Some sandpoint NAS firmwares set MAC address per their firmware settings and don't use re(4)'s EEPROM values. Per rtl8169 manuals re(4) chip reads EEPROM automatically after hardware reset and Linux driver also uses IDR registers, so this change should not affect existing other boards which actually have vaild EEPROM. Per discussion in old tech-kern@ thread: http://mail-index.netbsd.org/tech-kern/2012/12/01/msg014573.html Note rtl81x9.c is still shared among rtk(4) only for a multicast function (to avoid boring refactoring work). To generate a diff of this commit: cvs rdiff -u -r1.27 -r1.27.2.1 \ src/sys/arch/sandpoint/stand/altboot/brdsetup.c cvs rdiff -u -r1.6 -r1.6.8.1 src/sys/arch/sandpoint/stand/altboot/rge.c cvs rdiff -u -r1.134.4.2 -r1.134.4.3 src/sys/dev/ic/rtl8169.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.