Пример #1
0
static int vbox_master_set(struct drm_device *dev,
			   struct drm_file *file_priv, bool from_open)
{
	struct vbox_private *vbox = dev->dev_private;

	/*
	 * We do not yet know whether the new owner can handle hotplug, so we
	 * do not advertise dynamic modes on the first query and send a
	 * tentative hotplug notification after that to see if they query again.
	 */
	vbox->initial_mode_queried = false;

	mutex_lock(&vbox->hw_mutex);
	/*
	 * Disable VBVA when someone releases master in case the next person
	 * tries tries to do VESA.
	 */
	/** @todo work out if anyone is likely to and whether it will work. */
	/*
	 * Update: we also disable it because if the new master does not do
	 * dirty rectangle reporting (e.g. old versions of Plymouth) then at
	 * least the first screen will still be updated. We enable it as soon
	 * as we receive a dirty rectangle report.
	 */
	vbox_disable_accel(vbox);
	mutex_unlock(&vbox->hw_mutex);

	return 0;
}
Пример #2
0
static void vbox_master_drop(struct drm_device *dev,
                             struct drm_file *file_priv,
                             bool from_release)
{
    struct vbox_private *vbox = dev->dev_private;
    vbox->initial_mode_queried = false;
    vbox_disable_accel(vbox);
}
Пример #3
0
static int vbox_master_set(struct drm_device *dev,
                           struct drm_file *file_priv,
                           bool from_open)
{
    struct vbox_private *vbox = dev->dev_private;
    vbox->initial_mode_queried = false;
    vbox_disable_accel(vbox);
    return 0;
}
Пример #4
0
static void vbox_master_drop(struct drm_device *dev, struct drm_file *file_priv)
{
	struct vbox_private *vbox = dev->dev_private;

	/* See vbox_master_set() */
	vbox->initial_mode_queried = false;

	mutex_lock(&vbox->hw_mutex);
	vbox_disable_accel(vbox);
	mutex_unlock(&vbox->hw_mutex);
}
Пример #5
0
static void vbox_master_drop(struct drm_device *dev,
                             struct drm_file *file_priv,
                             bool from_release)
{
    struct vbox_private *vbox = dev->dev_private;
    vbox->initial_mode_queried = false;
    mutex_lock(&vbox->hw_mutex);
    /* Disable VBVA when someone releases master in case the next person tries
     * to do VESA. */
    /** @todo work out if anyone is likely to and whether it will even work. */
    vbox_disable_accel(vbox);
    mutex_unlock(&vbox->hw_mutex);
}