All of lore.kernel.org
 help / color / mirror / Atom feed
From: Laurent Bigonville <bigon@bigon.be>
To: netdev@vger.kernel.org
Subject: Re: [sky2 driver] 88E8056 PCI-E Gigabit Ethernet Controller not working after suspend
Date: Wed, 5 Dec 2018 02:07:10 +0100	[thread overview]
Message-ID: <fd22832c-9dd8-7667-ff5d-075d5fdbec78@bigon.be> (raw)
In-Reply-To: <aee0afc3-d1d8-4c3c-94db-c9910798ce38@bigon.be>

Le 30/11/18 à 12:16, Laurent Bigonville a écrit :
> Le 10/10/18 à 21:09, Stephen Hemminger a écrit :
>> On Wed, 10 Oct 2018 03:16:40 +0200
>> Laurent Bigonville <bigon@bigon.be> wrote:
>>
>>> Le 9/10/18 à 22:09, Stephen Hemminger a écrit :
>>>> On Tue, 9 Oct 2018 19:30:30 +0200
>>>> Laurent Bigonville <bigon@bigon.be> wrote:
>>>>> Hello,
>>>>>
>>>>> On my desktop (Asus MB with dual Ethernet port), when waking up after
>>>>> suspend, the network card is not detecting the link.
>>>>>
>>>>> I have to rmmod the sky2 driver and then modprobing it again.
>>>>>
>>>>> lspci shows me:
>>>>>
>>>>> 04:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 
>>>>> PCI-E
>>>>> Gigabit Ethernet Controller (rev 12)
>>>>> 05:00.0 Ethernet controller: Marvell Technology Group Ltd. 88E8056 
>>>>> PCI-E
>>>>> Gigabit Ethernet Controller (rev 12)
>>>>>
>>>>> An idea what's wrong here?
>>>>>
>>>>> Kind regards,
>>>>>
>>>>> Laurent Bigonville
>>>> I used to have that motherboard (about 8 years ago). Long dead by now.
>>>>
>>>> There was some issue with how the power management worked. Forgot 
>>>> the workaround,
>>>> you might have to dig in the mailing list archive.
>>> I've made some test and it seems that this was working in 4.14 and then
>>> broken in 4.15 (using the debian kernel pkg), so it was working not 
>>> that
>>> long ago:
>>>
>>> The only commit I see to the sky2 driver is the following:
>>>
>>> commit e99e88a9d2b067465adaa9c111ada99a041bef9a
>>> Author: Kees Cook <keescook@chromium.org>
>>> Date:   Mon Oct 16 14:43:17 2017 -0700
>>>
>>>       treewide: setup_timer() -> timer_setup()
>>>
>>>       This converts all remaining cases of the old setup_timer() API 
>>> into
>>> using
>>>       timer_setup(), where the callback argument is the structure 
>>> already
>>>       holding the struct timer_list. These should have no behavioral 
>>> changes,
>>>       since they just change which pointer is passed into the 
>>> callback with
>>>       the same available pointers after conversion. It handles the 
>>> following
>>>       examples, in addition to some other variations.
>>>
>>>
>> Probably something in PCI power management could.
>
> I can still reproduce this in 4.19, any could have a look at this? Or 
> any other pointer I can look at?
>
> After the suspend, the interface shows the following:
>
> 6: enp5s0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc 
> pfifo_fast state DOWN mode DEFAULT group default qlen 1000
>     link/ether 00:26:18:XX:XX:XX brd ff:ff:ff:ff:ff:ff
>
> But the link led on the port is on (and the activity led is blinking), 
> so that would say that the interface is powered(?)

I've investigated a bit more and passing disable_msi=1 to the driver 
fixes this issue, the card is operational after suspend now. The module 
is still using pci_enable_msi() which seems deprecated, not sure that's 
relevant.

If I can trust the logs, I'm seeing quite some changes related to MSI 
between v4.14 and v4.15

      reply	other threads:[~2018-12-05  1:07 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-10-09 17:30 [sky2 driver] 88E8056 PCI-E Gigabit Ethernet Controller not working after suspend Laurent Bigonville
2018-10-09 20:09 ` Stephen Hemminger
2018-10-10  1:16   ` Laurent Bigonville
2018-10-10 19:09     ` Stephen Hemminger
2018-11-30 11:16       ` Laurent Bigonville
2018-12-05  1:07         ` Laurent Bigonville [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=fd22832c-9dd8-7667-ff5d-075d5fdbec78@bigon.be \
    --to=bigon@bigon.be \
    --cc=netdev@vger.kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.