diff options
author | Thomas Hellstrom <unichrome@shipmail.org> | 2005-03-14 22:50:21 +0000 |
---|---|---|
committer | Thomas Hellstrom <unichrome@shipmail.org> | 2005-03-14 22:50:21 +0000 |
commit | d2fd9200956a94cfd91a39e76994f326bdfc6ac0 (patch) | |
tree | 9151ee4ea20c3ea53be1370b058afec101858b54 /shared/via_map.c | |
parent | a396617dbc15abafdc172b972a02c04007ad579f (diff) |
via changes:
1. Initialize futex locks to zero on device init.
2. Remove some stray defines from via_drm.h
3. Prepare via_drm.h for drm client inclusion. The goal is to share a
common file with common definitions.
4. Sync shared / shared-core via_drm.h
5. Bump minor, because of the futex lock initialization.
Diffstat (limited to 'shared/via_map.c')
-rw-r--r-- | shared/via_map.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/shared/via_map.c b/shared/via_map.c index ac8f105f..178284c1 100644 --- a/shared/via_map.c +++ b/shared/via_map.c @@ -69,8 +69,10 @@ int via_do_init_map(drm_device_t * dev, drm_via_init_t * init) dev_priv->agpAddr = init->agpAddr; - for (i = 0; i < VIA_NR_XVMC_LOCKS; ++i) + for (i = 0; i < VIA_NR_XVMC_LOCKS; ++i) { DRM_INIT_WAITQUEUE(&(dev_priv->decoder_queue[i])); + XVMCLOCKPTR(dev_priv->sarea_priv, i)->lock = 0; + } dev->dev_private = (void *)dev_priv; @@ -111,6 +113,7 @@ int via_map_init(DRM_IOCTL_ARGS) return -EINVAL; } + int via_decoder_futex(DRM_IOCTL_ARGS) { DRM_DEVICE; @@ -125,7 +128,7 @@ int via_decoder_futex(DRM_IOCTL_ARGS) if (fx.lock > VIA_NR_XVMC_LOCKS) return -EFAULT; - lock = XVMCLOCKPTR(sAPriv, fx.lock); + lock = (int *)XVMCLOCKPTR(sAPriv, fx.lock); switch (fx.func) { case VIA_FUTEX_WAIT: |