- 31 8月, 2009 2 次提交
-
-
由 Dave Airlie 提交于
Initially I always meant this code to be shared, but things ran away from me before I got to it. This refactors the i915 and radeon kms fbdev interaction layers out into generic helpers + driver specific pieces. It moves all the panic/sysrq enhancements to the core file, and stores a linked list of kernel fbs. This could possibly be improved to only store the fb which has fbcon on it for panics etc. radeon retains some specific codes used for a big endian workaround. changes: fix oops in v1 fix freeing path for crtc_info Reviewed-by: NJesse Barnes <jbarnes@virtuousgeek.org> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Maarten Maathuis 提交于
- The symbol was already exported. Signed-off-by: NMaarten Maathuis <madman2003@gmail.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 27 8月, 2009 2 次提交
-
-
由 Pekka Paalanen 提交于
Several functions in the GEM kernel API used int as handle type, but user API has it __u32 which is also the intended type. Replace int with u32. Signed-off-by: NPekka Paalanen <pq@iki.fi> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Dave Airlie 提交于
This merges the TTM and drm cache flushing into one file in the drm core. Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 19 8月, 2009 7 次提交
-
-
由 Thomas Hellstrom 提交于
Common resources, like memory accounting and swap lists should be global and not per device. Introduce a struct ttm_bo_global to accomodate this, and register it with sysfs. Add a small sysfs interface to return the number of active buffer objects. Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com> Signed-off-by: NDave Airlie <airlied@linux.ie>
-
由 Thomas Hellstrom 提交于
Use inclusive zones to simplify accounting and its sysfs representation. Use DMA32 accounting where applicable. Add a sysfs interface to make the heuristically determined limits readable and configurable. Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com> Signed-off-by: NDave Airlie <airlied@linux.ie>
-
由 Thomas Hellstrom 提交于
Export utility functions for drivers to add specialized devices in the sysfs drm class subdirectory. Initially this will be needed form TTM to add a virtual device that handles power management. Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com> Signed-off-by: NDave Airlie <airlied@linux.ie>
-
由 Pekka Paalanen 提交于
A micro-optimization on the function ttm_kmap_obj_virtual(). By defining the values of enum ttm_bo_kmap_obj::bo_kmap_type to have a bit indicating iomem, size of the function ttm_kmap_obj_virtual() will be reduced by 16 bytes on x86_64 (gcc 4.1.2). ttm_kmap_obj_virtual() may be heavily used, when buffer objects are accessed via wrappers, that work for both kinds of memory addresses: iomem cookies and kernel virtual. Signed-off-by: NPekka Paalanen <pq@iki.fi> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Pekka Paalanen 提交于
Cc: Francisco Jerez <currojerez@riseup.net> Signed-off-by: NPekka Paalanen <pq@iki.fi> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Jesse Barnes 提交于
Now that we're using the scaling property in the Intel driver I noticed that the names were a bit confusing. I've corrected them according to our discussion on IRC and the mailing list, though I've left out potential new additions for a new scaling property with an integer (or two) for the scaling factor. None of the drivers implement that today, but if someone wants to do it, I think it could be done with the addition of a single new type and a new property to describe the scaling factor in the X and Y directions. Signed-off-by: NJesse Barnes <jbarnes@virtuousgeek.org> Acked-by: NAlex Deucher <alexdeucher@gmail.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Dave Airlie 提交于
Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 17 8月, 2009 1 次提交
-
-
由 Dave Airlie 提交于
This implements the busy ioctl along with a current domain check. returns 0 or -EBUSY puts the current domain no matter what the answer. Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 13 8月, 2009 1 次提交
-
-
由 Francisco Jerez 提交于
Overscan, saturation, hue. Used in the nouveau driver for GPUs with integrated TV encoders. Signed-off-by: NFrancisco Jerez <currojerez@riseup.net> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 05 8月, 2009 1 次提交
-
-
由 Alex Deucher 提交于
These are new AMD IGP chips Signed-off-by: NAlex Deucher <alexdeucher@gmail.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 04 8月, 2009 8 次提交
-
-
由 Francisco Jerez 提交于
Namely "brightness", "contrast" and "flicker reduction". Signed-off-by: NFrancisco Jerez <currojerez@riseup.net> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Francisco Jerez 提交于
Signed-off-by: NFrancisco Jerez <currojerez@riseup.net> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Francisco Jerez 提交于
The existing TV connector types are often unsuitable either because there is no way to probe them until they're actually plugged in or because they can change during run time (e.g. 7-pin DIN connectors that behave as S-Video, Component, Composite or SCART depending on the adaptor plugged in). Signed-off-by: NFrancisco Jerez <currojerez@riseup.net> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Francisco Jerez 提交于
Define some helper functions to make easier to detach a KMS encoder implementation from the drm module of the GPU it's used in. This is mainly useful for some external I2C encoders known to be present on cards with GPUs from several different manufacturers. Signed-off-by: NFrancisco Jerez <currojerez@riseup.net> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Zhao Yakui 提交于
Add the explanation about DRM debug level in the drmP header file. This is to explain how/where to use the different DRM debug level. Signed-off-by: NZhao Yakui <yakui.zhao@intel.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Zhao Yakui 提交于
Two macro definitions of DRM_DEBUG_KMS/MODE can be used to add the debug info related with KMS. It is confusing. So remove the macro definition of DRM_DEBUG_MODE. Instead it can be replaced by the DRM_DEBUG_KMS. Signed-off-by: NZhao Yakui <yakui.zhao@intel.com> Acked-by: NIan Romanick <ian.d.romanick@intel.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Zhao Yakui 提交于
We will have to add a prefix when using the macro defintion of DRM_DEBUG_KMS /DRM_DEBUG_DRIVER/MODE. It is not convenient. We should use the DRM_NAME as default prefix. So remove the prefix in the macro definition of DRM_DEBUG_KMS/DRIVER/MODE. Signed-off-by: NZhao Yakui <yakui.zhao@intel.com> Acked-by: NIan Romanick <ian.d.romanick@intel.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Alex Deucher 提交于
Signed-off-by: NAlex Deucher <alexdeucher@gmail.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 29 7月, 2009 1 次提交
-
-
由 Dave Airlie 提交于
This adds new set/get tiling interfaces where the pitch and macro/micro tiling enables can be set. Along with a flag to decide if this object should have a surface when mapped. The only thing we need to allocate with a mapped surface should be the frontbuffer. Note rotate scanout shouldn't require one, and back/depth shouldn't either, though mesa needs some fixes. It fixes the TTM interfaces along Thomas's suggestions, and I've tested the surface stealing code with two X servers and not seen any lockdep issues. I've stopped tiling the fbcon frontbuffer, as I don't see there being any advantage other than testing, I've left the testing commands in there, just flip the fb_tiled to true in radeon_fb.c Open: Can we integrate endian swapping in with this? Future features: texture tiling - need to relocate texture registers TXOFFSET* with tiling info. This also merges Michel's cleanup surfaces regs at init time patch even though it makes sense on its own, this patch really relies on it. Some PowerMac firmwares set up a tiling surface at the beginning of VRAM which messes us up otherwise. that patch is: Signed-off-by: NMichel Dänzer <daenzer@vmware.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 15 7月, 2009 5 次提交
-
-
由 Dave Airlie 提交于
This add support for using dma32 memory on gpus that really need it. Currently IGPs are left without DMA32 but we might need to change that unless we can fix rs690. Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Thomas Hellstrom 提交于
Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Zhao Yakui 提交于
Add the GTF algorithm in kernel space. And this function can be called to generate the required modeline. I copied it from the file of xserver/hw/xfree86/modes/xf86gtf.c. What I have done is to translate it by using integer calculation. This is to avoid the float-point calculation in kernel space. At the same tie I also refer to the function of fb_get_mode in drivers/video/fbmon.c Signed-off-by: NZhao Yakui <yakui.zhao@intel.com> Signed-off-by: NDave Airlie <airlied@linux.ie>
-
由 Zhao Yakui 提交于
Add the CVT algorithm in kernel space. And this function can be called to generate the required modeline. I copied it from the file of xserver/hw/xfree86/modes/xf86cvt.c. What I have done is to translate it by using integer calculation. This is to avoid the float-point calculation in kernel space. [airlied:- cleaned up some bits] Signed-off-by: NZhao Yakui <yakui.zhao@intel.com> Signed-off-by: NDave Airlie <airlied@linux.ie>
-
由 Alex Deucher 提交于
Also, fix ordering for a couple others Signed-off-by: NAlex Deucher <alexdeucher@gmail.com> Signed-off-by: NDave Airlie <airlied@linux.ie>
-
- 24 6月, 2009 1 次提交
-
-
由 Michel Dänzer 提交于
Looks like I managed to mess up most shifts when converting from bitfields. :( The patch below works on my Thinkpad T500 (as well as on my PowerBook, where the previous change worked as well, maybe out of luck...). I'd appreciate more testing and eyes looking over it though. Signed-off-by: NMichel Dänzer <daenzer@vmware.com> Tested-by: NMichael Pyne <mpyne@kde.org> Signed-off-by: NDave Airlie <airlied@linux.ie>
-
- 19 6月, 2009 3 次提交
-
-
由 Michel Dänzer 提交于
Mostly replacing bitfields with explicit masks and shifts. Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Thomas Hellstrom 提交于
also for the atomic path by using a common code-path. Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Eric Anholt 提交于
It hasn't been used in ages, and having the user tell your how much memory is being freed at free time is a recipe for disaster even if it was ever used. Signed-off-by: NEric Anholt <eric@anholt.net>
-
- 15 6月, 2009 3 次提交
-
-
由 Jerome Glisse 提交于
Add kernel modesetting support to radeon driver, use the ttm memory manager to manage memory and DRM/GEM to provide userspace API. In order to avoid backward compatibility issue and to allow clean design and code the radeon kernel modesetting use different code path than old radeon/drm driver. When kernel modesetting is enabled the IOCTL of radeon/drm driver are considered as invalid and an error message is printed in the log and they return failure. KMS enabled userspace will use new API to talk with the radeon/drm driver. The new API provide functions to create/destroy/share/mmap buffer object which are then managed by the kernel memory manager (here TTM). In order to submit command to the GPU the userspace provide a buffer holding the command stream, along this buffer userspace have to provide a list of buffer object used by the command stream. The kernel radeon driver will then place buffer in GPU accessible memory and will update command stream to reflect the position of the different buffers. The kernel will also perform security check on command stream provided by the user, we want to catch and forbid any illegal use of the GPU such as DMA into random system memory or into memory not owned by the process supplying the command stream. This part of the code is still incomplete and this why we propose that patch as a staging driver addition, future security might forbid current experimental userspace to run. This code support the following hardware : R1XX,R2XX,R3XX,R4XX,R5XX (radeon up to X1950). Works is underway to provide support for R6XX, R7XX and newer hardware (radeon from HD2XXX to HD4XXX). Authors: Jerome Glisse <jglisse@redhat.com> Dave Airlie <airlied@redhat.com> Alex Deucher <alexdeucher@gmail.com> Signed-off-by: NJerome Glisse <jglisse@redhat.com> Signed-off-by: NDave Airlie <airlied@redhat.com> Signed-off-by: NAlex Deucher <alexdeucher@gmail.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Thomas Hellstrom 提交于
TTM is a GPU memory manager subsystem designed for use with GPU devices with various memory types (On-card VRAM, AGP, PCI apertures etc.). It's essentially a helper library that assists the DRM driver in creating and managing persistent buffer objects. TTM manages placement of data and CPU map setup and teardown on data movement. It can also optionally manage synchronization of data on a per-buffer-object level. TTM takes care to provide an always valid virtual user-space address to a buffer object which makes user-space sub-allocation of big buffer objects feasible. TTM uses a fine-grained per buffer-object locking scheme, taking care to release all relevant locks when waiting for the GPU. Although this implies some locking overhead, it's probably a big win for devices with multiple command submission mechanisms, since the lock contention will be minimal. TTM can be used with whatever user-space interface the driver chooses, including GEM. It's used by the upcoming Radeon KMS DRM driver and is also the GPU memory management core of various new experimental DRM drivers. Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com> Signed-off-by: NJerome Glisse <jglisse@redhat.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Dave Airlie 提交于
These aren't used that much on r600, but may be needed in the future, so get them correct now. Signed-off-by: NDave Airlie <airlied@redhat.com>
-
- 12 6月, 2009 5 次提交
-
-
由 Jerome Glisse 提交于
Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Jerome Glisse 提交于
this is a TTM preparation patch, it rearranges the mm and add operations needed to do mm operations in atomic context. Signed-off-by: NThomas Hellstrom <thellstrom@vmware.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Alex Deucher 提交于
This adds the PCI IDs for the rv790 which are equiv to the rv770. Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Alex Deucher 提交于
This adds drm support for the RV740 family of chips to the r600 support code. Signed-off-by: NDave Airlie <airlied@redhat.com>
-
由 Kristian Høgsberg 提交于
Previously we would check size instead of size * nmemb, and so would never hit the vmalloc path. Also add integer overflow check as in kcalloc, and allocate GFP_ZERO pages instead of memset()ing them. Signed-off-by: NKristian Høgsberg <krh@redhat.com> Signed-off-by: NDave Airlie <airlied@redhat.com>
-