看板 DFBSD_kernel 關於我們 聯絡資訊
On Wed, Jun 01, 2011 at 03:14:46PM +0530, Siju George wrote: > > Where do I put the PCI IDs in this file? > > O should I copy the FreeBSD driver files for this chipset and then add > those files here? > Really, with all due respect to Sephe as he is the guru of this driver, I don't think this is igb - but instead is em, as outlined in my mail from 2011-05-31 - " Our e1000/em contains what apppears to be the needed items for this card: em0@pci0:0:25:0: class=0x020000 card=0x80001025 chip=0x10f08086 rev=0x06 hdr=0x00 e1000_api.c: case E1000_DEV_ID_PCH_D_HV_DC: e1000_hw.h:#define E1000_DEV_ID_PCH_D_HV_DC 0x10F0 if_em.c: { 0x8086, E1000_DEV_ID_PCH_D_HV_DC, PCI_ANY_ID, PCI_ANY_ID, 0}, " the 'pcidevs' output is your FreeBSD output - which probes as em0 rather than igb0, and as can be seen from the chip id - chip=0x10f08086 - that is, chip 0x10F0 from vendor 0x8086 (Intel) - and as can be seen from the 'grep' output, the related device ID confirugration is already referenced in our 'unbuilt' em copy (if_em.c, etc) which resides in src/sys/dev/netif/e1000, as well as the freebsd dev/e1000 if_em.c , etc. Again, the e1000/em copy is not built, but instead an older copy is built under the path /src/sys/dev/netif/em. I'd again suggest first doing a manual build of /src/sys/dev/netif/e1000/em - on a already built source tree: # cd /src/sys/dev/netif/e1000/em # wmake # ls if_em.ko You can then test this 'if_em.ko' instead of the 'default' one - but will need to build a kernel *without* the 'built' em (netif/em) in order to be able to load this one (or will need to change the files so it has a different driver name). If this happens to work - not counting on it becuase we have several DF specific fixes in the dev/netif/em copy, though I do know it compiles, and alot of the code is modularized into common files used by the functional igb driver - so there is a chance - from there it will be a matter of deciding how to merge the two 'em' copies in the tree. Alternately you could try to merge in the stuff from netif/e1000/em into the dev/netif/em - but I think this might be a 'backwards' approach. again I didn't dig enough in this driver or the history to be 100% sure of all of this - but based on the file contents, the device id & probe you provided from your FreeBSD system and a limited check of our tree this does appear to be the case. Again I defer to Sephe if I'm completely missing something here, which of course is possible. Cheers & Good Luck, - Chris