search for: msix_mask_irq

Displaying 20 results from an estimated 21 matches for "msix_mask_irq".

Did you mean: msi_mask_irq
2013 Aug 29
6
[PATCH 2/3 v3] Refactor MSI restore call-chain to drop unnecessary argument
Driver init call graph under baremetal: driver_init-> msix_capability_init-> msix_program_entries-> msix_mask_irq-> entry->masked = 1 request_irq-> __setup_irq-> irq_startup-> unmask_msi_irq-> msix_mask_irq-> entry->masked = 0 So entry->masked is always updated with newest value and i...
2014 Aug 20
1
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
..._mask_irq(struct msi_desc *desc, u32 mask, u32 flag) > +{ > + return default_msi_mask_irq(desc, mask, flag); > +} > + > +void msi_mask_irq(struct msi_desc *desc, u32 mask, u32 flag) > +{ > + desc->masked = arch_msi_mask_irq(desc, mask, flag); > +} > + > +u32 default_msix_mask_irq(struct msi_desc *desc, u32 flag) > +{ > + struct msi_irqs *msi = desc->msi; > + > + if (!msi || !msi->ops || !msi->ops->msix_mask_irq) > + return desc->masked; > + > + return msi->ops->msix_mask_irq(desc, flag); > +} > + > +__weak u32 arch_msix_ma...
2014 Aug 20
1
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
..._mask_irq(struct msi_desc *desc, u32 mask, u32 flag) > +{ > + return default_msi_mask_irq(desc, mask, flag); > +} > + > +void msi_mask_irq(struct msi_desc *desc, u32 mask, u32 flag) > +{ > + desc->masked = arch_msi_mask_irq(desc, mask, flag); > +} > + > +u32 default_msix_mask_irq(struct msi_desc *desc, u32 flag) > +{ > + struct msi_irqs *msi = desc->msi; > + > + if (!msi || !msi->ops || !msi->ops->msix_mask_irq) > + return desc->masked; > + > + return msi->ops->msix_mask_irq(desc, flag); > +} > + > +__weak u32 arch_msix_ma...
2014 Jul 26
0
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...k_irq(desc, mask, flag); +} + +__weak u32 arch_msi_mask_irq(struct msi_desc *desc, u32 mask, u32 flag) +{ + return default_msi_mask_irq(desc, mask, flag); +} + +void msi_mask_irq(struct msi_desc *desc, u32 mask, u32 flag) +{ + desc->masked = arch_msi_mask_irq(desc, mask, flag); +} + +u32 default_msix_mask_irq(struct msi_desc *desc, u32 flag) +{ + struct msi_irqs *msi = desc->msi; + + if (!msi || !msi->ops || !msi->ops->msix_mask_irq) + return desc->masked; + + return msi->ops->msix_mask_irq(desc, flag); +} + +__weak u32 arch_msix_mask_irq(struct msi_desc *desc, u32 flag) +{ + retur...
2014 Jul 26
20
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...I should contain this data struct and allocate it. struct msi_ops { struct msi_desc *(*msi_setup_entry)(struct msi_irqs *msi, struct msi_desc *entry); int msix_setup_entries(struct msi_irqs *msi, struct msix_entry *entries); u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); void (*msi_read_message)(struct msi_desc *desc, struct msi_msg *msg); void (*msi_write_message)(struct msi_desc *desc, struct msi_msg *msg); void (*msi_set_intx)(struct msi_irqs *msi, int enable); }; struct msi_ops provides several hook functions, generic MSI d...
2014 Jul 26
20
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...I should contain this data struct and allocate it. struct msi_ops { struct msi_desc *(*msi_setup_entry)(struct msi_irqs *msi, struct msi_desc *entry); int msix_setup_entries(struct msi_irqs *msi, struct msix_entry *entries); u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); void (*msi_read_message)(struct msi_desc *desc, struct msi_msg *msg); void (*msi_write_message)(struct msi_desc *desc, struct msi_msg *msg); void (*msi_set_intx)(struct msi_irqs *msi, int enable); }; struct msi_ops provides several hook functions, generic MSI d...
2014 Jul 29
0
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...gt; struct msi_ops { > struct msi_desc *(*msi_setup_entry)(struct msi_irqs *msi, struct msi_desc *entry); > int msix_setup_entries(struct msi_irqs *msi, struct msix_entry *entries); > u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); > u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); > void (*msi_read_message)(struct msi_desc *desc, struct msi_msg *msg); > void (*msi_write_message)(struct msi_desc *desc, struct msi_msg *msg); > void (*msi_set_intx)(struct msi_irqs *msi, int enable); > }; > struct msi_ops...
2014 Aug 20
1
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...tore_msi_irqs(dev); > - list_for_each_entry(entry, &dev->msi_list, list) { > + pci_intx_for_msi(msi, 0); > + msi_set_enable(msi, 1, MSIX_TYPE); > + msix_set_all_mask(msi, 1); > + arch_restore_msi_irqs(msi); > + list_for_each_entry(entry, &msi->msi_list, list) > msix_mask_irq(entry, entry->masked); > - } > > - msix_clear_and_set_ctrl(dev, PCI_MSIX_FLAGS_MASKALL, 0); > + msix_set_all_mask(msi, 0); > } > > void pci_restore_msi_state(struct pci_dev *dev) > @@ -516,7 +544,7 @@ static int populate_msi_sysfs(struct pci_dev *pdev) > int coun...
2014 Aug 20
1
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...tore_msi_irqs(dev); > - list_for_each_entry(entry, &dev->msi_list, list) { > + pci_intx_for_msi(msi, 0); > + msi_set_enable(msi, 1, MSIX_TYPE); > + msix_set_all_mask(msi, 1); > + arch_restore_msi_irqs(msi); > + list_for_each_entry(entry, &msi->msi_list, list) > msix_mask_irq(entry, entry->masked); > - } > > - msix_clear_and_set_ctrl(dev, PCI_MSIX_FLAGS_MASKALL, 0); > + msix_set_all_mask(msi, 0); > } > > void pci_restore_msi_state(struct pci_dev *dev) > @@ -516,7 +544,7 @@ static int populate_msi_sysfs(struct pci_dev *pdev) > int coun...
2014 Jul 30
0
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...ruct msi_desc *(*msi_setup_entry)(struct msi_irqs *msi, struct msi_desc *entry); >>>> int msix_setup_entries(struct msi_irqs *msi, struct msix_entry *entries); >>>> u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); >>>> u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); >>>> void (*msi_read_message)(struct msi_desc *desc, struct msi_msg *msg); >>>> void (*msi_write_message)(struct msi_desc *desc, struct msi_msg *msg); >>>> void (*msi_set_intx)(struct msi_irqs *msi, int e...
2014 Jul 26
0
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
..._MSIX_FLAGS_MASKALL); - - arch_restore_msi_irqs(dev); - list_for_each_entry(entry, &dev->msi_list, list) { + pci_intx_for_msi(msi, 0); + msi_set_enable(msi, 1, MSIX_TYPE); + msix_set_all_mask(msi, 1); + arch_restore_msi_irqs(msi); + list_for_each_entry(entry, &msi->msi_list, list) msix_mask_irq(entry, entry->masked); - } - msix_clear_and_set_ctrl(dev, PCI_MSIX_FLAGS_MASKALL, 0); + msix_set_all_mask(msi, 0); } void pci_restore_msi_state(struct pci_dev *dev) @@ -516,7 +544,7 @@ static int populate_msi_sysfs(struct pci_dev *pdev) int count = 0; /* Determine how many msi entrie...
2014 Jul 30
4
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...ps { >> struct msi_desc *(*msi_setup_entry)(struct msi_irqs *msi, struct msi_desc *entry); >> int msix_setup_entries(struct msi_irqs *msi, struct msix_entry *entries); >> u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); >> u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); >> void (*msi_read_message)(struct msi_desc *desc, struct msi_msg *msg); >> void (*msi_write_message)(struct msi_desc *desc, struct msi_msg *msg); >> void (*msi_set_intx)(struct msi_irqs *msi, int enable); >> }; >...
2014 Jul 30
4
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...ps { >> struct msi_desc *(*msi_setup_entry)(struct msi_irqs *msi, struct msi_desc *entry); >> int msix_setup_entries(struct msi_irqs *msi, struct msix_entry *entries); >> u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); >> u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); >> void (*msi_read_message)(struct msi_desc *desc, struct msi_msg *msg); >> void (*msi_write_message)(struct msi_desc *desc, struct msi_msg *msg); >> void (*msi_set_intx)(struct msi_irqs *msi, int enable); >> }; >...
2014 Jul 30
1
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...; struct msi_desc *(*msi_setup_entry)(struct msi_irqs *msi, struct msi_desc *entry); >>> int msix_setup_entries(struct msi_irqs *msi, struct msix_entry *entries); >>> u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); >>> u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); >>> void (*msi_read_message)(struct msi_desc *desc, struct msi_msg *msg); >>> void (*msi_write_message)(struct msi_desc *desc, struct msi_msg *msg); >>> void (*msi_set_intx)(struct msi_irqs *msi, int enable); >...
2014 Jul 30
1
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
...; struct msi_desc *(*msi_setup_entry)(struct msi_irqs *msi, struct msi_desc *entry); >>> int msix_setup_entries(struct msi_irqs *msi, struct msix_entry *entries); >>> u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); >>> u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); >>> void (*msi_read_message)(struct msi_desc *desc, struct msi_msg *msg); >>> void (*msi_write_message)(struct msi_desc *desc, struct msi_msg *msg); >>> void (*msi_set_intx)(struct msi_irqs *msi, int enable); >...
2014 Aug 20
2
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
> -----Original Message----- > From: linux-pci-owner at vger.kernel.org [mailto:linux-pci-owner at vger.kernel.org] > On Behalf Of Yijing Wang > Sent: Wednesday, August 20, 2014 11:59 AM > To: Bhushan Bharat-R65777; Basu Arnab-B45036 > Cc: Xinwei Hu; Wuyun; Bjorn Helgaas; linux-pci at vger.kernel.org; > Paul.Mundt at huawei.com; James E.J. Bottomley; Marc Zyngier; linux-arm-
2014 Aug 20
2
[RFC PATCH 00/11] Refactor MSI to support Non-PCI device
> -----Original Message----- > From: linux-pci-owner at vger.kernel.org [mailto:linux-pci-owner at vger.kernel.org] > On Behalf Of Yijing Wang > Sent: Wednesday, August 20, 2014 11:59 AM > To: Bhushan Bharat-R65777; Basu Arnab-B45036 > Cc: Xinwei Hu; Wuyun; Bjorn Helgaas; linux-pci at vger.kernel.org; > Paul.Mundt at huawei.com; James E.J. Bottomley; Marc Zyngier; linux-arm-
2013 Nov 27
2
[BUG] domU kernel crash at igbvf module loading / __msix_mask_irq
...1 ro rootfstype=ext4 iommu=soft xen-pcifront.verbose_request=1" DomU crash log: [ 71.124852] pcifront pci-0: write dev=0000:00:00.0 - offset 72 size 2 val c00 2 [ 71.124888] BUG: unable to handle kernel paging request at ffffc9000015400c [ 71.124900] IP: [<ffffffff8121ea05>] __msix_mask_irq+0x21/0x24 [ 71.124911] PGD 784a0067 PUD 784a1067 PMD 784a2067 PTE 8010000000000464 [ 71.124919] Oops: 0003 [#1] SMP [ 71.124923] Modules linked in: igbvf(+) [ 71.124929] CPU: 0 PID: 2114 Comm: insmod Not tainted 3.12.1-gentoo-DomU #6 [ 71.124934] task: ffff8800784c3080 ti: ffff880077324...
2014 Aug 20
1
[RFC PATCH 11/11] x86/MSI: Refactor x86 MSI code
...estore_msi_irqs)(struct pci_dev *dev); > + void (*teardown_msi_irqs)(struct msi_irqs *msi); > + void (*restore_msi_irqs)(struct msi_irqs *msi); > int (*setup_hpet_msi)(unsigned int irq, unsigned int id); > u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); > u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); > diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c > index b833042..3cb4a6a 100644 > --- a/arch/x86/kernel/apic/io_apic.c > +++ b/arch/x86/kernel/apic/io_apic.c > @@ -2939,7 +2939,7 @@ void arch_teardown_hwirq(unsigned in...
2014 Aug 20
1
[RFC PATCH 11/11] x86/MSI: Refactor x86 MSI code
...estore_msi_irqs)(struct pci_dev *dev); > + void (*teardown_msi_irqs)(struct msi_irqs *msi); > + void (*restore_msi_irqs)(struct msi_irqs *msi); > int (*setup_hpet_msi)(unsigned int irq, unsigned int id); > u32 (*msi_mask_irq)(struct msi_desc *desc, u32 mask, u32 flag); > u32 (*msix_mask_irq)(struct msi_desc *desc, u32 flag); > diff --git a/arch/x86/kernel/apic/io_apic.c b/arch/x86/kernel/apic/io_apic.c > index b833042..3cb4a6a 100644 > --- a/arch/x86/kernel/apic/io_apic.c > +++ b/arch/x86/kernel/apic/io_apic.c > @@ -2939,7 +2939,7 @@ void arch_teardown_hwirq(unsigned in...