2010-03-02 01:46:54 +01:00
|
|
|
--- 2009-11-09.orig/unmodified_drivers/linux-2.6/platform-pci/evtchn.c 2008-10-14 19:44:11.000000000 +0200
|
|
|
|
+++ 2009-11-09/unmodified_drivers/linux-2.6/platform-pci/evtchn.c 2009-11-24 17:38:08.000000000 +0100
|
2010-01-16 01:12:54 +01:00
|
|
|
@@ -40,7 +40,9 @@
|
|
|
|
#include <xen/platform-compat.h>
|
|
|
|
#endif
|
|
|
|
|
|
|
|
+#ifndef shared_info_area
|
|
|
|
void *shared_info_area;
|
|
|
|
+#endif
|
|
|
|
|
|
|
|
#define is_valid_evtchn(x) ((x) != 0)
|
|
|
|
#define evtchn_from_irq(x) (irq_evtchn[irq].evtchn)
|
2010-03-02 01:46:54 +01:00
|
|
|
--- 2009-11-09.orig/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c 2009-02-24 20:09:53.000000000 +0100
|
|
|
|
+++ 2009-11-09/unmodified_drivers/linux-2.6/platform-pci/platform-pci.c 2009-11-24 17:45:02.000000000 +0100
|
|
|
|
@@ -70,7 +70,6 @@ static uint64_t callback_via;
|
2010-01-16 01:12:54 +01:00
|
|
|
static int __devinit init_xen_info(void)
|
|
|
|
{
|
|
|
|
struct xen_add_to_physmap xatp;
|
|
|
|
- extern void *shared_info_area;
|
|
|
|
|
|
|
|
#ifdef __ia64__
|
|
|
|
xencomm_initialize();
|
2010-03-02 01:46:54 +01:00
|
|
|
@@ -78,6 +77,7 @@ static int __devinit init_xen_info(void)
|
2010-01-16 01:12:54 +01:00
|
|
|
|
|
|
|
setup_xen_features();
|
|
|
|
|
|
|
|
+#ifndef shared_info_area
|
|
|
|
shared_info_frame = alloc_xen_mmio(PAGE_SIZE) >> PAGE_SHIFT;
|
|
|
|
xatp.domid = DOMID_SELF;
|
|
|
|
xatp.idx = 0;
|
2010-03-02 01:46:54 +01:00
|
|
|
@@ -90,6 +90,11 @@ static int __devinit init_xen_info(void)
|
2010-01-16 01:12:54 +01:00
|
|
|
ioremap(shared_info_frame << PAGE_SHIFT, PAGE_SIZE);
|
|
|
|
if (shared_info_area == NULL)
|
|
|
|
panic("can't map shared info\n");
|
|
|
|
+#else
|
|
|
|
+ shared_info_frame = __pa(shared_info_area) >> PAGE_SHIFT;
|
|
|
|
+ printk(KERN_INFO "Using kernel provided shared info (pfn=%lx)\n",
|
|
|
|
+ shared_info_frame);
|
|
|
|
+#endif
|
|
|
|
|
|
|
|
return 0;
|
|
|
|
}
|
2010-03-02 01:46:54 +01:00
|
|
|
--- 2009-11-09.orig/unmodified_drivers/linux-2.6/platform-pci/platform-pci.h 2008-10-14 19:44:11.000000000 +0200
|
|
|
|
+++ 2009-11-09/unmodified_drivers/linux-2.6/platform-pci/platform-pci.h 2009-11-24 17:40:08.000000000 +0100
|
2010-01-16 01:12:54 +01:00
|
|
|
@@ -27,6 +27,11 @@
|
|
|
|
unsigned long alloc_xen_mmio(unsigned long len);
|
|
|
|
void platform_pci_resume(void);
|
|
|
|
|
|
|
|
+#ifdef CONFIG_ENLIGHTEN_SPINLOCKS
|
|
|
|
+#define shared_info_area xen_shared_info
|
|
|
|
+#endif
|
|
|
|
+extern void *shared_info_area;
|
|
|
|
+
|
|
|
|
extern struct pci_dev *xen_platform_pdev;
|
|
|
|
|
|
|
|
#endif /* _XEN_PLATFORM_PCI_H */
|