diff options
author | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
---|---|---|
committer | Jonathan Herman <hermanjl@cs.unc.edu> | 2013-01-17 16:15:55 -0500 |
commit | 8dea78da5cee153b8af9c07a2745f6c55057fe12 (patch) | |
tree | a8f4d49d63b1ecc92f2fddceba0655b2472c5bd9 /drivers/xen/platform-pci.c | |
parent | 406089d01562f1e2bf9f089fd7637009ebaad589 (diff) |
Patched in Tegra support.
Diffstat (limited to 'drivers/xen/platform-pci.c')
-rw-r--r-- | drivers/xen/platform-pci.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/drivers/xen/platform-pci.c b/drivers/xen/platform-pci.c index 99db9e1eb8b..319dd0a94d5 100644 --- a/drivers/xen/platform-pci.c +++ b/drivers/xen/platform-pci.c | |||
@@ -101,17 +101,14 @@ static int platform_pci_resume(struct pci_dev *pdev) | |||
101 | return 0; | 101 | return 0; |
102 | } | 102 | } |
103 | 103 | ||
104 | static int platform_pci_init(struct pci_dev *pdev, | 104 | static int __devinit platform_pci_init(struct pci_dev *pdev, |
105 | const struct pci_device_id *ent) | 105 | const struct pci_device_id *ent) |
106 | { | 106 | { |
107 | int i, ret; | 107 | int i, ret; |
108 | long ioaddr; | 108 | long ioaddr; |
109 | long mmio_addr, mmio_len; | 109 | long mmio_addr, mmio_len; |
110 | unsigned int max_nr_gframes; | 110 | unsigned int max_nr_gframes; |
111 | 111 | ||
112 | if (!xen_domain()) | ||
113 | return -ENODEV; | ||
114 | |||
115 | i = pci_enable_device(pdev); | 112 | i = pci_enable_device(pdev); |
116 | if (i) | 113 | if (i) |
117 | return i; | 114 | return i; |
@@ -170,7 +167,7 @@ pci_out: | |||
170 | return ret; | 167 | return ret; |
171 | } | 168 | } |
172 | 169 | ||
173 | static struct pci_device_id platform_pci_tbl[] = { | 170 | static struct pci_device_id platform_pci_tbl[] __devinitdata = { |
174 | {PCI_VENDOR_ID_XEN, PCI_DEVICE_ID_XEN_PLATFORM, | 171 | {PCI_VENDOR_ID_XEN, PCI_DEVICE_ID_XEN_PLATFORM, |
175 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, | 172 | PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0}, |
176 | {0,} | 173 | {0,} |
@@ -189,6 +186,11 @@ static struct pci_driver platform_driver = { | |||
189 | 186 | ||
190 | static int __init platform_pci_module_init(void) | 187 | static int __init platform_pci_module_init(void) |
191 | { | 188 | { |
189 | /* no unplug has been done, IGNORE hasn't been specified: just | ||
190 | * return now */ | ||
191 | if (!xen_platform_pci_unplug) | ||
192 | return -ENODEV; | ||
193 | |||
192 | return pci_register_driver(&platform_driver); | 194 | return pci_register_driver(&platform_driver); |
193 | } | 195 | } |
194 | 196 | ||