lkml.org 
[lkml]   [2007]   [Nov]   [27]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
SubjectRe: [PATCH 1/2] msi: set 'En' bit of MSI Mapping Capability on HT platform
On Sun, 25 Nov 2007 11:21:48 +0800 "peerchen" <peerchen@gmail.com> wrote:

> According to the HyperTransport spec, 'En' indicate if the MSI Mapping is active. So it should be set when enable the MSI.
>
> The patch base on kernel 2.6.24-rc3
>
> Signed-off-by: Andy Currid <acurrid@nvidia.com>
> Signed-off-by: Peer Chen <pchen@nvidia.com>
>
> ---
> --- linux-2.6.24-rc3/drivers/pci/msi.c.orig 2007-11-23 17:28:45.000000000 -0500
> +++ linux-2.6.24-rc3/drivers/pci/msi.c 2007-11-23 17:50:59.000000000 -0500
> @@ -20,6 +20,8 @@
> #include <asm/errno.h>
> #include <asm/io.h>
>
> +#include <asm/k8.h>

This inclusion makes msi.c x86-specific whereas it previously was not. I
assume that this change breaks arm, ia64, sparc64 and powerpc.

I'll queue the below ugliness to avoid this, but it would be nicer to move
these functions out to an arch-specific file and then require that all
MSI-using architectures implement them.

diff -puN drivers/pci/msi.c~msi-set-en-bit-of-msi-mapping-capability-on-ht-platform-fix drivers/pci/msi.c
--- a/drivers/pci/msi.c~msi-set-en-bit-of-msi-mapping-capability-on-ht-platform-fix
+++ a/drivers/pci/msi.c
@@ -20,7 +20,9 @@
#include <asm/errno.h>
#include <asm/io.h>

+#ifdef CONFIG_X86
#include <asm/k8.h>
+#endif

#include "pci.h"
#include "msi.h"
@@ -292,6 +294,7 @@ void pci_restore_msi_state(struct pci_de
}
#endif /* CONFIG_PM */

+#ifdef CONFIG_X86
/*
* pci_enable_msi_ht_cap - Set the HT MSI mapping capability En bit of
* a device.
@@ -384,6 +387,12 @@ static int pci_check_msi_ht_cap(struct p
}
return 0;
}
+#else
+static inline int pci_check_msi_ht_cap(struct pci_dev *dev)
+{
+ return 0;
+}
+#endif

/**
* msi_capability_init - configure device's MSI capability structure
_
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2007-11-27 09:15    [W:0.061 / U:0.272 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site