drm/gma500: Remove struct psb_gtt.sem sempahore
The semaphore at struct psb_mmu_driver.sem protects access to the MMU fields. Additional locking with struct psb_gtt.sem is unnecessary. Remove the field and related code. Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de> Acked-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com> Signed-off-by: Patrik Jakobsson <patrik.r.jakobsson@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/20220308195222.13471-5-tzimmermann@suse.de
This commit is contained in:
parent
14e92dd104
commit
e160b70ba1
@ -125,12 +125,6 @@ void psb_gtt_remove_pages(struct drm_psb_private *pdev, const struct resource *r
|
||||
mutex_unlock(&pdev->gtt_mutex);
|
||||
}
|
||||
|
||||
static void psb_gtt_alloc(struct drm_device *dev)
|
||||
{
|
||||
struct drm_psb_private *dev_priv = to_drm_psb_private(dev);
|
||||
init_rwsem(&dev_priv->gtt.sem);
|
||||
}
|
||||
|
||||
void psb_gtt_takedown(struct drm_device *dev)
|
||||
{
|
||||
struct drm_psb_private *dev_priv = to_drm_psb_private(dev);
|
||||
@ -166,7 +160,6 @@ int psb_gtt_init(struct drm_device *dev, int resume)
|
||||
if (!resume) {
|
||||
mutex_init(&dev_priv->gtt_mutex);
|
||||
mutex_init(&dev_priv->mmap_mutex);
|
||||
psb_gtt_alloc(dev);
|
||||
}
|
||||
|
||||
pg = &dev_priv->gtt;
|
||||
|
@ -22,7 +22,6 @@ struct psb_gtt {
|
||||
unsigned gatt_pages;
|
||||
unsigned long stolen_size;
|
||||
unsigned long vram_stolen_size;
|
||||
struct rw_semaphore sem;
|
||||
};
|
||||
|
||||
/* Exported functions */
|
||||
|
@ -184,13 +184,11 @@ static void psb_driver_unload(struct drm_device *dev)
|
||||
if (dev_priv->mmu) {
|
||||
struct psb_gtt *pg = &dev_priv->gtt;
|
||||
|
||||
down_read(&pg->sem);
|
||||
psb_mmu_remove_pfn_sequence(
|
||||
psb_mmu_get_default_pd
|
||||
(dev_priv->mmu),
|
||||
pg->mmu_gatt_start,
|
||||
dev_priv->vram_stolen_size >> PAGE_SHIFT);
|
||||
up_read(&pg->sem);
|
||||
psb_mmu_driver_takedown(dev_priv->mmu);
|
||||
dev_priv->mmu = NULL;
|
||||
}
|
||||
@ -345,12 +343,10 @@ static int psb_driver_load(struct drm_device *dev, unsigned long flags)
|
||||
return ret;
|
||||
|
||||
/* Add stolen memory to SGX MMU */
|
||||
down_read(&pg->sem);
|
||||
ret = psb_mmu_insert_pfn_sequence(psb_mmu_get_default_pd(dev_priv->mmu),
|
||||
dev_priv->stolen_base >> PAGE_SHIFT,
|
||||
pg->gatt_start,
|
||||
pg->stolen_size >> PAGE_SHIFT, 0);
|
||||
up_read(&pg->sem);
|
||||
|
||||
psb_mmu_set_pd_context(psb_mmu_get_default_pd(dev_priv->mmu), 0);
|
||||
psb_mmu_set_pd_context(dev_priv->pf_pd, 1);
|
||||
|
Loading…
Reference in New Issue
Block a user