Commit Graph

69 Commits

Author SHA1 Message Date
yellows8
a1462c8b0b Fixed size of bufferProducerGraphicBuffer and removed the union for it. Removed an invalid comment from gfx.c, since bufferProducerRequestBuffer() is used after bufferProducerGraphicBufferInit(). 2018-02-17 19:35:04 -05:00
yellows8
3f90f3b64c Align width/height to 4 in gfxInitResolution() and gfxConfigureCrop(). Updated the image-transfer code in gfxFlushBuffers() for removing the width misalignment handling. 2018-02-16 20:13:47 -05:00
yellows8
7fa0397c16 Fixed formatting for GfxMode docs. 2018-02-13 00:08:23 -05:00
yellows8
ea612e3060 Added text-console note to GfxMode comment. 2018-02-12 17:52:10 -05:00
yellows8
13b4c74723 Updated gfx API. Replaced gfxSetDoubleBuffering() with gfxSetMode(), and added GfxMode enum. Updated gfx.h comments. Updated gfxGetFramebufferDisplayOffset() for using the aligned width. The new GfxMode_LinearDouble is now used by default, apps must not use gfxGetFramebufferDisplayOffset() with this mode. Apps using gfxGetFramebufferDisplayOffset() must be updated. 2018-02-12 16:08:25 -05:00
yellows8
4b2a32af59 Imported transform enums from Android and updated g_gfxQueueBufferData.transform for this. 2018-02-12 11:58:54 -05:00
yellows8
1d7556f583 Updated ioctl.h comment. 2018-02-11 18:29:30 -05:00
TuxSH
507bf71a7b Fix NV ioctl nameclashes...
...with bsd ioctls (coming soon) & C++ stdlib
2018-02-10 23:02:05 +01:00
fincs
7a07d2c010 gfx/gfx.h: Fix doxygen formatting 2018-02-10 22:40:11 +01:00
fincs
78ff885390 Rename __in/out/inout to _in_/etc to avoid problems with C++ system headers 2018-02-10 22:40:11 +01:00
plutoo
89021287f8 Revert "We don't understand Auto -- disable for now"
This reverts commit 20c4bfd54a.
2018-02-01 00:26:39 +01:00
plutoo
20c4bfd54a We don't understand Auto -- disable for now 2018-02-01 00:16:38 +01:00
Lioncash
b637276c48 Silence a few missing prototype warnings 2018-01-28 01:03:56 +01:00
plutoo
673651a51f Fix broken header files 2018-01-23 00:27:00 +01:00
plutoo
6fa8370bfb This looks better 2018-01-22 20:11:55 +01:00
TuxSH
5abc4873d8 Include only what is really necessary...
add pragma once in every header, etc.
2018-01-22 18:42:57 +01:00
plutoo
edcf789b6e C was developed in 1972 2018-01-06 13:54:59 +01:00
plutoo
fbfb5cdba2 NV code style 2018-01-06 13:43:18 +01:00
plutoo
10246ebdbc Binder codestyle fix 2018-01-06 13:39:47 +01:00
plutoo
fee6b42963 Align code style for AM 2018-01-06 05:57:56 +01:00
yellows8
a0ea8c53df Perf adjustments for gfxGetFramebufferDisplayOffset(). 2017-12-30 02:13:04 -05:00
yellows8
4e77c36c30 Perf adjustments for gfxGetFramebufferDisplayOffset(). 2017-12-29 22:04:15 -05:00
yellows8
18a0d45afe Added gfxInitResolutionDefault(). Added gfxConfigureAutoResolution() and gfxConfigureAutoResolutionDefault(). 2017-12-27 18:52:54 -05:00
yellows8
b89036f6fd Added user-specified crop handling with gfxConfigureCrop() and gfxConfigureResolution(). Added gfxGetFramebufferResolution(). Updated gfxGetFramebufferDisplayOffset() for handling this. 2017-12-27 18:52:54 -05:00
yellows8
d62709adc7 Added gfxInitResolution() + added gfx.h comments. Updated gfxGetFramebufferDisplayOffset() so that the returned pixel-offset is in a region that's not displayed when the x/y is out-of-bounds. Fixed g_gfx_framebuf_aligned_{width/height} init when the initial width/height is not the default 0. Updated nvioctlNvhostAsGpu_InitializeEx/nvioctlNvhostAsGpu_AllocSpace usage etc, required for using non-720p framebufs. 2017-12-27 18:52:54 -05:00
yellows8
a730cf977f Added bufferProducerRect for crop. Updated a resolution comment and added a comment for crop. 2017-12-27 18:52:53 -05:00
yellows8
a814c79827 Properly setup the data in bufferProducerGraphicBuffer via a struct. Setup size/width/height fields properly in bufferProducerGraphicBuffer, instead of hard-coding. 2017-12-27 18:52:53 -05:00
yellows8
917036cec6 Updated bufferProducerGraphicBuffer struct. 2017-12-27 18:52:53 -05:00
yellows8
dd4a9bbca6 Added bufferProducerGraphicBuffer struct. Parse the bufferProducerRequestBuffer parcel reply properly. Renamed bufferProducerTegraBufferInit to bufferProducerGraphicBufferInit + renamed the enum for it, and handle input/output for it properly. Properly return rc in bufferProducerGraphicBufferInit(). 2017-12-27 18:52:53 -05:00
yellows8
e871eb9695 Added gfxGetFramebufferSize(). 2017-12-27 18:52:53 -05:00
yellows8
c80096e5cc Imported an enum from Android for use with bufferProducerConnect/bufferProducerDisconnect. 2017-12-27 18:52:53 -05:00
yellows8
824dadd291 Added better code for gpfifo handling which is disabled, currently broken with the data written into the gpfifo-data mem. Updated nvgfxEventWait(). Load the classnum for nvioctlChannel_AllocObjCtx() from gpu_characteristics. Added disabled code for gpfifo in gfx.c + added a comment. 2017-12-27 18:52:53 -05:00
yellows8
edf2d1417a Handle nvioctlChannel_ZCullBind() properly. 2017-12-27 18:52:53 -05:00
yellows8
0e1a90a7a9 Changed the RGBA8 define to RGBA8_MAXALPHA and adjusted it + moved it into gfx.h. Added RGBA8 define to gfx.h which is the same as the original except it now uses an input alpha param. Added a comment to gfx.c regarding width/height. 2017-12-27 18:52:53 -05:00
yellows8
945615ece3 Updated nvgfxEventWait() and nvioctlNvhostCtrl_EventWait(). Updated _gfxDequeueBuffer(). 2017-12-27 18:52:53 -05:00
yellows8
2db9a5fdb9 Imported enum for use with bufferProducerQuery(). Changed gfxGetDisplayResolution to static with adjusted name and removed it from the .h. Disabled _gfxGetDisplayResolution. Added disabled get-{resolution/width/height} code. Check fence->is_valid when calling nvgfxEventWait(), with the commented out line. 2017-12-27 18:52:52 -05:00
yellows8
4c1c1ee14b Parse bufferProducerConnect() parcel reply properly. Store the output QueueBufferOutput from bufferProducerConnect/bufferProducerQueueBuffer in gfx.c. 2017-12-27 18:52:52 -05:00
yellows8
63016db072 Updated bufferProducerFence. Updated nvgfxEventWait. Added better initialization validation to binder, etc. In bufferProducerDequeueBuffer(), use sizeof instead of a constant for the fence size. Updated g_gfxQueueBufferData. Fixed validation in _gfxGetNativeWindowID. Other changes. 2017-12-27 18:52:52 -05:00
yellows8
6569775e7d Added parcelReadFlattenedObject/parcelWriteFlattenedObject. Parse bufferProducerDequeueBuffer output properly. Handle bufferProducerQueueBuffer input/output properly. Updated vsync handling. Added a 3s delay for gfx-init. Updated g_gfxQueueBufferData, etc. 2017-12-27 18:52:52 -05:00
plutoo
8485facf99 Parcel refactor again 2017-12-27 18:52:52 -05:00
plutoo
12b2ba6eb6 Revert "Refactoring parcel a little, parcelTransact needs more work"
This reverts commit e97807ef293dc9456b5828235f4dee7716e8a7bc.
2017-12-27 18:52:52 -05:00
plutoo
806a75c841 More refactoring, renamed graphicsproducer -> bufferproducer 2017-12-27 18:52:52 -05:00
plutoo
7f2135754a Refactoring parcel a little, parcelTransact needs more work 2017-12-27 18:52:52 -05:00
plutoo
2fd13b5556 Moving ioctls to separate files 2017-12-27 18:52:39 -05:00
yellows8
41cd7bb725 Exit gfx properly. Adjusted the name for _gfxproducer_InterfaceDescriptor. 2017-12-27 18:50:16 -05:00
yellows8
e3d0c849ad Implemented {vi/gfx}GetDisplayResolution. Moved gfxGetFramebufferDisplayOffset into the .h as static inline. Added more comments to gfx.h. 2017-12-27 18:50:16 -05:00
yellows8
33c5181237 Added gfxSetDoubleBuffering(). Adjusted g_gfxCurrentBuffer updating. Imported console from libctru with adjustments for Switch. 2017-12-27 18:50:16 -05:00
yellows8
8f459cf958 Use u32 for gfxGetFramebuffer() width/height. Added gfxGetFramebufferDisplayOffset(). 2017-12-27 18:50:16 -05:00
yellows8
283fdabbf6 Renamed gfxproducerBufferInit to gfxproducerTegraBufferInit. Use an enum for the binder 'code' for this. Added comments for the BufferInitData structure. 2017-12-27 18:50:15 -05:00
yellows8
fbce1e8029 Use the output buffer value from gfxproducerDequeueBuffer() with gfxproducer calls. Set g_gfxCurrentBuffer in _gfxDequeueBuffer() with the output buffer value. Removed a comment. 2017-12-27 18:50:15 -05:00