summaryrefslogtreecommitdiff
path: root/linux-core/xgi_pcie.c
AgeCommit message (Collapse)Author
2008-03-17drm/pcigart: fix the pci gart to use the drm_pci wrapper.Dave Airlie
This is the correct fix for the RS690 and hopefully the dma coherent work. For now we limit everybody to a 32-bit DMA mask but it is possible for RS690 to use a 40-bit DMA mask for the GART table itself, and the PCIE cards can use 40-bits for the table entries. Signed-off-by: Dave Airlie <airlied@redhat.com>
2007-10-10Fix command list submission on big-endian.Ian Romanick
2007-10-03First round of byte-ordering fixes for PowerPC.Ian Romanick
This isn't 100% as command submission via PCI-e GART buffers doesn't work. I've hacked around that for the time being. This is essentially the code that was used at the POWER.org event to show Bimini.
2007-08-29Use ati_pcigart for PCI-e GART table handling.Ian Romanick
2007-08-14Eliminate unused / useless ioctls.Ian Romanick
2007-08-13Strobe magic 0xB03F register to flush PCI-e GART table.Ian Romanick
The original XGI kernel driver strobed 0xB03F each time a page was allocated to back a GART page. When the driver was converted to use the DRM SG interface, this code was lost. Returning it fixes a long standing issue where the X-server would work fine the first time, but acceleration commands would be ignored on the second X-server invocation.
2007-08-09Use DRM_MEMORYBARRIER() macro instead of mb().Ian Romanick
2007-08-09Use sman memory manager instead of internal version.Ian Romanick
2007-08-09Unify alloc and free ioctls.Ian Romanick
The DRM_XGI_PCIE_ALLOC and DRM_XGI_FB_ALLOC ioctls (and the matching free ioctls) are unified to DRM_XGI_ALLOC. The desired memory region is selected by xgi_mem_alloc::location. The region is magically encoded in xgi_mem_alloc::index, which is used to release the memory. Bump to version 0.11.0. This update requires a new DDX.
2007-08-06Unify infrastructure for freeing on-card / GART memory.Ian Romanick
2007-08-06Refactor xgi_(fb|pcie)_free_all into xgi_free_all.Ian Romanick
2007-08-06Replace per-heap semaphores with drm_device::struct_mutex.Ian Romanick
2007-08-06Unify infrastructure for allocating (not yet freeing) on-card / GART memory.Ian Romanick
2007-08-06Eliminate unnecessary function xgi_pcie_free_locked.Ian Romanick
2007-08-06Finish removing allocation "owner" infrastructure.Ian Romanick
2007-08-06Eliminate allocation "owner" usage.Ian Romanick
2007-07-27Convert to new ioctl interface between core DRM and device-specific module.Ian Romanick
2007-07-26Eliminate use of DRM_ERR.Ian Romanick
2007-07-26Eliminate unnecessary (and now wrong) call gto drm_sg_free.Ian Romanick
2007-07-24Fix license formatting.Ian Romanick
2007-07-19Rework xgi_(pcie|fb)_free_all to prevent deadlock.Ian Romanick
2007-07-19Initial pass at converting driver to DRM infrastructure.Ian Romanick
2007-07-16Clean ups (primarilly log messages) in xgi_test_rwinkernel.Ian Romanick
2007-07-16Eliminate several useless ioctls and associated cruft.Ian Romanick
The ioctlss XGI_ESC_DEVICE_INFO, XGI_ESC_MEM_COLLECT, XGI_ESC_PCIE_CHECK, XGI_ESC_GET_SCREEN_INFO, XGI_ESC_PUT_SCREEN_INFO, XGI_ESC_MMIO_INFO, and XGI_ESC_SAREA_INFO, are completely unnecessary. The will be doubly useless when the driver is converted to the DRM infrastructure.
2007-07-09Convert occurances of U32 to other types.Ian Romanick
Most occurances of U32 were converted to u32. These are cases where the data represents something that will be written to the hardware. Other cases were converted to 'unsigned int'. U32 was the last type in xgi_types.h, so that file is removed.
2007-07-09Merge xgi_mem_req and xgi_mem_alloc into a single type.Ian Romanick
These two structures were used as the request and reply for certain ioctls. Having a different type for an ioctl's input and output is just wierd. In addition, each structure contained fields (e.g., pid) that had no business being there. This change requires updates to user-space.
2007-06-29Convert xgi_mem_location enum values to less generic names.Ian Romanick
2007-06-29Convert open coded list iterators to either list_for_each_entry or ↵Ian Romanick
list_for_each_entry_safe
2007-06-29Clean up xgi_pcie_heap_checkIan Romanick
The whole purpose of xgi_pcie_heap_check is to log information about entries on the used_list. If XGI_DEBUG is not set, it doesn't print anything. Therefore we can #ifdef the whole function body. Convert open-code list iteration to use list_for_each_entry.
2007-06-29Eliminate structure typedefsIan Romanick
Documentation/CodingStyle says that 'typedef struct foo foo_t' is evil. I tend to agree. Elminate all uses of such construct.
2007-06-29Fix return type of xgi_find_pcie_block.Ian Romanick
This function used to return 'void *', which was then cast to 'xgi_pcie_block_t *' at the only caller. I changed the return type to 'struct xgi_pcie_block_s *' and removed the explicit cast.
2007-06-28Minor clean up of variable declarations in xgi_find_pcie_virt.Ian Romanick
2007-06-28Clean up debug log messages in xgi_find_pcie_block.Ian Romanick
2007-06-28Convert comment header of xgi_find_pcie_virt to kernel doc format.Ian Romanick
2007-06-26Clean up warnings about unused variables and functions.Ian Romanick
2007-06-26dos2unix and LindentIan Romanick
2007-06-26Initial XP10 code drop from XGI.Ian Romanick
See attachment 10246 on https://bugs.freedesktop.org/show_bug.cgi?id=5921