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...