Displaying 20 results from an estimated 24 matches for "msi_irqs".
2014 Aug 20
1
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...>
> +#include <linux/smp.h>
> +#include <linux/errno.h>
> +#include <linux/io.h>
> +#include <linux/slab.h>
> +#include <linux/device.h>
> +#include <linux/pci.h>
> +
> +/* Arch hooks */
> +
> +int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
> +{
> + struct pci_dev *dev = msi->data;
> + struct msi_chip *chip = dev->bus->msi; //TO BE DONE: rework msi_chip to
> support Non-PCI MSI
> + int err;
> +
> + if (!chip || !chip->setup_irq)
> + return -EINVAL;
> +
> + err = c...
2014 Aug 20
1
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...>
> +#include <linux/smp.h>
> +#include <linux/errno.h>
> +#include <linux/io.h>
> +#include <linux/slab.h>
> +#include <linux/device.h>
> +#include <linux/pci.h>
> +
> +/* Arch hooks */
> +
> +int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
> +{
> + struct pci_dev *dev = msi->data;
> + struct msi_chip *chip = dev->bus->msi; //TO BE DONE: rework msi_chip to
> support Non-PCI MSI
> + int err;
> +
> + if (!chip || !chip->setup_irq)
> + return -EINVAL;
> +
> + err = c...
2014 Jul 26
0
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...<linux/proc_fs.h>
+#include <linux/msi.h>
+#include <linux/smp.h>
+#include <linux/errno.h>
+#include <linux/io.h>
+#include <linux/slab.h>
+#include <linux/device.h>
+#include <linux/pci.h>
+
+/* Arch hooks */
+
+int __weak arch_setup_msi_irq(struct msi_irqs *msi, struct msi_desc *desc)
+{
+ struct pci_dev *dev = msi->data;
+ struct msi_chip *chip = dev->bus->msi; //TO BE DONE: rework msi_chip to support Non-PCI MSI
+ int err;
+
+ if (!chip || !chip->setup_irq)
+ return -EINVAL;
+
+ err = chip->setup_irq(chip, dev, desc);
+ if (err <...
2014 Aug 20
1
[RFC PATCH 11/11] x86/MSI: Refactor x86 MSI code
...native_setup_ioapic_entry(int, struct
> IO_APIC_route_entry *,
> struct io_apic_irq_attr *);
> extern void eoi_ioapic_irq(unsigned int irq, struct irq_cfg *cfg);
>
> -extern void native_compose_msi_msg(struct pci_dev *pdev,
> +extern void native_compose_msi_msg(struct msi_irqs *msi,
> unsigned int irq, unsigned int dest,
> struct msi_msg *msg, u8 hpet_id);
> extern void native_eoi_ioapic_pin(int apic, int pin, int vector);
> diff --git a/arch/x86/include/asm/irq_remapping.h
> b/arch/x86/include/asm/irq_remapping.h
> index b7747c4..a1000...
2014 Aug 20
1
[RFC PATCH 11/11] x86/MSI: Refactor x86 MSI code
...native_setup_ioapic_entry(int, struct
> IO_APIC_route_entry *,
> struct io_apic_irq_attr *);
> extern void eoi_ioapic_irq(unsigned int irq, struct irq_cfg *cfg);
>
> -extern void native_compose_msi_msg(struct pci_dev *pdev,
> +extern void native_compose_msi_msg(struct msi_irqs *msi,
> unsigned int irq, unsigned int dest,
> struct msi_msg *msg, u8 hpet_id);
> extern void native_eoi_ioapic_pin(int apic, int pin, int vector);
> diff --git a/arch/x86/include/asm/irq_remapping.h
> b/arch/x86/include/asm/irq_remapping.h
> index b7747c4..a1000...
2014 Jul 26
0
[RFC PATCH 11/11] x86/MSI: Refactor x86 MSI code
...@ -158,7 +158,7 @@ extern int native_setup_ioapic_entry(int, struct IO_APIC_route_entry *,
struct io_apic_irq_attr *);
extern void eoi_ioapic_irq(unsigned int irq, struct irq_cfg *cfg);
-extern void native_compose_msi_msg(struct pci_dev *pdev,
+extern void native_compose_msi_msg(struct msi_irqs *msi,
unsigned int irq, unsigned int dest,
struct msi_msg *msg, u8 hpet_id);
extern void native_eoi_ioapic_pin(int apic, int pin, int vector);
diff --git a/arch/x86/include/asm/irq_remapping.h b/arch/x86/include/asm/irq_remapping.h
index b7747c4..a10003d 100644
--- a/arch/x86/inclu...
2014 Jul 26
20
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...nsolidator.
Consolidator can translate the legacy interrupts connected to it
to MSI/MSI-X. And new non-PCI device will be designed to
support MSI in future. So make the MSI driver code be generic will
help the non-PCI device use MSI more simply.
The new data struct for generic MSI driver.
struct msi_irqs {
u8 msi_enabled:1; /* Enable flag */
u8 msix_enabled:1;
struct list_head msi_list; /* MSI desc list */
void *data; /* help to find the MSI device */
struct msi_ops *ops; /* MSI device specific hook */
};
struct msi_irqs is used to manage MSI related informations. Every device supports
MSI sho...
2014 Jul 26
20
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...nsolidator.
Consolidator can translate the legacy interrupts connected to it
to MSI/MSI-X. And new non-PCI device will be designed to
support MSI in future. So make the MSI driver code be generic will
help the non-PCI device use MSI more simply.
The new data struct for generic MSI driver.
struct msi_irqs {
u8 msi_enabled:1; /* Enable flag */
u8 msix_enabled:1;
struct list_head msi_list; /* MSI desc list */
void *data; /* help to find the MSI device */
struct msi_ops *ops; /* MSI device specific hook */
};
struct msi_irqs is used to manage MSI related informations. Every device supports
MSI sho...
2014 Aug 20
1
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...ts.infradead.org; Russell King; linux-arch at vger.kernel.org; Basu
> Arnab-B45036; virtualization at lists.linux-foundation.org; Hanjun Guo; Yijing Wang
> Subject: [RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
>
> Use struct msi_ops to hook PCI MSI operations,
> and use struct msi_irqs to refactor PCI MSI drvier.
>
> Signed-off-by: Yijing Wang <wangyijing at huawei.com>
> ---
> drivers/pci/msi.c | 351 ++++++++++++++++++++++++++++++---------------------
> include/linux/msi.h | 14 +-
> include/linux/pci.h | 11 +-
> 3 files changed, 222 inserti...
2014 Aug 20
1
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...ts.infradead.org; Russell King; linux-arch at vger.kernel.org; Basu
> Arnab-B45036; virtualization at lists.linux-foundation.org; Hanjun Guo; Yijing Wang
> Subject: [RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
>
> Use struct msi_ops to hook PCI MSI operations,
> and use struct msi_irqs to refactor PCI MSI drvier.
>
> Signed-off-by: Yijing Wang <wangyijing at huawei.com>
> ---
> drivers/pci/msi.c | 351 ++++++++++++++++++++++++++++++---------------------
> include/linux/msi.h | 14 +-
> include/linux/pci.h | 11 +-
> 3 files changed, 222 inserti...
2014 Jul 26
0
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
Use struct msi_ops to hook PCI MSI operations,
and use struct msi_irqs to refactor PCI MSI drvier.
Signed-off-by: Yijing Wang <wangyijing at huawei.com>
---
drivers/pci/msi.c | 351 ++++++++++++++++++++++++++++++---------------------
include/linux/msi.h | 14 +-
include/linux/pci.h | 11 +-
3 files changed, 222 insertions(+), 154 deletions(-)
diff --gi...
2014 Jul 29
0
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...ranslate the legacy interrupts connected to it
> to MSI/MSI-X. And new non-PCI device will be designed to
> support MSI in future. So make the MSI driver code be generic will
> help the non-PCI device use MSI more simply.
>
> The new data struct for generic MSI driver.
> struct msi_irqs {
> u8 msi_enabled:1; /* Enable flag */
> u8 msix_enabled:1;
> struct list_head msi_list; /* MSI desc list */
> void *data; /* help to find the MSI device */
> struct msi_ops *ops; /* MSI device specific hook */
> };
> struct msi_irqs...
2014 Jul 30
4
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...errupts connected to it
>> to MSI/MSI-X. And new non-PCI device will be designed to
>> support MSI in future. So make the MSI driver code be generic will
>> help the non-PCI device use MSI more simply.
>>
>> The new data struct for generic MSI driver.
>> struct msi_irqs {
>> u8 msi_enabled:1; /* Enable flag */
>> u8 msix_enabled:1;
>> struct list_head msi_list; /* MSI desc list */
>> void *data; /* help to find the MSI device */
>> struct msi_ops *ops; /* MSI device specific hook */
>>...
2014 Jul 30
4
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...errupts connected to it
>> to MSI/MSI-X. And new non-PCI device will be designed to
>> support MSI in future. So make the MSI driver code be generic will
>> help the non-PCI device use MSI more simply.
>>
>> The new data struct for generic MSI driver.
>> struct msi_irqs {
>> u8 msi_enabled:1; /* Enable flag */
>> u8 msix_enabled:1;
>> struct list_head msi_list; /* MSI desc list */
>> void *data; /* help to find the MSI device */
>> struct msi_ops *ops; /* MSI device specific hook */
>>...
2014 Jul 30
0
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...MSI-X. And new non-PCI device will be designed to
>>>> support MSI in future. So make the MSI driver code be generic will
>>>> help the non-PCI device use MSI more simply.
>>>>
>>>> The new data struct for generic MSI driver.
>>>> struct msi_irqs {
>>>> u8 msi_enabled:1; /* Enable flag */
>>>> u8 msix_enabled:1;
>>>> struct list_head msi_list; /* MSI desc list */
>>>> void *data; /* help to find the MSI device */
>>>> struct msi_ops *ops;...
2014 Aug 05
1
[RFC PATCH 03/11] PCI/MSI: Refactor pci_dev_msi_enabled()
On Fri, Jul 25, 2014 at 10:08 PM, Yijing Wang <wangyijing at huawei.com> wrote:
> Pci_dev_msi_enabled() is used to check whether device
> MSI/MSIX enabled. Refactor this function to suuport
> checking only device MSI or MSIX enabled.
>
> Signed-off-by: Yijing Wang <wangyijing at huawei.com>
So this patch refactors things so that checks like this:
> - if
2014 Aug 05
1
[RFC PATCH 03/11] PCI/MSI: Refactor pci_dev_msi_enabled()
On Fri, Jul 25, 2014 at 10:08 PM, Yijing Wang <wangyijing at huawei.com> wrote:
> Pci_dev_msi_enabled() is used to check whether device
> MSI/MSIX enabled. Refactor this function to suuport
> checking only device MSI or MSIX enabled.
>
> Signed-off-by: Yijing Wang <wangyijing at huawei.com>
So this patch refactors things so that checks like this:
> - if
2014 Jul 30
1
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...>>> to MSI/MSI-X. And new non-PCI device will be designed to
>>> support MSI in future. So make the MSI driver code be generic will
>>> help the non-PCI device use MSI more simply.
>>>
>>> The new data struct for generic MSI driver.
>>> struct msi_irqs {
>>> u8 msi_enabled:1; /* Enable flag */
>>> u8 msix_enabled:1;
>>> struct list_head msi_list; /* MSI desc list */
>>> void *data; /* help to find the MSI device */
>>> struct msi_ops *ops; /* MSI device speci...
2014 Jul 30
1
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...>>> to MSI/MSI-X. And new non-PCI device will be designed to
>>> support MSI in future. So make the MSI driver code be generic will
>>> help the non-PCI device use MSI more simply.
>>>
>>> The new data struct for generic MSI driver.
>>> struct msi_irqs {
>>> u8 msi_enabled:1; /* Enable flag */
>>> u8 msix_enabled:1;
>>> struct list_head msi_list; /* MSI desc list */
>>> void *data; /* help to find the MSI device */
>>> struct msi_ops *ops; /* MSI device speci...
2014 Aug 01
0
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
On Wednesday 30 July 2014, Yijing Wang wrote:
> On 2014/7/29 22:08, Arnd Bergmann wrote:
> > On Saturday 26 July 2014 11:08:37 Yijing Wang wrote:
> >>
> >> The new data struct for generic MSI driver.
> >> struct msi_irqs {
> >> u8 msi_enabled:1; /* Enable flag */
> >> u8 msix_enabled:1;
> >> struct list_head msi_list; /* MSI desc list */
> >> void *data; /* help to find the MSI device */
> >> struct msi_ops *ops; /* MSI device...