Bjorn Helgaas napisaÅ(a): >>Version from syskonnect site require only changing usage of >>pci_dev->slot_name to pci_name(pci_dev) in skge.c and skethtool.c. After >>that everything should work fine. So I think there is no need to post my >>path here but if you really whant I may do this. Whole path agains >>2.6.12-rc2 take about 1.2 MB (diffstat attached below). > > > I agree, no need to post a whole 1.2MB patch (goodness, what's > in this driver, anyway, that it would need a 1.2MB *patch*? :-))
I'm wondering too :) > But you seem to be saying that the driver from syskonnect (and possibly > the one in 2.6.12-rc1-bk3 as well) does not work as-is, and that you have > a small patch that makes it work. The one that is in 2.6.12-rc1-bk2 and latest 2.6.13-rc2 doesn't work with Marvell Yukon 88E8053 GigE. Attached patch convert pci_dev->slot_name usage to pci_name() in skge.c and skethtool.c. First you must apply patch generated by install script and after that apply this patch:-) Regards Jacek --- drivers/net/sk98lin/skethtool.c | 2 +- drivers/net/sk98lin/skge.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) ---
--- linux-2.6.12-rc2/drivers/net/sk98lin/skge.c 2005-04-09 14:49:39.000000000 +0200 +++ linux/drivers/net/sk98lin/skge.c 2005-04-09 02:04:49.000000000 +0200 @@ -4026,7 +4026,7 @@ */ * ((SK_U32 *)pMemBuf) = 0; * ((SK_U32 *)pMemBuf + 1) = pdev->bus->number; - * ((SK_U32 *)pMemBuf + 2) = ParseDeviceNbrFromSlotName(pdev->slot_name); + * ((SK_U32 *)pMemBuf + 2) = ParseDeviceNbrFromSlotName(pci_name(pdev)); if(copy_to_user(Ioctl.pData, pMemBuf, Length) ) { Err = -EFAULT; goto fault_diag; --- linux-2.6.12-rc2/drivers/net/sk98lin/skethtool.c 2005-04-09 14:49:39.000000000 +0200 +++ linux/drivers/net/sk98lin/skethtool.c 2005-04-09 02:04:49.000000000 +0200 @@ -1136,7 +1136,7 @@ strncpy(edrvinfo->driver, DRIVER_FILE_NAME , 32); strncpy(edrvinfo->version, versionString , 32); strncpy(edrvinfo->fw_version, "N/A", 32); - strncpy(edrvinfo->bus_info, pAC->PciDev->slot_name, 32); + strncpy(edrvinfo->bus_info, pci_name(pAC->PciDev), 32); #ifdef ETHTOOL_GSTATS edrvinfo->n_stats = SK98LIN_STATS_LEN; #endif