File tree Expand file tree Collapse file tree 1 file changed +17
-0
lines changed Expand file tree Collapse file tree 1 file changed +17
-0
lines changed Original file line number Diff line number Diff line change 16
16
#include <asm/hypervisor.h>
17
17
#include <asm/i8259.h>
18
18
#include <asm/irqdomain.h>
19
+ #include <asm/pci_x86.h>
19
20
#include <asm/reboot.h>
20
21
#include <asm/setup.h>
21
22
@@ -106,6 +107,19 @@ static void jailhouse_no_restart(void)
106
107
machine_halt ();
107
108
}
108
109
110
+ static int __init jailhouse_pci_arch_init (void )
111
+ {
112
+ pci_direct_init (1 );
113
+
114
+ /*
115
+ * There are no bridges on the virtual PCI root bus under Jailhouse,
116
+ * thus no other way to discover all devices than a full scan.
117
+ */
118
+ pcibios_last_bus = 0xff ;
119
+
120
+ return 0 ;
121
+ }
122
+
109
123
static void __init jailhouse_init_platform (void )
110
124
{
111
125
u64 pa_data = boot_params .hdr .setup_data ;
@@ -115,6 +129,7 @@ static void __init jailhouse_init_platform(void)
115
129
x86_init .irqs .pre_vector_init = x86_init_noop ;
116
130
x86_init .timers .timer_init = jailhouse_timer_init ;
117
131
x86_init .mpparse .get_smp_config = jailhouse_get_smp_config ;
132
+ x86_init .pci .arch_init = jailhouse_pci_arch_init ;
118
133
119
134
x86_platform .calibrate_cpu = jailhouse_get_tsc ;
120
135
x86_platform .calibrate_tsc = jailhouse_get_tsc ;
@@ -157,6 +172,8 @@ static void __init jailhouse_init_platform(void)
157
172
158
173
precalibrated_tsc_khz = setup_data .tsc_khz ;
159
174
175
+ pci_probe = 0 ;
176
+
160
177
/*
161
178
* Avoid that the kernel complains about missing ACPI tables - there
162
179
* are none in a non-root cell.
You can’t perform that action at this time.
0 commit comments