summaryrefslogtreecommitdiffstats
path: root/src/core/hle/service/nvdrv (unfollow)
Commit message (Collapse)AuthorFilesLines
2018-07-03Rename logging macro back to LOG_*James Rowe8-50/+50
2018-07-01GPU: Remove a surface from the cache when its backing memory is being unmapped from the GPU's MMU.Subv1-0/+5
2018-07-01nvmap: Return the address of the nvmap object when Freeing it for the last time.Subv2-4/+11
This behavior is confirmed by reverse engineering.
2018-06-20Build: Fixed some MSVC warnings in various parts of the code.Subv1-1/+2
2018-06-06nvdrv/devices/nvidia_ctrl_gpu : add IoctlCommands with their params (#524)greggameplayer2-0/+53
* add IoctlCommands with their params in nvidia_ctrl_gpu.h * add function related to the changes done previously * fix clang-format * delete trailing whitespace * correct mistake
2018-06-04Nvdrv/devices/nvhost_gpu : Add some IoctlCommands with their params (#511)greggameplayer1-0/+47
* Add some IoctlCommand with their params to nvhost_gpu * fix clang-format * delete trailing whitespace * fix some clang-format * delete one other trailing whitespace * last clang-format fix
2018-05-30Services/nvdrv: add '/dev/nvhost-nvdec' devicemailwl3-0/+72
2018-05-30nvhost_ctrl: Stub out IocCtrlEventRegister.bunnei2-0/+10
2018-05-30nvhost_ctrl: Stub out IocCtrlEventWaitAsyncCommand.bunnei2-5/+9
2018-05-27NvOsGetConfigU32 should return null instead of 0 for default outputDavid Marcec1-1/+1
2018-05-25Stubbed NVGPU_GPU_IOCTL_ZBC_SET_TABLE (#463)David2-0/+22
We have no clue on what this actually does yet so stubbing it since it's just input only should be fine for now
2018-05-24Stub NVGPU_IOCTL_CHANNEL_SET_TIMEOUTmailwl2-0/+16
Used in Nintendo Labo ToyCon 1&2
2018-05-23change some functionsgreggameplayer1-6/+6
according to the changes made previously
2018-05-23correct placement and add size checkgreggameplayer1-21/+25
2018-05-23Add ioctl commands with their params and size checkgreggameplayer1-2/+86
2018-05-22Implemented NVHOST_IOCTL_CHANNEL_GET_WAITBASE (#440)David2-1/+20
* Implemented NVHOST_IOCTL_CHANNEL_GET_WAITBASE struct + 4 seems to be hard coded at 0 and struct + 0 seems to be ignored? * IocGetWaitbase -> IocChannelGetWaitbaseCommand * Added super late fixes
2018-05-20GPU: Implemented the nvmap Free ioctl.Subv2-1/+48
It releases a reference to an nvmap object
2018-05-20GPU: Implemented nvhost-as-gpu's UnmapBuffer ioctl.Subv2-0/+50
It removes a mapping previously created with the MapBufferEx ioctl.
2018-05-11More accurate GetTPCMasks implDavid Marcec2-4/+8
2018-05-02general: Make formatting of logged hex values more straightforwardLioncash6-8/+8
This makes the formatting expectations more obvious (e.g. any zero padding specified is padding that's entirely dedicated to the value being printed, not any pretty-printing that also gets tacked on).
2018-05-01GPU: Don't write to invalid memory locations when handling ioctls that don't have an output.Subv2-5/+0
2018-04-27general: Convert assertion macros over to be fmt-compatibleLioncash1-2/+2
2018-04-24nvdrv: Move logging macros over to new fmt-compatible onesLioncash7-60/+61
2018-04-23NvDrv/nvhost-as-gpu: Ensure that the object passed to MapBufferEx has already been allocated.Subv1-0/+10
Also added a consistency check and a comment for the case when the object id is different than its handle. The real nvservices doesn't make a distinction between ids and handles, each object gets an unique handle which doubles as its id.
2018-04-23Nvdrv/nvhost-as-gpu: Implemented the ioctl REMAP command.Subv2-0/+47
It takes a previously-reserved (AllocateSpace) GPU memory address and maps it to the address of the nvmap object passed to Remap.
2018-04-23Nvdrv: Assert when receiving an unimplemented ioctl in the nv* handlers.Subv5-5/+5
2018-04-23GetIUserInterface->CreateUserInterface, Added todos and stub logs. Playreport->PlayReport.David Marcec1-1/+1
2018-04-22Implemented GetIUserInterface properly, Playreport and SSL::SetInterfaceVersion. Fixed ipc issues with IAudioDevice(wrong ids)David Marcec1-0/+1
2018-04-20service: Use nested namespace specifiers where applicableLioncash19-102/+39
Tidies up namespace declarations
2018-04-11Various fixes and clangHexagon121-2/+2
2018-04-10Updated nvmemp with new service names.Hexagon121-4/+4
2018-04-10Updated nvdrv with more service names.Hexagon121-0/+7
2018-03-23renderer_opengl: Fixes for properly flushing & rendering the framebuffer.bunnei1-6/+0
2018-03-23renderer_opengl: Better handling of framebuffer transform flags.bunnei1-3/+1
2018-03-23nvdisp_disp0: Always flush and invalidate framebuffer region.bunnei1-0/+7
- Workaround for texture forwarding until we have a better place.
2018-03-23video_core: Move FramebufferInfo to FramebufferConfig in GPU.bunnei1-3/+3
2018-03-19Clang FixesN00byKing1-2/+2
2018-03-19Clean Warnings (?)N00byKing1-1/+1
2018-02-17nvmap: Make IocFromId return the same existing handle instead of creating a new one.Subv1-5/+2
Games like Puyo Puyo Tetris and BOTW seem to depend on the buffer always having the same handle
2018-02-15nvhost-ctrl: Stub NVHOST_IOCTL_CTRL_EVENT_WAIT.Subv2-0/+25
2018-02-15Vi: Properly write the BufferProducerFence object in the DequeueBuffer response parcel.Subv1-0/+7
2018-02-14nvdrv/interface: Silence formatting specifier warningsLioncash1-1/+2
2018-02-14nvmap: Silence formatting specifier warningsLioncash1-1/+2
2018-02-14nvhost_gpu: Silence formatting specifier warningsLioncash1-6/+8
2018-02-14nvhost_ctrl: Silence formatting specifier warningsLioncash1-2/+2
2018-02-14nvhost_ctrl_gpu: Silence formatting specifier warningsLioncash1-3/+4
2018-02-14nvhost_as_gpu: Silence formatting specifier warningsLioncash1-5/+7
2018-02-14service: Remove remaining uses of BufferDescriptor*.bunnei1-3/+2
2018-02-14nvdrv: Use ReadBuffer/WriteBuffer functions for Ioctl.bunnei1-17/+5
2018-02-12Make a GPU class in VideoCore to contain the GPU state.Subv7-181/+15
Also moved the GPU MemoryManager class to video_core since it makes more sense for it to be there.
2018-02-12GPU: Added a command processor to decode the GPU pushbuffers and forward the commands to their respective engines.Subv3-3/+5
2018-02-12nvdrv: Make the GPU memory manager available to nvhost-gpu.Subv3-6/+16
2018-02-12vi: Parse IGBPQueueBufferRequestParcel params and expose buffer flip vertical.bunnei2-3/+7
2018-02-09nvdrv: Fix QueryEvent for libnx.bunnei2-4/+8
2018-02-09nvhost_ctrl_gpu: Implement ZCullGetInfo.bunnei1-2/+14
2018-02-08nvhost_as_gpu: Implement AllocateSpace and MapBufferEx.bunnei2-10/+33
2018-02-08nvdrv: Add MemoryManager class to track GPU memory.bunnei2-0/+160
2018-02-08nvmap: Refactor to expose nvmap objects.bunnei2-19/+22
2018-02-08nvhost_as_gpu: Add nvmap as a class member.bunnei3-2/+9
2018-02-06Extra nvdrv support (#162)David16-37/+761
* FinishInitalize needed for 3.0.1+ games * nvdrv:s and nvdrv:t both use NVDRV * Most settings return 0 on hardware, disabled NV_MEMORY_PROFILER for now. NVN_THROUGH_OPENGL & NVRM_GPU_PREVENT_USE are a few interesting settings to look at. Carefully choosing settings can help with drawing graphics later on * Initial /dev/nvhost-gpu support * ZCullBind * Stubbed SetErrorNotifier * Fixed SetErrorNotifier log, Added SetChannelPriority * Allocate GPFIFO Ex2, Allocate Obj Ctx, Submit GPFIFO * oops * Fixed up naming/structs/enums. Used vector instead of array for "gpfifo_entry" * Added missing fixes * /dev/nvhost-ctrl-gpu * unneeded struct * Forgot u32 in enum class * Automatic descriptor swapping for ioctls, fixed nvgpu_gpu_get_tpc_masks_args being incorrect size * nvdrv#QueryEvent * Renamed logs for nvdrv * Refactor ioctl so nv_result isn't needed * /dev/nvhost-as-gpu * Fixed Log service naming, CtxObjects now u32, renamed all structs, added static_asserts to structs, used INSERT_PADDING_WORDS instead of u32s * nvdevices now uses "Ioctl" union, * IoctlGpfifoEntry now uses bit field * final changes
2018-02-04logger: Use Service_NVDRV category where applicable.bunnei2-10/+10
2018-01-25hle: Rename RequestBuilder to ResponseBuilder.bunnei1-5/+5
2018-01-21Added nvmemp, Added /dev/nvhost-ctrl, SetClientPID now stores pid (#114)David7-5/+158
* Added nvmemp, Added /dev/nvhost-ctrl, SetClientPID now stores pid * used clang-format-3.9 instead * lowercase pid * Moved nvmemp handlers to cpp * Removed unnecessary logging for NvOsGetConfigU32. Cleaned up log and changed to LOG_DEBUG * using std::arrays instead of c arrays * nvhost get config now uses std::array completely * added pid logging back * updated cmakelist * missing includes * added array, removed memcpy * clang-format6.0
2018-01-21nvmap: Add a return 0 underneath the UNIMPLEMENTED macroLioncash1-0/+1
This macro resolves to an empty macro in release builds.
2018-01-21nvmap: Make IoctlCommands an enum classLioncash2-12/+12
Prevents the enum values from polluting the surrounding scope
2018-01-21Format: Run the new clang format on everythingJames Rowe1-1/+1
2018-01-19nvdrv: Stub SetClientPID.bunnei2-0/+13
2018-01-17nvdrv: stubbed Close(cmd 2)Frederic Meyer4-0/+26
2018-01-17UI: Fix frame rate perf statsJames Rowe1-0/+3
Adds in a missing EndGameFrame when nvdrv swaps buffers
2018-01-17NV: Implemented the nvdrv service, which uses the same interface as nvdrv:aSubv3-14/+16
2018-01-17NV: Move the nvdrv classes into the Nvidia namespace, and move the functionality to a s single module that services call.Subv11-161/+91
2018-01-16clang-formatMerryMage1-0/+1
2018-01-13yuzu: Update license text to be consistent across project.bunnei11-11/+11
2018-01-12core: Include <algorithm> where used.bunnei1-0/+2
2018-01-12nv: Fix more broken asserts.bunnei2-3/+3
2018-01-12nvdisp_disp0: Fix broken assert.bunnei1-1/+1
2018-01-11nvdisp_disp0: Call SwapBuffers to render framebuffer.bunnei1-0/+7
2018-01-11NV: Move the nv device nodes to their own directory and namespace.Subv9-165/+421
2018-01-11NV: Expose the nvdisp_disp0 device and a weak reference to the nvdrv:a service.Subv4-170/+236
NVFlinger will call into the nvdisp_disp0 device to perform screen flips, bypassing the ioctl interface. We now have the address of the framebuffer to draw, we just need to actually put it on the screen.
2018-01-11NV: Implemented the nvdrv:a service and the /dev/nvmap device.Subv4-0/+354