From: Stephen Rothwell <sfr@canb.auug.org.au>
To: David Miller <davem@davemloft.net>,
Networking <netdev@vger.kernel.org>,
Bjorn Helgaas <bhelgaas@google.com>
Cc: Linux-Next Mailing List <linux-next@vger.kernel.org>,
Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
Christoph Hellwig <hch@lst.de>,
Brian Norris <briannorris@chromium.org>,
Kalle Valo <kvalo@codeaurora.org>
Subject: Re: linux-next: manual merge of the net-next tree with the pci tree
Date: Mon, 3 Jul 2017 11:49:38 +1000 [thread overview]
Message-ID: <20170703114938.2fb359d8@canb.auug.org.au> (raw)
In-Reply-To: <20170621115443.3e10f0bc@canb.auug.org.au>
Hi all,
With the merge window opening, just a reminder that this conflict still
exists.
On Wed, 21 Jun 2017 11:54:43 +1000 Stephen Rothwell <sfr@canb.auug.org.au> wrote:
>
> Today's linux-next merge of the net-next tree got a conflict in:
>
> drivers/net/wireless/marvell/mwifiex/pcie.c
>
> between commit:
>
> c336cc0ee4eb ("PCI: Split ->reset_notify() method into ->reset_prepare() and ->reset_done()")
>
> from the pci tree and commit:
>
> 68efd0386988 ("mwifiex: pcie: stop setting/clearing 'surprise_removed'")
>
> from the net-next tree.
>
> I fixed it up (see below) and can carry the fix as necessary. This
> is now fixed as far as linux-next is concerned, but any non trivial
> conflicts should be mentioned to your upstream maintainer when your tree
> is submitted for merging. You may also want to consider cooperating
> with the maintainer of the conflicting tree to minimise any particularly
> complex conflicts.
>
> --
> Cheers,
> Stephen Rothwell
>
> diff --cc drivers/net/wireless/marvell/mwifiex/pcie.c
> index 279adf124fc9,b53ecf1eddda..000000000000
> --- a/drivers/net/wireless/marvell/mwifiex/pcie.c
> +++ b/drivers/net/wireless/marvell/mwifiex/pcie.c
> @@@ -361,48 -359,35 +361,46 @@@ static void mwifiex_pcie_reset_prepare(
> }
>
> mwifiex_dbg(adapter, INFO,
> - "%s: vendor=0x%4.04x device=0x%4.04x rev=%d %s\n",
> - __func__, pdev->vendor, pdev->device,
> - pdev->revision,
> - prepare ? "Pre-FLR" : "Post-FLR");
> -
> - if (prepare) {
> - /* Kernel would be performing FLR after this notification.
> - * Cleanup all software without cleaning anything related to
> - * PCIe and HW.
> - */
> - mwifiex_shutdown_sw(adapter);
> - clear_bit(MWIFIEX_IFACE_WORK_DEVICE_DUMP, &card->work_flags);
> - clear_bit(MWIFIEX_IFACE_WORK_CARD_RESET, &card->work_flags);
> - } else {
> - /* Kernel stores and restores PCIe function context before and
> - * after performing FLR respectively. Reconfigure the software
> - * and firmware including firmware redownload
> - */
> - ret = mwifiex_reinit_sw(adapter);
> - if (ret) {
> - dev_err(&pdev->dev, "reinit failed: %d\n", ret);
> - return;
> - }
> - }
> + "%s: vendor=0x%4.04x device=0x%4.04x rev=%d Pre-FLR\n",
> + __func__, pdev->vendor, pdev->device, pdev->revision);
> +
> + mwifiex_shutdown_sw(adapter);
> - adapter->surprise_removed = true;
> + clear_bit(MWIFIEX_IFACE_WORK_DEVICE_DUMP, &card->work_flags);
> + clear_bit(MWIFIEX_IFACE_WORK_CARD_RESET, &card->work_flags);
> mwifiex_dbg(adapter, INFO, "%s, successful\n", __func__);
> }
>
> -static const struct pci_error_handlers mwifiex_pcie_err_handler[] = {
> - { .reset_notify = mwifiex_pcie_reset_notify, },
> +/*
> + * Kernel stores and restores PCIe function context before and after performing
> + * FLR respectively. Reconfigure the software and firmware including firmware
> + * redownload.
> + */
> +static void mwifiex_pcie_reset_done(struct pci_dev *pdev)
> +{
> + struct pcie_service_card *card = pci_get_drvdata(pdev);
> + struct mwifiex_adapter *adapter = card->adapter;
> + int ret;
> +
> + if (!adapter) {
> + dev_err(&pdev->dev, "%s: adapter structure is not valid\n",
> + __func__);
> + return;
> + }
> +
> + mwifiex_dbg(adapter, INFO,
> + "%s: vendor=0x%4.04x device=0x%4.04x rev=%d Post-FLR\n",
> + __func__, pdev->vendor, pdev->device, pdev->revision);
> +
> - adapter->surprise_removed = false;
> + ret = mwifiex_reinit_sw(adapter);
> + if (ret)
> + dev_err(&pdev->dev, "reinit failed: %d\n", ret);
> + else
> + mwifiex_dbg(adapter, INFO, "%s, successful\n", __func__);
> +}
> +
> +static const struct pci_error_handlers mwifiex_pcie_err_handler = {
> + .reset_prepare = mwifiex_pcie_reset_prepare,
> + .reset_done = mwifiex_pcie_reset_done,
> };
>
> #ifdef CONFIG_PM_SLEEP
--
Cheers,
Stephen Rothwell
next prev parent reply other threads:[~2017-07-03 1:49 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-21 1:54 linux-next: manual merge of the net-next tree with the pci tree Stephen Rothwell
2017-06-21 13:29 ` Kalle Valo
2017-06-21 13:32 ` Stephen Rothwell
2017-07-03 1:49 ` Stephen Rothwell [this message]
-- strict thread matches above, loose matches on Subject: below --
2019-08-23 2:35 Stephen Rothwell
2018-04-03 3:14 Stephen Rothwell
2018-04-05 1:40 ` Stephen Rothwell
2017-04-12 0:25 Stephen Rothwell
2015-12-14 0:27 Stephen Rothwell
2013-04-26 3:31 Stephen Rothwell
2012-12-10 1:08 Stephen Rothwell
2012-12-10 6:44 ` Grumbach, Emmanuel
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=20170703114938.2fb359d8@canb.auug.org.au \
--to=sfr@canb.auug.org.au \
--cc=bhelgaas@google.com \
--cc=briannorris@chromium.org \
--cc=davem@davemloft.net \
--cc=hch@lst.de \
--cc=kvalo@codeaurora.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-next@vger.kernel.org \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).