diff options
| author | 2020-10-30 23:16:35 -0700 | |
|---|---|---|
| committer | 2020-11-01 01:52:38 -0700 | |
| commit | 7d2839d7a32fcefb66e1d5b1e0305da760c09eb0 (patch) | |
| tree | e2380c7a71d1d024e38bc6e6ed9febf100285fbc | |
| parent | hle service: nvdrv: nvhost_gpu: Update to use SyncpointManager and other imp... (diff) | |
| download | yuzu-7d2839d7a32fcefb66e1d5b1e0305da760c09eb0.tar.gz yuzu-7d2839d7a32fcefb66e1d5b1e0305da760c09eb0.tar.xz yuzu-7d2839d7a32fcefb66e1d5b1e0305da760c09eb0.zip | |
core: Initialize GPU before services.
Diffstat (limited to '')
| -rw-r--r-- | src/core/core.cpp | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/src/core/core.cpp b/src/core/core.cpp index fde2ccc09..242796008 100644 --- a/src/core/core.cpp +++ b/src/core/core.cpp | |||
| @@ -179,16 +179,18 @@ struct System::Impl { | |||
| 179 | arp_manager.ResetAll(); | 179 | arp_manager.ResetAll(); |
| 180 | 180 | ||
| 181 | telemetry_session = std::make_unique<Core::TelemetrySession>(); | 181 | telemetry_session = std::make_unique<Core::TelemetrySession>(); |
| 182 | |||
| 183 | gpu_core = VideoCore::CreateGPU(emu_window, system); | ||
| 184 | if (!gpu_core) { | ||
| 185 | return ResultStatus::ErrorVideoCore; | ||
| 186 | } | ||
| 187 | |||
| 182 | service_manager = std::make_shared<Service::SM::ServiceManager>(kernel); | 188 | service_manager = std::make_shared<Service::SM::ServiceManager>(kernel); |
| 183 | 189 | ||
| 184 | Service::Init(service_manager, system); | 190 | Service::Init(service_manager, system); |
| 185 | GDBStub::DeferStart(); | 191 | GDBStub::DeferStart(); |
| 186 | 192 | ||
| 187 | interrupt_manager = std::make_unique<Core::Hardware::InterruptManager>(system); | 193 | interrupt_manager = std::make_unique<Core::Hardware::InterruptManager>(system); |
| 188 | gpu_core = VideoCore::CreateGPU(emu_window, system); | ||
| 189 | if (!gpu_core) { | ||
| 190 | return ResultStatus::ErrorVideoCore; | ||
| 191 | } | ||
| 192 | 194 | ||
| 193 | // Initialize time manager, which must happen after kernel is created | 195 | // Initialize time manager, which must happen after kernel is created |
| 194 | time_manager.Initialize(); | 196 | time_manager.Initialize(); |