Age | Commit message (Collapse) | Author |
|
Add etna_ prefix to utility functions to make it clearer where they come
from.
|
|
I'm not sure this is defined by the GL spec, but makes it behave
more like other GL drivers and fixes missile cam in d2x.
|
|
- Change the order in `reset_context` as well
- Clobber PS INPUTS state when MSAA samples changed to make sure it's
always written, as we don't know the current value anymore.
|
|
It is needed when profiling support is enabled.
|
|
These are now internal to the kernel driver, no longer part of the ABI.
|
|
|
|
Changing the MSAA mode clobbers PS.INPUT_COUNT.
Hence make sure that it is set before all other state.
|
|
|
|
There was an error when using gpu-trace on 64 bit host systems
|
|
Commit 2fcaa58c3e0e763c78bb1d28a3d63380f5e65ce2 introduced an additional
(optional) queue parameter to etna_vidmem_unlock. Update the remaining
callsite in cube_etna2_gc2000.
|
|
|
|
Flushing TS while still rendering to color/depth can sometimes hang,
so flush TS after flushing color and depth instead of before.
|
|
- Fix number of uniforms limit check
- Fix over-eager passthrough optimization in `etna_compile_pass_optimize_outputs`
- Comment updates and clarifications
|
|
|
|
These headers contain 2384 lines, while the original include_v4
contains 20937 lines worth of headers.
The compile time options that affect the ABI have been reduced to
four: VIVANTE_NO_3D, VIVANTE_PROFILER, gcdSECURE_USER and gcdDEBUG.
See gc_hal_options.h for details.
The individual steps in stripping the headers can be found in the
jz-3.10 branch of the GCW Zero kernel repository:
https://github.com/gcwnow/linux/commits/jz-3.10
|
|
|
|
For now, use ETNA_DEBUG="msaa4x" or ETNA_DEBUG="msaa2x" to force usage
of MSAA for screen surface (MESA may have its own way for this...).
|
|
Makes state dumps somewhat more readable.
|
|
Update old replay demo to run on cubox, to check how to get MSAA to work.
|
|
The code to set up the TS to the source surface before blit should be safe to use now.
Only change TS if it differs from the desired state (so if necessary).
Some flushing may still be needed when changing TS value we'll see
that soon enough.
|
|
This includes `no_ts` to disable tile status, and `cflush_all` to
flush before every state update and draw call.
|
|
Allow writing the RS command to another place except inside the
etna_surface structure (mainly useful for debugging, and preparing to
use the RS in other places such as blitting).
|
|
Fixes the build when GCABI=v4.
There is no gc_hal_kernel_context.h in include_v4/, but the only
thing from that header that was actually required was the include
of gc_hal_kernel_buffer.h, so include that directly.
|
|
Causes corruption (blocking) issues in glquake when
TS is enabled.
|
|
This appears to fix most of the TS problems.
Re-enable TS again for color and depth framebuffer surfaces.
Depth still seems to have some problems (visible in quake as
see-through-walls).
|
|
|
|
|
|
We're not managing it correctly resulting in corruption. Better to trade
some performance (not even sure how much) for correctness, so disable
it.
|
|
There seems to be some corruption caused by changing certain states
without a cache flush. This is especially visible in quake.
|
|
Number of units was wrong. This fixes shadows in quake.
|
|
Should fix lightmap corruption in quake.
|
|
|
|
Fix typo in driver version check
|
|
|
|
Add GPL drivers for the Chromecast (eureka) board (GC1000)
|
|
|
|
|
|
For some reason this was not defined, even though the v4 kernel
structure has the concerning fields
|
|
Fix incorrect strcmp() return value check
|
|
|
|
Try to find glquake lightmap bug...
|
|
Return NULL in this case instead of a mock object to signal error.
No rendering will be done with a NULL vertex element specification.
|
|
|
|
whitespace only changes
|
|
It is important to initialize the TS to zero, as random pattern
can result in crashes. Do this on the CPU as this only happens once
per surface anyway and it's a small area, so it may not be worth
queuing this to the GPU.
|
|
This commit changes scissor state in reset to _FIXP.
|
|
monotonous time should be more appropriate for a profiling tool,
however it is not always available
|
|
|
|
|
|
While changing this I noticed that the transfer pool was not getting
freed on pipe destroy, this commit fixes this small memory leak as well.
|