aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/service/nvflinger/nvflinger.cpp
AgeCommit message (Collapse)Author
2023-03-01nvnflinger: fix nameLiam
2023-01-11nvnflinger: correct swap interval handlingLiam
2022-11-28buffer_item_consumer: Pass fence by const-ref in ReleaseBuffer()Lioncash
This isn't directly modified. Also allows rvalues to be used with it.
2022-10-27vi: implement CloseDisplayLiam
2022-10-23core: barrier service thread shutdownLiam
2022-10-06Core: Fix get nvmap object random crashVonChenPlus
2022-10-06VideoCore: Refactor fencing system.Fernando Sahmkow
2022-10-06VideoCore: Refactor syncing.Fernando Sahmkow
2022-10-06NVDRV: Fix Open/Close and make sure each device is correctly created.Fernando Sahmkow
2022-10-03common: remove "yuzu:" prefix from thread namesLiam
2022-09-25service: vi: Retrieve vsync event once per displayMorph
The display vsync event can only be retrieved once per display. Returns VI::ResultPermissionDenied if we attempt to retrieve the vsync event for the same display. Prevents games such as .hack//G.U. Last Recode from consuming all the handles in the handle table by spamming vsync event retrievals and allows it to go in game.
2022-08-01Rework multi-core vsyncKelebek1
2022-07-16hle: service: nvflinger: Fix implicit conversion.bunnei
2022-07-16yuzu: settings: Remove framerate cap and merge unlocked framerate setting.bunnei
- These were all somewhat redundant.
2022-07-16hle: service: nvflinger: Factor speed limit into frame time calculation.bunnei
- This allows the %-based "Limit Speed Percent" setting to work with MC emulation. - This is already supported for SC emulation.
2022-07-10PRKelebek1
2022-07-10Rework CoreTimingKelebek1
2022-04-23general: Convert source file copyright comments over to SPDXMorph
This formats all copyright comments according to SPDX formatting guidelines. Additionally, this resolves the remaining GPLv2 only licensed files by relicensing them to GPLv2.0-or-later.
2022-04-01hle: service: nvflinger: Use correct logger namespace.bunnei
2022-03-24hle: nvflinger: Use std::chrono for present_ns.bunnei
2022-03-24hle: vi: Integrate new NVFlinger and HosBinderDriverServer service.bunnei
2021-12-28Remove invalid assertion statementFeng Chen
2021-10-03nvflinger: Use jthread and stop_token for VSync threadameerj
Avoids a destruction data race that may occur on the vsync thread
2021-09-11Merge pull request #6981 from ameerj/nvflinger-hb-formatFernando S
nvflinger: Use external surface format for framebuffer creation
2021-09-06nvflinger: Use external surface format for framebuffer creationameerj
The format member the IGBPBuffer may not always specify the correct desired format. Using the external format member ensures a valid format is provided when creating the framebuffer. Fixes homebrew using the wrong framebuffer format.
2021-09-04core: hle: service: buffer_queue: Improve management of KEvent.bunnei
2021-09-03core: hle: service: nvflinger/vi: Improve management of KEvent.bunnei
2021-08-25Revert "kernel: Various improvements to scheduler"bunnei
2021-08-07core: hle: service: buffer_queue: Improve management of KEvent.bunnei
2021-08-07core: hle: service: nvflinger/vi: Improve management of KEvent.bunnei
2021-07-23config, nvflinger: Add FPS cap settingameerj
Allows finer tuning of the FPS limit.
2021-06-17nvflinger: Add toggle to disable buffer swap interval limitsameerj
Enabling this setting will allow some titles to present more frames to the screen as they become available in the nvflinger buffer queue.
2021-05-16Merge pull request #6284 from ameerj/shantae-fixbunnei
nvflinger: Create layers when they are queried but not found
2021-05-16core: Make variable shadowing a compile-time errorLioncash
Now that we have most of core free of shadowing, we can enable the warning as an error to catch anything that may be remaining and also eliminate this class of logic bug entirely.
2021-05-06nvflinger: Create layers when they are queried but not foundameerj
Fixes Shantae softlock on boot.
2021-05-05hle: kernel: Migrate KReadableEvent and KWritableEvent to KAutoObject.bunnei
2021-05-05hle: kernel: Migrate KEvent to KAutoObject.bunnei
2021-04-26service: Eliminate cases of member shadowingLioncash
Resolves a few localized instances of member variable shadowing. Brings us a little closer to turning shadowing warnings into errors.
2021-04-14common: Move settings to common from core.bunnei
- Removes a dependency on core and input_common from common.
2021-02-05hle: kernel: Rename ReadableEvent to KReadableEvent.bunnei
2021-01-11core: hle: Add missing calls to MicroProfileOnThreadExit.bunnei
2020-12-28service: nvflinger: Improve synchronization for BufferQueue.bunnei
- Use proper mechanisms for blocking on DequeueBuffer. - Ensure service thread terminates on emulation Shutdown.
2020-12-28hle: service: nvflinger: Refactor locking and interfaces.bunnei
2020-11-01service: hle: nvflinger: Fix potential shutdown crash when GPU is destroyed.bunnei
2020-10-20Revert "core: Fix clang build"bunnei
2020-10-17core: Fix clang buildLioncash
Recent changes to the build system that made more warnings be flagged as errors caused building via clang to break. Fixes #4795
2020-09-22General: Make use of std::nullopt where applicableLioncash
Allows some implementations to avoid completely zeroing out the internal buffer of the optional, and instead only set the validity byte within the structure. This also makes it consistent how we return empty optionals.
2020-07-27core_timing: Make use of uintptr_t to represent user_dataLioncash
Makes the interface future-proofed for supporting other platforms in the event we ever support platforms with differing pointer sizes. This way, we have a type in place that is always guaranteed to be able to represent a pointer exactly.
2020-07-25nvflinger: Use return value of Lock()Lioncash
comex reported in #4424 that we were incorrectly discarding the return value of Lock() which is correct.
2020-07-15core_timing: Make TimedCallback take std::chrono::nanosecondsLioncash
Enforces our desired time units directly with a concrete type.