Displaying 17 results from an estimated 17 matches for "pci_msi_en".
2014 Aug 20
1
[RFC PATCH 03/11] PCI/MSI: Refactor pci_dev_msi_enabled()
...esc *entry;
>
> - if (!dev->msi_enabled)
> + if (!pci_dev_msi_enabled(dev, MSI_TYPE))
> return;
>
> entry = irq_get_msi_desc(dev->irq);
> @@ -878,7 +878,8 @@ void pci_msi_shutdown(struct pci_dev *dev)
> struct msi_desc *desc;
> u32 mask;
>
> - if (!pci_msi_enable || !dev || !dev->msi_enabled)
> + if (!pci_msi_enable || !dev ||
> + !pci_dev_msi_enabled(dev, MSI_TYPE))
> return;
>
> BUG_ON(list_empty(&dev->msi_list));
> @@ -899,7 +900,8 @@ void pci_msi_shutdown(struct pci_dev *dev)
>
> void pci_disable_msi(struc...
2014 Aug 20
1
[RFC PATCH 03/11] PCI/MSI: Refactor pci_dev_msi_enabled()
...esc *entry;
>
> - if (!dev->msi_enabled)
> + if (!pci_dev_msi_enabled(dev, MSI_TYPE))
> return;
>
> entry = irq_get_msi_desc(dev->irq);
> @@ -878,7 +878,8 @@ void pci_msi_shutdown(struct pci_dev *dev)
> struct msi_desc *desc;
> u32 mask;
>
> - if (!pci_msi_enable || !dev || !dev->msi_enabled)
> + if (!pci_msi_enable || !dev ||
> + !pci_dev_msi_enabled(dev, MSI_TYPE))
> return;
>
> BUG_ON(list_empty(&dev->msi_list));
> @@ -899,7 +900,8 @@ void pci_msi_shutdown(struct pci_dev *dev)
>
> void pci_disable_msi(struc...
2014 Jul 26
0
[RFC PATCH 03/11] PCI/MSI: Refactor pci_dev_msi_enabled()
...e(struct pci_dev *dev)
u16 control;
struct msi_desc *entry;
- if (!dev->msi_enabled)
+ if (!pci_dev_msi_enabled(dev, MSI_TYPE))
return;
entry = irq_get_msi_desc(dev->irq);
@@ -878,7 +878,8 @@ void pci_msi_shutdown(struct pci_dev *dev)
struct msi_desc *desc;
u32 mask;
- if (!pci_msi_enable || !dev || !dev->msi_enabled)
+ if (!pci_msi_enable || !dev ||
+ !pci_dev_msi_enabled(dev, MSI_TYPE))
return;
BUG_ON(list_empty(&dev->msi_list));
@@ -899,7 +900,8 @@ void pci_msi_shutdown(struct pci_dev *dev)
void pci_disable_msi(struct pci_dev *dev)
{
- if (!pci_msi_ena...
2014 Aug 20
1
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...msi.h | 14 +-
> include/linux/pci.h | 11 +-
> 3 files changed, 222 insertions(+), 154 deletions(-)
>
> diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
> index 41c33da..f0c5989 100644
> --- a/drivers/pci/msi.c
> +++ b/drivers/pci/msi.c
> @@ -29,8 +29,9 @@ static int pci_msi_enable = 1;
>
> /* Arch hooks */
>
> -int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc)
> +int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
> {
> + struct pci_dev *dev = msi->data; //TO BE DONE: rework msi_chip to support
&g...
2014 Aug 20
1
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...msi.h | 14 +-
> include/linux/pci.h | 11 +-
> 3 files changed, 222 insertions(+), 154 deletions(-)
>
> diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
> index 41c33da..f0c5989 100644
> --- a/drivers/pci/msi.c
> +++ b/drivers/pci/msi.c
> @@ -29,8 +29,9 @@ static int pci_msi_enable = 1;
>
> /* Arch hooks */
>
> -int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc)
> +int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
> {
> + struct pci_dev *dev = msi->data; //TO BE DONE: rework msi_chip to support
&g...
2014 Aug 20
1
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...enerate an interrupt using an inbound Memory Write on its
> PCI bus instead of asserting a device IRQ pin.
> diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
> index f0c5989..df7223c 100644
> --- a/drivers/pci/msi.c
> +++ b/drivers/pci/msi.c
> @@ -26,121 +26,8 @@ static int pci_msi_enable = 1;
>
> #define msix_table_size(flags) ((flags & PCI_MSIX_FLAGS_QSIZE) + 1)
>
> -
> -/* Arch hooks */
> -
> -int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
> -{
> - struct pci_dev *dev = msi->data; //TO BE DONE: rework msi_chip t...
2014 Aug 20
1
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...enerate an interrupt using an inbound Memory Write on its
> PCI bus instead of asserting a device IRQ pin.
> diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
> index f0c5989..df7223c 100644
> --- a/drivers/pci/msi.c
> +++ b/drivers/pci/msi.c
> @@ -26,121 +26,8 @@ static int pci_msi_enable = 1;
>
> #define msix_table_size(flags) ((flags & PCI_MSIX_FLAGS_QSIZE) + 1)
>
> -
> -/* Arch hooks */
> -
> -int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
> -{
> - struct pci_dev *dev = msi->data; //TO BE DONE: rework msi_chip t...
2014 Jul 04
1
How to check for proper MSI support?
...to not
>>>> having debugged it that far). How do I, as a nouveau driver developer,
>>>> know not to call pci_enable_msi? Or alternatively how can
>>>> pci_enable_msi be taught not to succeed in this case?
>>>
>>> You can set bus_flags or global pci_msi_enable flag by add quirk function.
>>> You can refer to examples in drivers/pci/quirk.c
>>>
>>> Linux support some broken chipsets or devices to disable msi during device initialization by add quirk.
>>
>> So let me get this straight -- you're suggesting I ad...
2014 Jul 26
0
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...+++---------------------
include/linux/msi.h | 14 +-
include/linux/pci.h | 11 +-
3 files changed, 222 insertions(+), 154 deletions(-)
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
index 41c33da..f0c5989 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
@@ -29,8 +29,9 @@ static int pci_msi_enable = 1;
/* Arch hooks */
-int __weak arch_setup_msi_irq(struct pci_dev *dev, struct msi_desc *desc)
+int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
{
+ struct pci_dev *dev = msi->data; //TO BE DONE: rework msi_chip to support Non-PCI
struct msi_chip *chip = d...
2014 Jul 26
0
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...upts enable a device to
generate an interrupt using an inbound Memory Write on its
PCI bus instead of asserting a device IRQ pin.
diff --git a/drivers/pci/msi.c b/drivers/pci/msi.c
index f0c5989..df7223c 100644
--- a/drivers/pci/msi.c
+++ b/drivers/pci/msi.c
@@ -26,121 +26,8 @@ static int pci_msi_enable = 1;
#define msix_table_size(flags) ((flags & PCI_MSIX_FLAGS_QSIZE) + 1)
-
-/* Arch hooks */
-
-int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
-{
- struct pci_dev *dev = msi->data; //TO BE DONE: rework msi_chip to support Non-PCI
- struct msi_chip *chip =...
2014 Jul 26
20
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
Hi all,
The series is a draft of generic MSI driver that supports PCI
and Non-PCI device which have MSI capability. If you're not interested
it, sorry for the noise.
The series is based on Linux-3.16-rc1.
MSI was introduced in PCI Spec 2.2. Currently, kernel MSI
driver codes are bonding with PCI device. Because MSI has a lot
advantages in design. More and more non-PCI devices want to
use
2014 Jul 26
20
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
Hi all,
The series is a draft of generic MSI driver that supports PCI
and Non-PCI device which have MSI capability. If you're not interested
it, sorry for the noise.
The series is based on Linux-3.16-rc1.
MSI was introduced in PCI Spec 2.2. Currently, kernel MSI
driver codes are bonding with PCI device. Because MSI has a lot
advantages in design. More and more non-PCI devices want to
use
2014 Jul 04
4
How to check for proper MSI support?
...of interrupt delivery, although I admit to not
>> having debugged it that far). How do I, as a nouveau driver developer,
>> know not to call pci_enable_msi? Or alternatively how can
>> pci_enable_msi be taught not to succeed in this case?
>
> You can set bus_flags or global pci_msi_enable flag by add quirk function.
> You can refer to examples in drivers/pci/quirk.c
>
> Linux support some broken chipsets or devices to disable msi during device initialization by add quirk.
So let me get this straight -- you're suggesting I add a quirk for
every PCI chipset that does...
2014 Jul 04
0
How to check for proper MSI support?
...>> having debugged it that far). How do I, as a nouveau driver developer,
>>>>> know not to call pci_enable_msi? Or alternatively how can
>>>>> pci_enable_msi be taught not to succeed in this case?
>>>>
>>>> You can set bus_flags or global pci_msi_enable flag by add quirk function.
>>>> You can refer to examples in drivers/pci/quirk.c
>>>>
>>>> Linux support some broken chipsets or devices to disable msi during device initialization by add quirk.
>>>
>>> So let me get this straight -- you...
2014 Jul 04
0
How to check for proper MSI support?
...ry, although I admit to not
>>> having debugged it that far). How do I, as a nouveau driver developer,
>>> know not to call pci_enable_msi? Or alternatively how can
>>> pci_enable_msi be taught not to succeed in this case?
>>
>> You can set bus_flags or global pci_msi_enable flag by add quirk function.
>> You can refer to examples in drivers/pci/quirk.c
>>
>> Linux support some broken chipsets or devices to disable msi during device initialization by add quirk.
>
> So let me get this straight -- you're suggesting I add a quirk for
>...
2014 Jul 04
2
How to check for proper MSI support?
On Thu, Jul 3, 2014 at 11:09 PM, Yijing Wang <wangyijing at huawei.com> wrote:
> On 2014/7/4 10:43, Ilia Mirkin wrote:
>> On Thu, Jul 3, 2014 at 10:35 PM, Yijing Wang <wangyijing at huawei.com> wrote:
>>> Hi Brian,
>>> From your 01:00.0 VGA compatible controller PCI config register, it supports 1 MSI vector, so I think this
>>> card has no
2014 Jul 04
0
How to check for proper MSI support?
...resumably due to lack of interrupt delivery, although I admit to not
> having debugged it that far). How do I, as a nouveau driver developer,
> know not to call pci_enable_msi? Or alternatively how can
> pci_enable_msi be taught not to succeed in this case?
You can set bus_flags or global pci_msi_enable flag by add quirk function.
You can refer to examples in drivers/pci/quirk.c
Linux support some broken chipsets or devices to disable msi during device initialization by add quirk.
>
> Thanks,
>
> -ilia
>
> .
>
--
Thanks!
Yijing