public inbox for linux-i3c@lists.infradead.org
 help / color / mirror / Atom feed
From: Adrian Hunter <adrian.hunter@intel.com>
To: Frank Li <Frank.li@nxp.com>
Cc: <alexandre.belloni@bootlin.com>, <linux-i3c@lists.infradead.org>
Subject: Re: [PATCH V2 06/10] i3c: mipi-i3c-hci-pci: Enable MSI support
Date: Mon, 15 Dec 2025 19:26:55 +0200	[thread overview]
Message-ID: <96366268-572e-4a11-bc94-058d37db2418@intel.com> (raw)
In-Reply-To: <aTxTBmeSBPv25b2I@lizhi-Precision-Tower-5810>

On 12/12/2025 19:38, Frank Li wrote:
> On Thu, Dec 11, 2025 at 06:19:56PM +0200, Adrian Hunter wrote:
>> On 11/12/2025 17:40, Frank Li wrote:
>>> On Thu, Dec 11, 2025 at 03:48:05PM +0200, Adrian Hunter wrote:
>>>> Use pci_alloc_irq_vectors() to support all IRQ types.  Do not call
>>>> pci_free_irq_vectors() because it is unnecessary when the device is
>>>> managed due to the use of pcim_enable_device().
>>>
>>> pcim_enable_device() add action pcim_disable_device(), I have not see
>>> pci_free_irq_vectors() in pcim_disable_device().
>>>
>>> Can you tell me where call pci_free_irq_vectors?
>>
>> pci_alloc_irq_vectors()
>> 	pci_alloc_irq_vectors_affinity()
>> 		__pci_enable_msix_range()
>> 			pci_setup_msi_context()
>> 				pcim_setup_msi_release()
>> 					devm_add_action(pcim_msi_release)
>> 							:
>> 							pci_free_irq_vectors()
>> 		__pci_enable_msi_range()
>> 			pci_setup_msi_context()
> 
> Okay, it should be that pci_alloc_irq_vectors() provide auto free. not
> because pcim_enable_device()?

No, it is conditional on pci_is_managed(dev) which is true if
pcim_enable_device() has been used.

> 
> The below statement should be wrong.
> 
> "Do not call pci_free_irq_vectors() because it is unnecessary when the device is
> managed due to the use of pcim_enable_device()."
> 
> Frank
>>
>>>
>>> And move these small patch ahead in serise.
>>>
>>> Frank
>>>>
>>>> Signed-off-by: Adrian Hunter <adrian.hunter@intel.com>
>>>> ---
>>>>
>>>>
>>>> Changes in V2:
>>>> 	New patch split from "i3c: mipi-i3c-hci-pci: Add support for
>>>> 	Multi-Bus Instances"
>>>>
>>>>
>>>>  drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci-pci.c | 8 ++++++--
>>>>  1 file changed, 6 insertions(+), 2 deletions(-)
>>>>
>>>> diff --git a/drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci-pci.c b/drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci-pci.c
>>>> index 8ade911e3835..0fd3587671e1 100644
>>>> --- a/drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci-pci.c
>>>> +++ b/drivers/i3c/master/mipi-i3c-hci/mipi-i3c-hci-pci.c
>>>> @@ -203,6 +203,10 @@ static int mipi_i3c_hci_pci_probe(struct pci_dev *pci,
>>>>
>>>>  	pci_set_master(pci);
>>>>
>>>> +	ret = pci_alloc_irq_vectors(pci, 1, 1, PCI_IRQ_ALL_TYPES);
>>>> +	if (ret < 0)
>>>> +		return ret;
>>>> +
>>>>  	memset(&res, 0, sizeof(res));
>>>>
>>>>  	res[0].flags = IORESOURCE_MEM;
>>>> @@ -210,8 +214,8 @@ static int mipi_i3c_hci_pci_probe(struct pci_dev *pci,
>>>>  	res[0].end = pci_resource_end(pci, 0);
>>>>
>>>>  	res[1].flags = IORESOURCE_IRQ;
>>>> -	res[1].start = pci->irq;
>>>> -	res[1].end = pci->irq;
>>>> +	res[1].start = pci_irq_vector(hci->pci, 0);
>>>> +	res[1].end = res[1].start;
>>>>
>>>>  	dev_id = ida_alloc(&mipi_i3c_hci_pci_ida, GFP_KERNEL);
>>>>  	if (dev_id < 0)
>>>> --
>>>> 2.51.0
>>>>
>>>>
>>>> --
>>>> linux-i3c mailing list
>>>> linux-i3c@lists.infradead.org
>>>> http://lists.infradead.org/mailman/listinfo/linux-i3c
>>
>>
>> --
>> linux-i3c mailing list
>> linux-i3c@lists.infradead.org
>> http://lists.infradead.org/mailman/listinfo/linux-i3c


-- 
linux-i3c mailing list
linux-i3c@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-i3c

  reply	other threads:[~2025-12-15 17:27 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-11 13:47 [PATCH V2 00/10] i3c: mipi-i3c-hci-pci: Define Multi-Bus Instances for Intel controllers Adrian Hunter
2025-12-11 13:48 ` [PATCH V2 01/10] i3c: mipi-i3c-hci: Remove duplicate blank lines Adrian Hunter
2025-12-11 13:48 ` [PATCH V2 02/10] i3c: mipi-i3c-hci: Stop reading Extended Capabilities if capability ID is 0 Adrian Hunter
2025-12-11 13:48 ` [PATCH V2 03/10] i3c: mipi-i3c-hci: Quieten initialization messages Adrian Hunter
2025-12-11 13:48 ` [PATCH V2 04/10] i3c: mipi-i3c-hci: Allow for Multi-Bus Instances Adrian Hunter
2025-12-11 13:48 ` [PATCH V2 05/10] i3c: mipi-i3c-hci-pci: Do not repeatedly check for NULL driver_data Adrian Hunter
2025-12-11 15:34   ` Frank Li
2025-12-11 13:48 ` [PATCH V2 06/10] i3c: mipi-i3c-hci-pci: Enable MSI support Adrian Hunter
2025-12-11 15:40   ` Frank Li
2025-12-11 16:19     ` Adrian Hunter
2025-12-12 17:38       ` Frank Li
2025-12-15 17:26         ` Adrian Hunter [this message]
2025-12-15 17:44           ` Frank Li
2025-12-15 18:19             ` Adrian Hunter
2025-12-15 19:17               ` Frank Li
2025-12-11 13:48 ` [PATCH V2 07/10] i3c: mipi-i3c-hci-pci: Use parent MMIO mapping Adrian Hunter
2025-12-11 16:00   ` Frank Li
2025-12-11 13:48 ` [PATCH V2 08/10] i3c: mipi-i3c-hci-pci: Convert to MFD driver Adrian Hunter
2025-12-11 16:18   ` Frank Li
2025-12-11 13:48 ` [PATCH V2 09/10] i3c: mipi-i3c-hci-pci: Add support for Multi-Bus Instances Adrian Hunter
2025-12-11 16:44   ` Frank Li
2025-12-12 14:08     ` Adrian Hunter
2025-12-12 17:46       ` Frank Li
2025-12-15 17:37         ` Adrian Hunter
2025-12-15 17:51           ` Frank Li
2025-12-11 13:48 ` [PATCH V2 10/10] i3c: mipi-i3c-hci-pci: Define Multi-Bus Instances for Intel controllers Adrian Hunter
2025-12-11 16:47   ` Frank Li

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=96366268-572e-4a11-bc94-058d37db2418@intel.com \
    --to=adrian.hunter@intel.com \
    --cc=Frank.li@nxp.com \
    --cc=alexandre.belloni@bootlin.com \
    --cc=linux-i3c@lists.infradead.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