| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
- Wrapped the buffer and texture create/destroy/transfer/... functions
using u_resource, which is then used to implement the resource functions.
- Implemented texture transfers.
I left the buffer and texture transfers separate because one day we'll
need a special codepath for textures.
- Added index_bias to the draw_*elements functions.
- Removed nonexistent *REP and *FOR instructions.
- Some pipe formats have changed channel ordering, so I've removed/fixed
nonexistent ones.
- Added stubs for create/set/destroy sampler views.
- Added a naive implementation of vertex elements state (new CSO).
- Reworked {texture,buffer}_{from,to}_handle.
- Reorganized winsys files, removed dri,egl,python directories.
- Added a new build target dri-r600.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attached output from commit.
delete mode 100644 src/gallium/winsys/drm/SConscript
delete mode 100644 src/gallium/winsys/drm/i965/SConscript
delete mode 100644 src/gallium/winsys/drm/intel/Makefile
delete mode 100644 src/gallium/winsys/drm/intel/SConscript
delete mode 100644 src/gallium/winsys/drm/nouveau/Makefile
delete mode 100644 src/gallium/winsys/drm/radeon/Makefile
delete mode 100644 src/gallium/winsys/drm/radeon/SConscript
delete mode 100644 src/gallium/winsys/drm/vmware/Makefile
delete mode 100644 src/gallium/winsys/drm/vmware/SConscript
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/Makefile (82%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/SConscript (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_api.c (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_batchbuffer.c (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_buffer.c (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_fence.c (100%)
rename src/gallium/winsys/{drm/intel/gem => i915/drm}/intel_drm_winsys.h (100%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/Makefile (78%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/SConscript (100%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_api.c (98%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_buffer.c (100%)
rename src/gallium/winsys/{drm/i965/gem => i965/drm}/i965_drm_winsys.h (100%)
rename src/gallium/winsys/{drm => }/i965/xlib/Makefile (97%)
rename src/gallium/winsys/{drm => }/i965/xlib/xlib_i965.c (100%)
rename src/gallium/winsys/{drm => }/nouveau/drm/Makefile (79%)
rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_dri.h (100%)
rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_drm_api.c (100%)
rename src/gallium/winsys/{drm => }/nouveau/drm/nouveau_drm_api.h (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/Makefile (79%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/SConscript (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_buffer.h (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm.c (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm.h (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_drm_buffer.c (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_r300.c (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_r300.h (100%)
rename src/gallium/winsys/{drm/radeon/core => radeon/drm}/radeon_winsys.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/Makefile (63%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/SConscript (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_buffer.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_buffer.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_context.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_context.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_fence.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_fence.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_dri.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_ioctl.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_pools.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_screen_svga.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_surface.c (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmw_surface.h (100%)
rename src/gallium/winsys/{drm/vmware/core => svga/drm}/vmwgfx_drm.h (100%)
rename src/gallium/winsys/{drm/i965 => sw}/Makefile (61%)
copy src/gallium/winsys/{drm/sw => sw/drm}/Makefile (73%)
rename src/gallium/winsys/{drm/sw => sw/drm}/sw_drm_api.c (98%)
rename src/gallium/winsys/{drm/sw => sw/drm}/sw_drm_api.h (100%)
rename src/gallium/winsys/{ => sw}/gdi/SConscript (100%)
rename src/gallium/winsys/{ => sw}/gdi/gdi_sw_winsys.c (100%)
rename src/gallium/winsys/{ => sw}/gdi/gdi_sw_winsys.h (100%)
rename src/gallium/winsys/{ => sw}/null/Makefile (78%)
rename src/gallium/winsys/{ => sw}/null/SConscript (100%)
rename src/gallium/winsys/{ => sw}/null/null_sw_winsys.c (100%)
rename src/gallium/winsys/{ => sw}/null/null_sw_winsys.h (100%)
rename src/gallium/winsys/{drm/sw => sw/wrapper}/Makefile (65%)
rename src/gallium/winsys/{drm/sw => sw/wrapper}/wrapper_sw_winsys.c (100%)
rename src/gallium/winsys/{drm/sw => sw/wrapper}/wrapper_sw_winsys.h (100%)
rename src/gallium/winsys/{ => sw}/xlib/Makefile (79%)
rename src/gallium/winsys/{ => sw}/xlib/SConscript (100%)
rename src/gallium/winsys/{ => sw}/xlib/xlib_sw_winsys.c (100%)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attached output from git commit:
rename src/gallium/{winsys/drm/intel/xorg => targets/xorg-i915}/Makefile (95%)
rename src/gallium/{winsys/drm/intel/xorg => targets/xorg-i915}/intel_xorg.c (98%)
rename src/gallium/{winsys/drm/i965/xorg => targets/xorg-i965}/Makefile (78%)
rename src/gallium/{winsys/drm/i965/xorg => targets/xorg-i965}/intel_xorg.c (98%)
rename src/gallium/{winsys/drm/nouveau/xorg => targets/xorg-nouveau}/Makefile (96%)
rename src/gallium/{winsys/drm/nouveau/xorg => targets/xorg-nouveau}/nouveau_xorg.c (98%)
rename src/gallium/{winsys/drm/radeon/xorg => targets/xorg-radeon}/Makefile (73%)
rename src/gallium/{winsys/drm/radeon/xorg => targets/xorg-radeon}/radeon_xorg.c (98%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/Makefile (97%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/SConscript (100%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_driver.h (100%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_hook.h (100%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_ioctl.c (99%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_screen.c (100%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_video.c (99%)
rename src/gallium/{winsys/drm/vmware/xorg => targets/xorg-vmwgfx}/vmw_xorg.c (100%)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Atteched output from git commit:
rename src/gallium/{winsys/drm => targets}/Makefile.egl (100%)
rename src/gallium/{winsys/drm/intel/egl => targets/egl-i915}/Makefile (86%)
rename src/gallium/{winsys/drm/i965/egl => targets/egl-i915}/dummy.c (100%)
rename src/gallium/{winsys/drm/i965/egl => targets/egl-i965}/Makefile (86%)
rename src/gallium/{winsys/drm/intel/egl => targets/egl-i965}/dummy.c (100%)
rename src/gallium/{winsys/drm/nouveau/egl => targets/egl-nouveau}/Makefile (88%)
rename src/gallium/{winsys/drm/nouveau/egl => targets/egl-nouveau}/dummy.c (100%)
rename src/gallium/{winsys/drm/radeon/egl => targets/egl-radeon}/Makefile (87%)
rename src/gallium/{winsys/drm/radeon/egl => targets/egl-radeon}/dummy.c (100%)
create mode 100644 src/gallium/targets/egl-swrast/Makefile
create mode 100644 src/gallium/targets/egl-swrast/swrast_glue.c
rename src/gallium/{winsys/drm/vmware/egl => targets/egl-vmwgfx}/Makefile (86%)
rename src/gallium/{winsys/drm/swrast/egl => targets/egl-vmwgfx}/dummy.c (100%)
delete mode 100644 src/gallium/winsys/drm/swrast/Makefile
delete mode 100644 src/gallium/winsys/drm/swrast/core/Makefile
delete mode 100644 src/gallium/winsys/drm/swrast/core/swrast_drm_api.c
delete mode 100644 src/gallium/winsys/drm/swrast/egl/Makefile
delete mode 100644 src/gallium/winsys/drm/vmware/egl/dummy.c
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Attached output from git commit:
rename src/gallium/{winsys/drm/Makefile.template => targets/Makefile.dri} (100%)
rename src/gallium/{winsys/drm/intel/dri => targets/dri-i915}/Makefile (75%)
rename src/gallium/{winsys/drm/intel/dri => targets/dri-i915}/SConscript (100%)
rename src/gallium/{winsys/drm/i965/dri => targets/dri-i965}/Makefile (76%)
rename src/gallium/{winsys/drm/i965/dri => targets/dri-i965}/SConscript (100%)
rename src/gallium/{winsys/drm/nouveau/dri => targets/dri-nouveau}/Makefile (86%)
rename src/gallium/{winsys/drm/radeon/dri => targets/dri-radeong}/Makefile (85%)
rename src/gallium/{winsys/drm/radeon/dri => targets/dri-radeong}/SConscript (100%)
rename src/gallium/{winsys/drm/vmware/dri => targets/dri-vmwgfx}/Makefile (85%)
rename src/gallium/{winsys/drm/vmware/dri => targets/dri-vmwgfx}/SConscript (100%)
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Currently the test link uses -lGL to define the glapi symbols.
This makes it impossible to build DRI drivers on systems without
Mesa installed and without building the libGL from the Mesa tree
first.
Some automated build systems trigger this problem.
This commit removes -lGL and instead adds a dummy implementation of
glapi to dri_test.c
This, along with Kristian's commit, should fix all known regressions
due to the addition of unresolved symbol checking.
|
|
|
|
| |
This will make sure we pick up libdrm_$(chipset).so from the right place.
|
|
|
|
| |
Using just mv may cause prompts on some systems/configurations.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is a different approach to solving this problem that the patch
I previously posted, and unlike that, should not cause any problems.
Right now undefined symbols in DRI drivers will still allow the
build to succeed.
As a result, people modifying drivers they cannot test risk creating
unloadable drivers with no easy way of automatically avoiding it.
For instance, the modifications to nv50 for context transfers caused
such an issue recently.
Unfortunately, just adding -Wl,--no-undefined doesn't work, because
the DRI drivers depend on glapi symbols, but do not depend on
libGL.so.1
Adding -lGL is not the correct solution since DRI drivers are not loaded
just by libGL, but also by X and possibly by other clients.
So, this patch simply tries to build an executable linked to the DRI
driver and to libGL.
If the DRI driver contains any undefined symbols not satisfied by its
dependencies or by libGL, this will fail.
This solution does not alter the built drivers, and does not significantly
slow down the build process.
All classic DRI drivers as well as all the Gallium drivers with configure
options compiled successfully with this change.
Thanks to Xavier Chantry <[email protected]> and
Michel Daenzer <[email protected]> for helping with this.
Signed-off-by: Luca Barbieri <[email protected]>
Acked-by: Brian Paul <[email protected]>
|
| |
|
|
|
|
| |
May or may not be responsible for slight increases in ipers FPS.
|
|
|
|
|
|
| |
It requires DRM 2.1.0 (e.g. kernel 2.6.34) and is disabled on older ones.
Finally, the texture tiling implementation is now complete. Uff.
|
| |
|
| |
|
|
|
|
| |
This reverts commit 97a694e2211dc804090f282d8e096c028f29579f.
|
|
|
|
| |
This reverts commit f87a5f6499f51f651c2a9f2d4682875b22926905.
|
|
|
|
| |
This reverts commit 5d524cce9c4fcc18ed977801d59ba7bb911020db.
|
|
|
|
| |
This partially reverts commit f87a5f6499f51f651c2a9f2d4682875b22926905.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
Okay need to revist the whole OQ stuff anyways, glean test asserts
which is never good.
I'm liking the cached bufmgr restrictions less and less, I think I'll
probably play with the fence and/or busy stuff ASAP and try and clean it up.
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
|
| |
This adds the cached bufmgr for vertex/index buffers on top of the kernel
manager.
Signed-off-by: Dave Airlie <[email protected]>
|
| |
|
|
|
|
|
| |
Slight memory savings, but more importantly also avoids a potential NULL
dereference.
|
|
|
|
|
|
|
|
| |
If we change the tiling on a buffer we need to flush it, the old
radeon_buffer.c code had this but it crossed streams when I ported to
radeon_drm_buffer.c and I missed it. Should fix some piglit regressions.
Signed-off-by: Dave Airlie <[email protected]>
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This creates a cleaner winsys and drop the simple screen stuff.
It makes r300g use pb_bufmgr structs.
It also tries to avoid overheads from mapping too often.
v5: clean warnings
v6: break out of cache check on first buffer - since most likely
the first busy one implies all after it are busy.
v7: cleanup a bit
v8-merged: drop cman for now to just get all the interface changes in first.
rework to changes that happened upstream
Signed-off-by: Dave Airlie <[email protected]>
|
|
|
|
|
|
|
|
|
|
|
| |
This is the last nvfx unification patch.
nv[34]0_fragtex.c are moved to the common directory
nv[34]0_shader.h are renamed to nv[34]0_vertprog.h and moved to
the common directory
The separate nv30 and nv40 directories are removed from the build
system
|
|
|
|
|
|
| |
The files have the same structure but are substantially different.
They are unified with appropriate conditionals.
|
|
|
|
|
|
|
| |
Will be used to hold source files unified between nv30 and nv40.
Eventually all nv30 and nv40 code will be moved there and the
nv30 and nv40 directories will be removed.
|
|
|
|
|
|
|
|
|
| |
E.g. when mapping buffers could flush CS or cause waiting
for a busy buffer.
The side effect of this is it also fixes progs/demos/arbocclude however
a separate fix should be proposed to address this issue in other cases
it might occur.
|
|\ |
|
| | |
|
| |
| |
| |
| |
| |
| | |
This reverts commit 2d56d0839e6db0861131893d67fe23734800085a.
Never actually used.
|
| |
| |
| |
| |
| | |
The libraries have circular dependencies. Use --start-group and
--end-group when producing the final shared libraries.
|
| |
| |
| |
| |
| | |
Several targets may want to reuse this code. It's pretty simple, not
sure if this is really a win.
|
|\ \
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Conflicts:
src/gallium/drivers/llvmpipe/lp_setup.c
src/gallium/drivers/softpipe/sp_texture.c
src/gallium/drivers/softpipe/sp_winsys.h
src/gallium/state_trackers/egl/common/egl_g3d.c
src/gallium/state_trackers/egl/x11/native_x11.c
src/gallium/state_trackers/egl/x11/native_x11.h
src/gallium/state_trackers/egl/x11/native_ximage.c
|
| |\ \
| | |/
| |/| |
|
| | | |
|
| | |
| | |
| | |
| | | |
Not the best conversion that could be done.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Introduce a new shared usage and rename primary to scanout.
The display target usage is more of a windows concept and
doesn't mean the same thing as shared. Display target means
that the surface should be presentable, for softpipe this
means that it should be backed by a hardware buffer.
|
|/ / |
|
|/ |
|