search for: pci_msi_en

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