Linux Kernel
3.7.1
|
Go to the source code of this file.
Macros | |
#define | VMW_FENCE_WRAP (1 << 24) |
Functions | |
irqreturn_t | vmw_irq_handler (DRM_IRQ_ARGS) |
void | vmw_update_seqno (struct vmw_private *dev_priv, struct vmw_fifo_state *fifo_state) |
bool | vmw_seqno_passed (struct vmw_private *dev_priv, uint32_t seqno) |
int | vmw_fallback_wait (struct vmw_private *dev_priv, bool lazy, bool fifo_idle, uint32_t seqno, bool interruptible, unsigned long timeout) |
void | vmw_seqno_waiter_add (struct vmw_private *dev_priv) |
void | vmw_seqno_waiter_remove (struct vmw_private *dev_priv) |
void | vmw_goal_waiter_add (struct vmw_private *dev_priv) |
void | vmw_goal_waiter_remove (struct vmw_private *dev_priv) |
int | vmw_wait_seqno (struct vmw_private *dev_priv, bool lazy, uint32_t seqno, bool interruptible, unsigned long timeout) |
void | vmw_irq_preinstall (struct drm_device *dev) |
int | vmw_irq_postinstall (struct drm_device *dev) |
void | vmw_irq_uninstall (struct drm_device *dev) |
#define VMW_FENCE_WRAP (1 << 24) |
Definition at line 31 of file vmwgfx_irq.c.
int vmw_fallback_wait | ( | struct vmw_private * | dev_priv, |
bool | lazy, | ||
bool | fifo_idle, | ||
uint32_t | seqno, | ||
bool | interruptible, | ||
unsigned long | timeout | ||
) |
Block command submission while waiting for idle.
FIXME: Use schedule_hr_timeout here for newer kernels and lower CPU utilization.
Definition at line 116 of file vmwgfx_irq.c.
void vmw_goal_waiter_add | ( | struct vmw_private * | dev_priv | ) |
Definition at line 216 of file vmwgfx_irq.c.
void vmw_goal_waiter_remove | ( | struct vmw_private * | dev_priv | ) |
Definition at line 232 of file vmwgfx_irq.c.
irqreturn_t vmw_irq_handler | ( | DRM_IRQ_ARGS | ) |
IRQs and wating - vmwgfx_irq.c
Definition at line 33 of file vmwgfx_irq.c.
int vmw_irq_postinstall | ( | struct drm_device * | dev | ) |
Definition at line 305 of file vmwgfx_irq.c.
void vmw_irq_preinstall | ( | struct drm_device * | dev | ) |
Definition at line 292 of file vmwgfx_irq.c.
void vmw_irq_uninstall | ( | struct drm_device * | dev | ) |
Definition at line 310 of file vmwgfx_irq.c.
bool vmw_seqno_passed | ( | struct vmw_private * | dev_priv, |
uint32_t | seqno | ||
) |
Then check if the seqno is higher than what we've actually emitted. Then the fence is stale and signaled.
Definition at line 87 of file vmwgfx_irq.c.
void vmw_seqno_waiter_add | ( | struct vmw_private * | dev_priv | ) |
Definition at line 185 of file vmwgfx_irq.c.
void vmw_seqno_waiter_remove | ( | struct vmw_private * | dev_priv | ) |
Definition at line 201 of file vmwgfx_irq.c.
void vmw_update_seqno | ( | struct vmw_private * | dev_priv, |
struct vmw_fifo_state * | fifo_state | ||
) |
Definition at line 74 of file vmwgfx_irq.c.
int vmw_wait_seqno | ( | struct vmw_private * | dev_priv, |
bool | lazy, | ||
uint32_t | seqno, | ||
bool | interruptible, | ||
unsigned long | timeout | ||
) |
Definition at line 246 of file vmwgfx_irq.c.