Jump to content

LAN Marvell Yukon-2 driver


  • Please log in to reply
42 replies to this topic

#1
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
On my Dell Inspiron 1525 I have a Marvell 88E8040 . It is quite different from other Yukon-2 devices:
1. It is not Gigabit adapter, only Fast ethernet.
2. It has only one output port.
3. It needs workarounds in several situations.
So AppleYukon.kext and AppleYukon2.kext don't work with any patches. They intended for chips b3-b7 while I have b8. And I know that 88E8040T has chip b9 also not supported.

FreeBSD driver is "if_msk.c". In development. Seems doesn't work too.
Linux driver "sky2.c" seems to be good.
I was tried to apply them to create MacOSX driver. Here is my sources and debug version. Doesn't work yet!
I give up. :)
Being alone I can't finish it.
EDITED:
Continue developmentAttached File  Marvell_103.src.zip   469.3KB   253 downloads

EDITED 09-12-2008: Attached File  Marvell_104.zip   1.43MB   611 downloads
The new sources also include the most full Linux driver sk98lin but without 8040 patches.

Would like to see your reports like my
Nov 24 17:07:36 sergeys-macpro31 kernel[0]: initEventSources() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: initEventSources() <===Nov 24 17:07:36 sergeys-macpro31 kernel[0]: allocateDescriptorMemory() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: allocateDescriptorMemory() <===Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: PCIe link status=1011 link cap=7ac11 PCIe cap=c0Nov 24 17:07:36 sergeys-macpro31 kernel[0]: PCI PMC 0xfe03Nov 24 17:07:36 sergeys-macpro31 kernel[0]: PME from D3cold is supportedNov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: PCI data: VendorID:11ab DeviceID:4354 Rev:12Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: chip_id:b8 chip_rev:0 phy_type:0 pmd_type:32Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: phy_addr:0 ports:1 RAM:128 kb Flags:1e8Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: Ethernet address 00:1d:09:59:0e:e9Nov 24 17:07:36 sergeys-macpro31 kernel[0]: setActivationLevel 2Nov 24 17:07:36 sergeys-macpro31 kernel[0]: reset() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: enable the Tx ArbitersNov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_reset() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_reset() <=== GM_RX_CTRL=0Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: intr_mask = c000001dNov 24 17:07:36 sergeys-macpro31 kernel[0]: reset() <===Nov 24 17:07:36 sergeys-macpro31 kernel[0]: initTxRing() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: freeTxRing() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: freeTxRing() <===Nov 24 17:07:36 sergeys-macpro31 kernel[0]: initTxRing() <===Nov 24 17:07:36 sergeys-macpro31 kernel[0]: initRxRing() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: initRxRing() <===Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: medium = 0x5233880 Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: auto:yes speed:ffff duplex:halfNov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_reset() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_reset() <=== GM_RX_CTRL=0Nov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_mac_init() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_init() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: yukon_init<===PHY_MARV_INT_MASK = 8800Nov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_mac_init() <===Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: msk_up=> RB_CRTL = 000Nov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_mac_init() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_init() ===>Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: yukon_init<===PHY_MARV_INT_MASK = 8800Nov 24 17:07:36 sergeys-macpro31 kernel[0]: yukon_mac_init() <===Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: setMulticastMode onNov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: write c000001d to B0_IMSKNov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: setMulticastMode onNov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: setMulticastListNov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: setMulticastMode offNov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: setMulticastMode onNov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: setMulticastListNov 24 17:07:36: --- last message repeated 2 times ---Nov 24 17:07:36 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000Nov 24 17:07:37: --- last message repeated 4 times ---Nov 24 17:07:37 sergeys-macpro31 com.apple.launchd[1] (org.samba.nmbd[154]): Exited: TerminatedNov 24 17:07:37 sergeys-macpro31 com.apple.launchd[1] (org.samba.nmbd): Throttling respawn: Will start in 9 secondsNov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000Nov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000Nov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 10Nov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell:yukon_phy_intr=> istatus = 5c40 phystat = 7c40Nov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell: link_up B0_CTST = 0Nov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell: link_up GMAC_IRQ_MSK = aNov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell: link speed now 100 Mbps, full duplex.Nov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell: setMulticastListNov 24 17:07:37 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000Nov 24 17:07:39: --- last message repeated 5 times ---Nov 24 17:07:39 sergeys-macpro31 kernel[0]: Marvell: setMulticastListNov 24 17:07:39: --- last message repeated 1 time ---Nov 24 17:07:39 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000Nov 24 17:07:42: --- last message repeated 5 times ---Nov 24 17:07:42 sergeys-macpro31 kernel[0]: Marvell ERR: timeout handling kIOReturnOutputStallNov 24 17:07:42 sergeys-macpro31 kernel[0]: Marvell: transmit ring 0 .. 51 report=33 done=33  Cable unplug and plugNov 24 17:09:32 sergeys-macpro31 kernel[0]: Marvell ERR: timeout handling kIOReturnOutputStallNov 24 17:09:32 sergeys-macpro31 kernel[0]: Marvell: transmit ring 0 .. 198 report=33 done=33Nov 24 17:09:36 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 10Nov 24 17:09:36 sergeys-macpro31 kernel[0]: Marvell:yukon_phy_intr=> istatus = 700 phystat = 40Nov 24 17:09:36 sergeys-macpro31 kernel[0]: yukon_reset() ===>Nov 24 17:09:36 sergeys-macpro31 kernel[0]: yukon_reset() <=== GM_RX_CTRL=e000Nov 24 17:09:36 sergeys-macpro31 kernel[0]: Marvell: network link down.Nov 24 17:09:36 sergeys-macpro31 kernel[0]: yukon_init() ===>Nov 24 17:09:36 sergeys-macpro31 kernel[0]: Marvell: yukon_init<===PHY_MARV_INT_MASK = 8800Nov 24 17:09:37 sergeys-macpro31 kernel[0]: Marvell ERR: timeout handling kIOReturnOutputStallNov 24 17:09:37 sergeys-macpro31 kernel[0]: Marvell: transmit ring 0 .. 198 report=33 done=33Nov 24 17:09:42 sergeys-macpro31 kernel[0]: Marvell ERR: timeout handling kIOReturnOutputStallNov 24 17:09:42 sergeys-macpro31 kernel[0]: Marvell: transmit ring 0 .. 219 report=33 done=33Nov 24 17:09:42 sergeys-macpro31 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 10Nov 24 17:09:42 sergeys-macpro31 kernel[0]: Marvell:yukon_phy_intr=> istatus = 1c40 phystat = 7c40Nov 24 17:09:42 sergeys-macpro31 kernel[0]: Marvell: link_up B0_CTST = 0Nov 24 17:09:42 sergeys-macpro31 kernel[0]: Marvell: link_up GMAC_IRQ_MSK = aNov 24 17:09:42 sergeys-macpro31 kernel[0]: Marvell: link speed now 100 Mbps, full duplex.Nov 24 17:09:47 sergeys-macpro31 kernel[0]: Marvell ERR: timeout handling kIOReturnOutputStallNov 24 17:09:47 sergeys-macpro31 kernel[0]: Marvell: transmit ring 0 .. 226 report=33 done=33

Is there anybody can find a sources of AppleYukon2 driver?

EDITED 10-03-2009
That's all. I have working driver from 10.5.7 so I need no more to continue the development. If anyone wants to make some driver based on my sources - :( !

#2
gizmoarena

gizmoarena

    OS X fanatic

  • Members
  • PipPipPipPipPip
  • 266 posts
  • Gender:Male
  • Location:Melbourne, Australia
Did you try editing the Info.plist and replacing with your device/vendor IDs?
I am using 88E8039 by this method. Working fine.

I can give you my kext, you can edit the plist and just replace 39 by 40.

#3
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
I tried 4 version of AppleYukon and 3 version of AppleYukon2. Nothing works!
I can try also your version, but 8040 is 100mb while 8039 - gigabit.

#4
Drummkit

Drummkit

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts
gizm could you give me your kext?
Slice I saw that you tried to make a driver, I have some time to spend so if you could make a little documentation with what you have done and what remains to, it will be appreciated,
thanks


#5
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

gizm could you give me your kext?
Slice I saw that you tried to make a driver, I have some time to spend so if you could make a little documentation with what you have done and what remains to, it will be appreciated,
thanks

In my sources I made comments
//done - I think the procedure is OK
// TODO - I think the procedure is wrong.

I write the driver based on Apple's sources for other NICs and on FreeBSD's and Linux's sources for Yukon-2. So it needs to compare logics of my driver with Linux's driver step by step.
But the last one uses Linux API that I can't understand. For example
static irqreturn_t sky2_intr(int irq, void *dev_id)
{
		struct sky2_hw *hw = dev_id;
		UInt32 status;

		/* Reading this mask interrupts as side effect */
		status = CSR_READ_4(B0_Y2_SP_ISRC2);
		if (status == 0 || status == ~0)
				return IRQ_NONE;

		prefetch(&hw->st_le[hw->st_idx]);

		napi_schedule(&hw->napi);

		return IRQ_HANDLED;
}
What is napi_shedule in terms of MacOSX?
Where is sky2_poll called?
netif_napi_add(dev, &hw->napi, sky2_poll, NAPI_WEIGHT);
I am also not clear about using MTU in MacOSX.

#6
Drummkit

Drummkit

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts
Ok thanks Slice, I will try to make something...

#7
enli

enli

    InsanelyMac Protégé

  • Members
  • Pip
  • 36 posts
Guys, any progress ?

#8
eraserhead77

eraserhead77

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 159 posts
  • Location:California

Did you try editing the Info.plist and replacing with your device/vendor IDs?
I am using 88E8039 by this method. Working fine.

I can give you my kext, you can edit the plist and just replace 39 by 40.


With my 88E8055, you not only need to edit the device ID in the AppleYukon2.kext Info.plist, but you have to edit the SubSystem ID otherwise it won't recognize your specific device.

My 88E8055 works fine after adding the SubSystem ID to the Info.plist, its worth a shot on the 88E8040. There was no patch needed.

I'm at work...otherwise I'd post the code, and show you what I mean...let me know if you've already gone this route.

#9
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

With my 88E8055, you not only need to edit the device ID in the AppleYukon2.kext Info.plist, but you have to edit the SubSystem ID otherwise it won't recognize your specific device.

My 88E8055 works fine after adding the SubSystem ID to the Info.plist, its worth a shot on the 88E8040. There was no patch needed.

I'm at work...otherwise I'd post the code, and show you what I mean...let me know if you've already gone this route.

My device is recognized. But any driver give me numerous errors.

I have some progress with my driver. May be it will works in future.

Attached Files



#10
aqua-mac

aqua-mac

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 839 posts
  • Gender:Male
  • Location:England
Guys,

Any further progress?

#11
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

Guys,

Any further progress?

Why multiple? I am still alone.

#12
Krazubu

Krazubu

    InsanelyMac Legend

  • Retired
  • 874 posts
Slice,
If it can help M. Musashi made an open source driver for Yukon 8001 and it's available here somewhere in the forum.
This driver works nice for me but has some random panics at boot sometimes.

#13
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

Slice,
If it can help M. Musashi made an open source driver for Yukon 8001 and it's available here somewhere in the forum.
This driver works nice for me but has some random panics at boot sometimes.

Thank you for attention. I know skge sources and I begin from them. Nontheless it is only an origin of very hard way. Yukon 8001 is a Yukon-1 while I have Yukon-2 with many new corrections.
1. Compare to Yukon-1 I have new set of internal registers.
2. Compare to Yukon 88E8056 I have only one port and speed of 100mb.
3. Compare to other Yukon I have no large internal RAM buffer. Only 8kb, but not 512kb.
4. I have slow chip running with 50MHz while other with 125MHz.
5. I have StatusRing which I can't understand.

I can write a driver. I know C++. I don't know network. It is a problem.

#14
aqua-mac

aqua-mac

    InsanelyMac Legend

  • Members
  • PipPipPipPipPipPipPip
  • 839 posts
  • Gender:Male
  • Location:England
Hi Slice,

This is from my Samsung NC10, if you need any other info, please let me know.

[codebox]Dec 10 17:55:49 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:49 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 1 fStHeadIndex=0
Dec 10 17:55:49 aquamacs-MacBook2-2 kernel[0]: Marvell: setMulticastMode on reg=e000
Dec 10 17:55:49 aquamacs-MacBook2-2 kernel[0]: Marvell: setMulticastList
Dec 10 17:55:49: --- last message repeated 2 times ---
Dec 10 17:55:49 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:49 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 2 fStHeadIndex=1
Dec 10 17:55:50 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:50 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 3 fStHeadIndex=2
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 10
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell:yukon_phy_intr(0)=> istatus = 5040 phystat = 7840
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 3 fStHeadIndex=3
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 4 fStHeadIndex=3
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 10
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell:yukon_phy_intr(0)=> istatus = c00 phystat = 6c40
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: link_up(0) B0_CTST = 0
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: link_up(0) GMAC_IRQ_MSK = 3a
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: link speed(0) now 100 Mbps, full duplex.
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 4 fStHeadIndex=4
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 5 fStHeadIndex=4
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: MAC AUTH succeeded
Dec 10 17:55:51 aquamacs-MacBook2-2 kernel[0]: AirPort: Link Up on en0
Dec 10 17:55:52 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:52 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 6 fStHeadIndex=5
Dec 10 17:55:52 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:52 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 7 fStHeadIndex=6
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Marvell: setMulticastList
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 8 fStHeadIndex=7
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = 9 fStHeadIndex=8
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = a fStHeadIndex=9
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Status ring with idx=10 Head=9
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @00:(1,0) @01:(7,0) @02:(8,0) @03:(9,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @04:(a,0) @05:(d,0) @06:(e,0) @07:(11,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @08:(12,0) @09:(13,0) @0a:(0,0) @0b:(0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @0c:(0,0) @0d:(0,0) @0e:(0,0) @0f:(0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @10:(0,0) @11:(0,0) @12:(0,0) @13:(0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @14:(0,0) @15:(0,0) @16:(0,0) @17:(0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @18:(0,0) @19:(0,0) @1a:(0,0) @1b:(0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @1c:(0,0) @1d:(0,0) @1e:(0,0) @1f:(0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @20:(0,0) @21:(0,0) @22:(0,0) @23:(0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @24:(0,0) @25:(0,0) @26:(0,0) @27:(0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Rx Desc ring with tail=0 Head=0
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @00:(3f33800,5ee) @01:(3f26000,5ee) @02:(131e7000,5ee) @03:(13656000,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @04:(13615800,5ee) @05:(13615000,5ee) @06:(13754000,5ee) @07:(13ad3800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @08:(13ad3000,5ee) @09:(131d2800,5ee) @0a:(131d2000,5ee) @0b:(13cd1800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @0c:(13cd1000,5ee) @0d:(13190800,5ee) @0e:(13190000,5ee) @0f:(3f51800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @10:(3f51000,5ee) @11:(3ec0800,5ee) @12:(3ec0000,5ee) @13:(3eef800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @14:(3eef000,5ee) @15:(3efe800,5ee) @16:(3efe000,5ee) @17:(3f0d800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @18:(3f0d000,5ee) @19:(3ecc800,5ee) @1a:(3ecc000,5ee) @1b:(3f3b800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @1c:(3f26800,5ee) @1d:(3f87800,5ee) @1e:(3f68000,5ee) @1f:(3f39800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @20:(3f0a000,5ee) @21:(3f3b000,5ee) @22:(1433b000,5ee) @23:(1433b800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @24:(169c8000,5ee) @25:(169c8800,5ee) @26:(169d9000,5ee) @27:(169d9800,5ee)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: Tx Desc ring with tail=0 Head=19
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @00:(16b0c800,156) @01:(168899ca,36) @02:(16889d14,8) @03:(16889f14,18)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @04:(131e78ca,36) @05:(131e7b14,8) @06:(131e7d14,18) @07:(131e7a36,4e)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @08:(16a98fba,46) @09:(1dcbc000,156) @0a:(18c8b2ca,36) @0b:(18c8b114,8)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @0c:(16a98e14,18) @0d:(18c8b5ba,46) @0e:(18c992ca,36) @0f:(18c99014,8)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @10:(18c99114,18) @11:(16f5e800,156) @12:(1dcbce34,2a) @13:(132c30a0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @14:(132c30a8,0) @15:(132c30b0,0) @16:(132c30b8,0) @17:(132c30c0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @18:(132c30c8,0) @19:(132c30d0,0) @1a:(132c30d8,0) @1b:(132c30e0,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @1c:(132c30e8,0) @1d:(132c30f0,0) @1e:(132c30f8,0) @1f:(132c3100,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @20:(132c3108,0) @21:(132c3110,0) @22:(132c3118,0) @23:(132c3120,0)
Dec 10 17:55:53 aquamacs-MacBook2-2 kernel[0]: @24:(132c3128,0) @25:(132c3130,0) @26:(132c3138,0) @27:(132c3140,0)
Dec 10 17:55:54 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:54 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = b fStHeadIndex=a
Dec 10 17:55:54 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:54 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = c fStHeadIndex=b
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell ERR: timeout handling kIOReturnOutputStall
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: transmit ring 0 .. 21 report=21 done=21
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: handleTxCleanup(count:21 head:21 tail:0)
Dec 10 17:55:55: --- last message repeated 12 times ---
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: clean Tx descriptors:13 fTxTailIndex=21 fTxActiveCount=8
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = d fStHeadIndex=c
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = e fStHeadIndex=d
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 40000000
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = f fStHeadIndex=e
Dec 10 17:55:55 aquamacs-MacBook2-2 kernel[0]: Marvell: setMulticastList
Dec 10 17:55:56: --- last message repeated 1 time ---
Dec 10 17:55:56 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status B0_Y2_SP_EISR = 8
Dec 10 17:55:56 aquamacs-MacBook2-2 kernel[0]: Marvell: interrupt status index = f fStHeadIndex=f
Dec 10 17:56:00 aquamacs-MacBook2-2 kernel[0]: Marvell ERR: timeout handling kIOReturnOutputStall
Dec 10 17:56:00 aquamacs-MacBook2-2 kernel[0]: Marvell: transmit ring 21 .. 78 report=29 done=29
Dec 10 17:56:00 aquamacs-MacBook2-2 kernel[0]: handleTxCleanup(count:65 head:78 tail:21)
Dec 10 17:56:00: --- last message repeated 3 times ---
Dec 10 17:56:00 aquamacs-MacBook2-2 kernel[0]: Marvell: clean Tx descriptors:4 fTxTailIndex=29 fTxActiveCount=61[/codebox]

Hope this is helpful. Sorry that I cannot be of more help, the detail of networking is not my strong point.

#15
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
New problem

Marvell 88E8040 nic doesn't work with sky2 driver



It is linux!!!!!

https://bugs.launchp...ntu/ bug/189982

EDITED:
If anyone wants to help me, please find any working sources Linux, BSD, or other Unix, or Windows or MacOSX.

#16
Yukon Kid

Yukon Kid

    InsanelyMac Protégé

  • Members
  • Pip
  • 17 posts
Slice
Not sure if you have been here for info, maybe it will help.
I copied this from a search I was doing online.
Maybe the links might help you figure out what you need.

"The driver is now on our Foundry27 web site. The new network protocol framework (io-pkt) can be found at the following
link:

http://community.qnx...ects/networking

Please follow the instructions found on this page to download and install the software.

For the Marvell Yukon2 driver, the Experimental driver is devnp-msk.so. This driver object can be found in sys/dev
/msk, and the actual source code is found in sys/dev/pci/if_msk.c.

When you do the build, youll find the denp-msk.so binary under your staging area /x86/lib/dll. It only builds for x86
because this was the only platform we could test it on.

We are looking for feedback in how this driver is working. We would like to be able to make the appropriate updates, if
required, to this driver. Therefore, please let us know how this works for you so thta we may work to provide the most
complete working driver."

#17
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
2 Yukon Kid
It is very interesting for me to discuss a Yukon driver problem with another developers.
The only problem.
I can't check alien OS driver if_msk.c. Moreover, I can't download it because of very complex registration/activity/only_for_developers/...
I create a MacOSX driver which is not the same as FreeBSD driver.

#18
Yukon Kid

Yukon Kid

    InsanelyMac Protégé

  • Members
  • Pip
  • 17 posts
well I didn't try to look at the source myself.

I am sure that your driver is different , but if you look at the freebsd for yukon2 would it help find the thing you are having trouble with?

as I am not trying to write a program, I am only able to offer ideas, and ask questions.

I would like you to be successful.

Keep up the good work.

#19
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow

well I didn't try to look at the source myself.

I am sure that your driver is different , but if you look at the freebsd for yukon2 would it help find the thing you are having trouble with?

as I am not trying to write a program, I am only able to offer ideas, and ask questions.

It is better then nothing.

I don't know why my driver does not working. Needs comparison and thinking.

#20
Slice

Slice

    InsanelyMacaholic

  • Local Moderators
  • 2,973 posts
  • Gender:Male
  • Location:Moscow
New problems.
I took a Linux driver from www.marvell.com and description Yukon_FE+_88E8040.pdf.
What I see
Driver
/* Minimum RAM Buffer Rx Queue Size */
#define SK_MIN_RXQ_SIZE	(((pAC)->GIni.GIYukon2) ? 10 : 16)		/* 10/16 kB */

/* Minimum RAM Buffer Tx Queue Size */
#define SK_MIN_TXQ_SIZE	(((pAC)->GIni.GIYukon2) ? 10 : 16)		/* 10/16 kB */
PDF

MAC / PHY Features
3 KB Receive buffer and 2KB Transmit buffer


Driver
-----------------------------
	case OP_LSOV2:		/* Yukon-Extreme only */						\
PDF

MAC / PHY Features
LSO V2 support

No perfect driver/description.

The big problem for me is to organize a RAM buffer and I don't know what to do with this contradiction.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy