summaryrefslogtreecommitdiff
path: root/linux-core/xgi_drv.c
AgeCommit message (Collapse)Author
2007-08-09Mask off correct bits in M2REG_AUTO_LINK_STATUS for interrupt handling.Ian Romanick
2007-08-09Minor clean up of IRQ code. Much, much more to come.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-09Associate master file pointer with command list buffer.Ian Romanick
Pass the master's file pointer, as supplied to xgi_bootstrap, to xgi_cmdlist_initialize. Associate that pointer with the memory allocated for the command list buffer. By doing this the memory will be automatically cleaned up when the master closes the device. This allows the removal of some clean up code.
2007-08-06Release client memory in reclaim_buffers_idlelocked instead of preclose.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-07-30Move additional GE initialization into the kernel.Ian Romanick
This code comes directly from the X server.
2007-07-30Fix GE shut-down sequence.Ian Romanick
When the GE is shut down, an empty command packet without a begin-link must be sent. After this command is sent, wait for the hardware to go idle. Finally, turn off the GE and disable MMIO.
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-24Fix license formatting.Ian Romanick
2007-07-24Fix flags for serveral ioctls.Ian Romanick
2007-07-24Fix bug preventing X server from restarting.Ian Romanick
The core DRM lastclose routine automatically destroys all mappings and releases SG memory. XP10 DRM and DDX assumed this data stayed around until module unload. xgi_bootstrap was reworked to recreate all these mappings. In addition, the drm_addmap for the GART backing store was moved into the kernel. This causes a change to the ioctl protocol and a version bump.
2007-07-23Eliminate XGI_CHECK_PCI_CONFIG.Ian Romanick
Based on review comments from airlied, XGI_CHECK_PCI_CONFIG is removed. He believes (and I tend to agree) that this is a largely unnecessary workaround for a bug elsewhere.
2007-07-19Delete unused variable in xgi_driver_load.Ian Romanick
2007-07-19Fix error handing related to xgi_cmdlist_initialize.Ian Romanick
xgi_cmdlist_initialize wasn't correctly checking for errors from xgi_pcie_alloc. Furthermore, xgi_bootstrap, the one caller of xgi_cmdlist_initialize, wasn't check its return value.
2007-07-19Move MMIO drm_addmap (and code that depends on it) to xgi_bootstrap.Ian Romanick
For reasons that I don't understand, the drm_addmap call would succeed in xgi_driver_load, but writes to the map later would oops. Moving it to xgi_bootstrap fixes this problem.
2007-07-19Initial pass at converting driver to DRM infrastructure.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-09Eliminiate fields in xgi_info that are duplicates of fields in pci_dev.Ian Romanick
2007-07-09Adjust the types of the fields of xgi_aperture.Ian Romanick
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-07-05Remove XGI_IOCTL_CPUID and associated cruft.Ian Romanick
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-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