Displaying 8 results from an estimated 8 matches for "msi_attrs".
Did you mean:
msi_attrib
2014 Jul 26
0
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...->msi_cap;
u16 msgctl;
@@ -357,14 +380,34 @@ void write_msi_msg(unsigned int irq, struct msi_msg *msg)
__write_msi_msg(entry, msg);
}
-static void free_msi_irqs(struct pci_dev *dev)
+static void free_msi_sysfs(struct pci_dev *dev)
{
- struct msi_desc *entry, *tmp;
struct attribute **msi_attrs;
struct device_attribute *dev_attr;
int count = 0;
- list_for_each_entry(entry, &dev->msi_list, list) {
+ if (dev->msi_irq_groups) {
+ sysfs_remove_groups(&dev->dev.kobj, dev->msi_irq_groups);
+ msi_attrs = dev->msi_irq_groups[0]->attrs;
+ while (msi_attrs[count])...
2014 Aug 20
1
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...14 +380,34 @@ void write_msi_msg(unsigned int irq, struct msi_msg *msg)
> __write_msi_msg(entry, msg);
> }
>
> -static void free_msi_irqs(struct pci_dev *dev)
> +static void free_msi_sysfs(struct pci_dev *dev)
> {
> - struct msi_desc *entry, *tmp;
> struct attribute **msi_attrs;
> struct device_attribute *dev_attr;
> int count = 0;
>
> - list_for_each_entry(entry, &dev->msi_list, list) {
> + if (dev->msi_irq_groups) {
> + sysfs_remove_groups(&dev->dev.kobj, dev->msi_irq_groups);
> + msi_attrs = dev->msi_irq_groups[0]->...
2014 Aug 20
1
[RFC PATCH 09/11] PCI/MSI: refactor PCI MSI driver
...14 +380,34 @@ void write_msi_msg(unsigned int irq, struct msi_msg *msg)
> __write_msi_msg(entry, msg);
> }
>
> -static void free_msi_irqs(struct pci_dev *dev)
> +static void free_msi_sysfs(struct pci_dev *dev)
> {
> - struct msi_desc *entry, *tmp;
> struct attribute **msi_attrs;
> struct device_attribute *dev_attr;
> int count = 0;
>
> - list_for_each_entry(entry, &dev->msi_list, list) {
> + if (dev->msi_irq_groups) {
> + sysfs_remove_groups(&dev->dev.kobj, dev->msi_irq_groups);
> + msi_attrs = dev->msi_irq_groups[0]->...
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 Aug 20
1
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...;msg = *msg;
> }
>
> -void write_msi_msg(unsigned int irq, struct msi_msg *msg)
> -{
> - struct msi_desc *entry = irq_get_msi_desc(irq);
> -
> - __write_msi_msg(entry, msg);
> -}
> -
> static void free_msi_sysfs(struct pci_dev *dev)
> {
> struct attribute **msi_attrs;
> @@ -403,58 +199,6 @@ static void free_msi_sysfs(struct pci_dev *dev)
> }
> }
>
> -static void free_msi_irqs(struct msi_irqs *msi)
> -{
> - struct msi_desc *entry, *tmp;
> -
> - list_for_each_entry(entry, &msi->msi_list, list) {
> - int i, nvec;
> - i...
2014 Aug 20
1
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...;msg = *msg;
> }
>
> -void write_msi_msg(unsigned int irq, struct msi_msg *msg)
> -{
> - struct msi_desc *entry = irq_get_msi_desc(irq);
> -
> - __write_msi_msg(entry, msg);
> -}
> -
> static void free_msi_sysfs(struct pci_dev *dev)
> {
> struct attribute **msi_attrs;
> @@ -403,58 +199,6 @@ static void free_msi_sysfs(struct pci_dev *dev)
> }
> }
>
> -static void free_msi_irqs(struct msi_irqs *msi)
> -{
> - struct msi_desc *entry, *tmp;
> -
> - list_for_each_entry(entry, &msi->msi_list, list) {
> - int i, nvec;
> - i...
2014 Jul 26
0
[RFC PATCH 10/11] PCI/MSI: Split the generic MSI code into new file
...sg(struct msi_desc *entry, struct msi_msg *msg)
entry->msg = *msg;
}
-void write_msi_msg(unsigned int irq, struct msi_msg *msg)
-{
- struct msi_desc *entry = irq_get_msi_desc(irq);
-
- __write_msi_msg(entry, msg);
-}
-
static void free_msi_sysfs(struct pci_dev *dev)
{
struct attribute **msi_attrs;
@@ -403,58 +199,6 @@ static void free_msi_sysfs(struct pci_dev *dev)
}
}
-static void free_msi_irqs(struct msi_irqs *msi)
-{
- struct msi_desc *entry, *tmp;
-
- list_for_each_entry(entry, &msi->msi_list, list) {
- int i, nvec;
- if (!entry->irq)
- continue;
- if (entry->nvec...