Commit Graph
100 Commits
Author SHA1 Message Date
Fernando S 3f86b339f3 Merge pull request #12845 from liamwhite/notif
notif: rewrite for new IPC
2024-02-02 15:09:57 +01:00
Fernando S 58cf2ee1f9 Merge pull request #12761 from liamwhite/mp-composite
video_core: rewrite presentation for layer composition
2024-02-02 15:08:06 +01:00
Fernando Sahmkow 5cb9fe7819 SwBlitter: Fix Pitch linear reading/writting 2024-01-31 23:02:10 +01:00
Fernando Sahmkow d57165df45 Device Memory Manager: ensure raster protection only within mapped device addresses. 2024-01-31 16:38:51 +01:00
Fernando Sahmkow 738e9a79a0 DeviceMemory: Make counter types configurable 2024-01-31 16:38:51 +01:00
Fernando Sahmkow aaab11e36f NVDRV: Join the heaper optimization blocks 2024-01-31 16:38:51 +01:00
Fernando Sahmkow a7c1306e2d Texture Cache: make sparse texture table per channel 2024-01-31 16:38:51 +01:00
Fernando Sahmkow 4b963ca8a5 Core: Invert guest memory depandancy 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 648ed55fe6 Core: Make sure GPU Dirty Managers ae shared by all processes. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 23430e6772 Core: Eliminate core/memory dependancies. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 0672847330 SMMU: Fix Right Shift UB. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow a874ab0133 SMMU: Fix 8Gb layout. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 590d9b7e1d Core: Clang format and other small issues. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow b0bca0f8b0 SMMU: Fix software rendering and cleanup 2024-01-18 21:12:30 -05:00
Fernando Sahmkow d8f1ce2f76 SMMU: Add continuity tracking optimization. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 9b11b9dce5 SMMU: Simplify and remove old code. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 303cd31162 SMMU: Add Android compatibility 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 0adc09e0af GPU-SMMU: Estimate game leak and preallocate device region. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 96fd1348ae GPU SMMU: Expand to 34 bits 2024-01-18 21:12:30 -05:00
Fernando Sahmkow bad705f245 SMMU: Fix Unregister on MultiAddress 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 34a8d0cc8e SMMU: Implement physical memory mirroring 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 0a2536a0df SMMU: Initial adaptation to video_core. 2024-01-18 21:12:30 -05:00
Fernando Sahmkow c85d7ccd79 SMMU: Implement backing CPU page protect/unprotect 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 7a9d1ad2f8 NVDRV: Implement sessions and initial implementation of SMMU 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 2f0418c101 Core: Initial implementation of device memory mapping 2024-01-18 21:12:30 -05:00
Fernando Sahmkow 737e6e531c Vulkan: Only recreate swapchain if the frame is bigger than the swap image. 2023-12-31 21:03:46 +01:00
Fernando Sahmkow d07397931a MaxwellDMA: Don't flush the outputs of a dma copy. 2023-12-31 21:00:01 +01:00
Fernando S f02a8d0ae9 Merge pull request #12479 from GPUCode/linear-bcn
video_core: Fix buffer_row_length for linear compressed textures
2023-12-30 06:56:08 +01:00
Fernando S 8517d7cb44 Merge pull request #12487 from liamwhite/clip3
shader_recompiler: use default value for clip distances array
2023-12-30 06:54:44 +01:00
Fernando S 05e3db3ac9 Merge pull request #12394 from liamwhite/per-process-memory
general: properly support multiple memory instances
2023-12-24 16:23:14 +01:00
Fernando S 820f113d9e Merge pull request #12435 from liamwhite/type-check
shader_recompiler: ensure derivatives for textureGrad are f32
2023-12-22 17:41:13 +01:00
Fernando S 373a1ff2ce Merge pull request #12410 from liamwhite/more-mali-null
renderer_vulkan: don't pass null view when nullDescriptor is not supported
2023-12-22 17:40:47 +01:00
Fernando S 4d6b6ba76c Merge pull request #12432 from liamwhite/float-write
shader_recompiler: use float image operations on load/store when required
2023-12-22 17:40:26 +01:00
Fernando S f1cb14eb54 Merge pull request #12417 from liamwhite/arm64-gcc-fix
nce: hide shadowing warnings from dynarmic headers
2023-12-20 18:46:08 +01:00
Fernando S f4f4a469a9 Merge pull request #12409 from liamwhite/bits-and-bytes
nce: fix read size in simd immediate emulation
2023-12-20 18:45:44 +01:00
Fernando S 9e5b4052ed Merge pull request #12403 from liamwhite/clipdistance
shader_recompiler: use minimal clip distance array
2023-12-20 18:45:20 +01:00
Fernando S 234867b84d Merge pull request #12390 from liamwhite/binding-insanity
renderer_vulkan: work around turnip binding bug in a610
2023-12-20 18:44:47 +01:00
Fernando S efe52db690 Merge pull request #12382 from liamwhite/image-limit
renderer_vulkan: allow up to 7 swapchain images
2023-12-19 16:15:40 +01:00
Fernando S d61df0f400 Merge pull request #12387 from liamwhite/oboe
android: add oboe audio sink
2023-12-19 16:15:07 +01:00
Fernando S b14547b8b6 Merge pull request #12392 from liamwhite/mode
fs: implement OpenDirectoryMode
2023-12-19 16:14:29 +01:00
Fernando S 97ad3e7530 Merge pull request #12391 from yuzu-emu/revert-12344-its-free-real-estate
Revert "video_core: use interval map for page count tracking"
2023-12-19 16:14:09 +01:00
Fernando S 0589a32f75 Merge pull request #12304 from liamwhite/flinger-wtf
nvnflinger: mark buffer as acquired when acquired
2023-12-19 16:12:56 +01:00
Fernando S 8a79dd2d6c Merge pull request #12236 from liamwhite/cpu-refactor
core: refactor emulated cpu core activation
2023-12-06 14:19:17 +01:00
Fernando S f21340f7aa Merge pull request #11535 from GPUCode/upload_cmdbuf
renderer_vulkan: Introduce separate cmd buffer for uploads
2023-11-26 18:33:05 +01:00
Fernando Sahmkow a493ba76b4 Vulkan: Be more generous with pipeline workers for Android 2023-11-19 14:54:15 +01:00
Fernando Sahmkow ae60a5657e Buffer Cache: Eliminate clears on Indirect buffers 2023-11-18 19:26:14 +01:00
Fernando Sahmkow c9437e5244 Query Cache: Disable write syncing on Android 2023-11-15 02:23:39 +01:00
Fernando Sahmkow 50bcfa5fb9 Vulkan: Add a final barrier to the upload command buffer 2023-11-12 20:58:30 +01:00
Fernando Sahmkow f1806d237f Memory: Fix invalidation handling from the CPU/Services 2023-11-12 14:10:40 +01:00
Fernando Sahmkow 1d03a0fa75 Revert "renderer_vulkan: add locks to avoid scheduler flushes from CPU"
This reverts commit d9dde7e6f3.
2023-11-10 15:40:48 +01:00
Fernando S 2e760a9833 Merge pull request #11748 from liamwhite/kern_1700
kernel: update for 17.0.0
2023-10-20 17:08:00 +02:00
Fernando S bab4a13a41 Merge pull request #11825 from liamwhite/system-resource
kernel: fix incorrect calculation of used non system memory value
2023-10-20 16:40:15 +02:00
Fernando S 2244b613cf Merge pull request #11788 from Squall-Leonhart/IFREMOVED
[crash fix]brings back the removed if  statement in util.cpp and adds the  num_level test to it like previous discontinued PR
2023-10-17 14:36:36 +02:00
Fernando S b6d19329ac Merge pull request #11743 from Squall-Leonhart/IFREMOVED
Fix mistaken usage of info.block instead of level_info.block
2023-10-11 11:56:47 +02:00
Fernando S b28b05e2aa Merge pull request #11718 from liamwhite/arm64-native-clock
common: add arm64 native clock
2023-10-10 11:48:06 +02:00
Fernando S 8151a4d301 Merge pull request #11650 from german77/lle_album
service: am: Add support for LLE Album Applet
2023-10-10 11:47:13 +02:00
Fernando S 8ac8d703b9 Merge pull request #11686 from liamwhite/trmem
kernel: implement transfer memory
2023-10-10 11:45:56 +02:00
Fernando S a0d56c855c Merge pull request #11646 from FernandoS27/stop-ignoring-your-mental-health
Query Cache: Fix memory leak.
2023-10-01 17:40:13 +02:00
Fernando Sahmkow 9007d8c8d4 Query Cache: Fix memory leak. 2023-10-01 11:47:14 +02:00
Fernando S 184ee2d890 Merge pull request #11493 from merryhime/evt
core_timing: Replace queue with a fibonacci heap
2023-09-29 13:37:19 +02:00
Fernando S d6b3e7f195 Merge pull request #11546 from Kelebek1/core_timing_mutex
Reduce core timing mutex contention
2023-09-29 13:36:57 +02:00
Fernando S 926e24c642 Merge pull request #11622 from liamwhite/qcr-reg1
renderer_vulkan: fix query cache for homebrew
2023-09-29 06:01:18 +02:00
Fernando S f782104125 Merge pull request #11556 from GPUCode/msaa-image-vk
renderer_vulkan: Implement MSAA image copies
2023-09-28 01:56:27 +02:00
Fernando Sahmkow 57d8cd6c40 Query Cache: Fix Prefix Sums 2023-09-23 23:05:30 +02:00
Fernando Sahmkow bf0d6b8806 Query Cache: Fix behavior in Normal Accuracy 2023-09-23 23:05:30 +02:00
Fernando Sahmkow a07c88e686 Query Cache: Simplify Prefix Sum compute shader 2023-09-23 23:05:30 +02:00
Fernando Sahmkow c8237d5c31 Query Cache: Implement host side sample counting. 2023-09-23 23:05:30 +02:00
Fernando Sahmkow 2fea1b8407 Query Cache: Fix guest side sample counting 2023-09-23 23:05:30 +02:00
Fernando Sahmkow 282ae8fa51 Query Cache: address issues 2023-09-23 23:05:30 +02:00
Fernando Sahmkow aa6587d854 QueryCache: Implement dependant queries. 2023-09-23 23:05:29 +02:00
Fernando Sahmkow 57401589c2 Macro HLE: Add DrawIndirectByteCount 2023-09-23 23:05:29 +02:00
Fernando Sahmkow f1a2e36711 Query Cachge: Fully rework Vulkan's query cache 2023-09-23 23:05:29 +02:00
Fernando Sahmkow bdc01254a9 Query Cache: Setup Base rework 2023-09-23 23:05:29 +02:00
Fernando S ace91dd0c0 Merge pull request #11567 from liamwhite/fixing-my-error
emit_spirv: fix incorrect use of descriptor index in image atomics
2023-09-23 13:00:31 +02:00
Fernando Sahmkow b99f94a7ff Vulkan: add temporary workaround for AMDVLK 2023-09-16 11:59:20 -04:00
Fernando Sahmkow 6a1ecab2dd Vulkan: Implement Depth Bias Control 2023-09-16 11:58:55 -04:00
Fernando S 89a2d48cf8 Merge pull request #11430 from liamwhite/validation-error-whats-that
shader_recompiler: fix emulation of 3D textureGrad
2023-09-02 12:10:51 +02:00
Fernando Sahmkow 52544933d2 Maxwell3D: Improve Index buffer size estimation. 2023-08-27 22:14:37 +02:00
Fernando S ada4697300 Merge pull request #11389 from FernandoS27/discard-fix
Buffer Cache: fix discard writes.
2023-08-27 04:26:59 +02:00
Fernando Sahmkow 115792158d VideoCore: Implement DispatchIndirect 2023-08-27 04:26:22 +02:00
Fernando Sahmkow 710ca3ca49 Shader Recompiler: Auto stub special registers and dump pipelines on exception. 2023-08-27 03:47:04 +02:00
Fernando Sahmkow acc99433c7 Buffer Cache: fix discard writes. 2023-08-27 03:45:43 +02:00
Fernando Sahmkow 8beda6a2bf DMA Pusher: Fix regression caused by guest memory optimizations 2023-08-26 22:00:43 +02:00
Fernando S 2f2de400e1 Merge pull request #11375 from liamwhite/nvhost-as-gpu
nvhost_as_gpu: ensure mappings are aligned to big page size when deallocated
2023-08-25 17:04:16 +02:00
Fernando S 861597eb2e Merge pull request #11284 from liamwhite/nca-release
vfs: expand support for NCA reading
2023-08-21 16:29:04 +02:00
Fernando S 6a5db5679b Merge pull request #11320 from Kelebek1/mask_depthstencil_clear
Support masked depthstencil clears
2023-08-19 17:28:28 +02:00
Fernando Sahmkow c03f0b3c89 Shader Recomnpiler: implement textuzreGrad 3D emulation constant propagation 2023-08-18 22:17:02 -04:00
Fernando S a8c4f01f6c Merge pull request #11287 from liamwhite/replaced-bytes
gdbstub: fixup replaced instruction bytes in memory reads
2023-08-15 15:36:14 +02:00
Fernando S ef5618e486 Merge pull request #11195 from Morph1984/misaligned
audren_u: Fix parameter alignment
2023-08-01 10:41:14 +02:00
Fernando S b7c7768e0a Merge pull request #10993 from liamwhite/revert-pr-10583
Revert "texture_cache: Fix incorrect logic for AccelerateDMA"
2023-07-02 09:27:29 +02:00
Fernando S a10bdaf934 Merge pull request #10953 from FernandoS27/oh-oopsies-yfc
Texture cache: Fix YFC regression due to code testing
2023-06-30 20:25:09 +02:00
Fernando S 9252ad4e10 Merge pull request #10956 from FernandoS27/pikmin-another-game-ill-hate
AccelerateDMA: Don't accelerate 3D texture DMA operations
2023-06-30 09:37:07 +02:00
Fernando Sahmkow 596a6132b9 AccelerateDMA: Don't accelerate 3D texture DMA operations 2023-06-29 17:23:29 +02:00
Fernando Sahmkow 0e6b559c98 Memory Tracker: Use 64 bit atomics instead of 128 bits 2023-06-29 12:25:12 +02:00
Fernando Sahmkow b62121fd60 Texture cache: Fix YFC regression due to code testing 2023-06-29 11:58:45 +02:00
Fernando Sahmkow da440da9f5 Memory Tracking: Optimize tracking to only use atomic writes when contested with the host GPU 2023-06-28 21:32:45 +02:00
Fernando Sahmkow 47d0d292d5 MemoryTracking: Initial setup of atomic writes. 2023-06-28 19:34:21 +02:00
Fernando S 27a36cd51b Merge pull request #10744 from Wollnashorn/af-for-all
video_core: Improved anisotropic filtering heuristics
2023-06-18 00:02:05 +02:00
Fernando S 3c3830953a Merge pull request #10452 from liamwhite/ibgc
video_core: don't garbage collect during configuration
2023-05-25 20:09:08 +02:00
Fernando Sahmkow be3a7f4096 Texture cache: revert wrong acceleration assumption 2023-05-24 10:52:02 +02:00