All of lore.kernel.org
 help / color / mirror / Atom feed
From: divakar <divakar.chitturi@hpe.com>
To: linux-hotplug@vger.kernel.org
Subject: Re: Assign BAR address for pci device after hotplug
Date: Tue, 09 Aug 2016 17:00:22 +0000	[thread overview]
Message-ID: <6546287.A3zTfYYbsh@div_linux> (raw)
In-Reply-To: <AT5PR84MB0177723391A9CA3EAEE43C0088050@AT5PR84MB0177.NAMPRD84.PROD.OUTLOOK.COM>

Hi ,

The modified probe function was the one with the pci_reassign_resource 
function. 

modified_my_driver_probe:
static int my_probe(struct pci_dev *pdev, const struct pci_device_id 
*id)
{
 
        /* Enable hotplug support
           TODO: Check if this is right way to do it */
        if( pci_resource_start (pdev,0) <= 0) {
                ret = pci_assign_resource(pdev,0);
                if( 0 > ret) {
                        dev_err(&pdev->dev, " Failed to assign resource 
\n");
                        return ret;
                }
        }

        ret = pci_enable_device(pdev);

}

Thanks for your comments on the hardware. I hope my previous message 
with the output log snippets came through. My observation of the events 
happening seem to suggest there is a hotplug controller as i can see the 
difference between with and without enabling "pciehp". Also 
pci_resource_start in the probe function of the endpoint device driver 
seem to work. Hence my persistence in understanding the behavior. 

Thanks 


On Tuesday, August 09, 2016 02:49:39 AM Greg KH wrote:
> On Mon, Aug 08, 2016 at 05:32:42PM -0700, divakar wrote:
> > Hi Greg,
> > 
> > Thanks for your comments. I managed to install a client which will
> > do
> > the auto format. Hopefully this is better than before. Please find
> > my
> > responses inline. Also added extra questions and information about
> > the setup.
> > 
> > Questions:
> > 1. Since the modified_my_driver_probe is working, is that the
> > recommended way of doing it? I couldn't find any sample drivers
> > using it. So wanted your guidance
> 
> I dont understand, what "modified" probe function?
> 
> > 2. There is no hotplug controller as far is know off in the setup (
> > assuming native x86 soc has root port which has inbuilt hp
> > controller
> > and pcieport driver takes care of it). Am i missing something?
> 
> Then your hardware does not support PCI hotplug, so I don't recommend
> trying to use it.
> 
> Seriously, this is a hardware and BIOS requirement to support this, if
> you don't have that hardware, you can't really work around it in the
> kernel.  Go buy some real hardware for this please.
> 
> > 3. When card 2 is inserted there is no hotplug event. Not sure why.
> 
> Why would there be?  You don't have hardware that notices this.
> 
> good luck,
> 
> greg k-h


  parent reply	other threads:[~2016-08-09 17:00 UTC|newest]

Thread overview: 12+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-08-02 21:11 Assign BAR address for pci device after hotplug Chitturi, Divakar
2016-08-03  5:12 ` Greg KH
2016-08-04 17:09 ` Chitturi, Divakar
2016-08-05 10:53 ` Greg KH
2016-08-09  0:32 ` divakar
2016-08-09  0:49 ` Greg KH
2016-08-09 17:00 ` divakar [this message]
2016-08-09 17:18 ` Greg KH
2016-08-09 18:48 ` divakar
2016-08-09 18:59 ` Greg KH
2016-08-10  0:26 ` divakar
2016-08-10  8:47 ` Greg KH

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=6546287.A3zTfYYbsh@div_linux \
    --to=divakar.chitturi@hpe.com \
    --cc=linux-hotplug@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.