aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2010-08-30 02:14:51 -0400
committerBen Skeggs <bskeggs@redhat.com>2010-09-24 02:19:15 -0400
commit2a7fdb2bc15b3bfc824eb969b3dc7efa3fb52463 (patch)
tree2153f3e0bf8f0deed90ea28e5d15c7429bb46711
parent217275d03d7e1f3e62c7b0d9718df99456b7c356 (diff)
drm/nouveau: have nv_mask return original register value
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r--drivers/gpu/drm/nouveau/nouveau_drv.h7
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_drv.h b/drivers/gpu/drm/nouveau/nouveau_drv.h
index b1be617373b6..c684686f6c0f 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drv.h
+++ b/drivers/gpu/drm/nouveau/nouveau_drv.h
@@ -1255,12 +1255,11 @@ static inline void nv_wr32(struct drm_device *dev, unsigned reg, u32 val)
1255 iowrite32_native(val, dev_priv->mmio + reg); 1255 iowrite32_native(val, dev_priv->mmio + reg);
1256} 1256}
1257 1257
1258static inline void nv_mask(struct drm_device *dev, u32 reg, u32 mask, u32 val) 1258static inline u32 nv_mask(struct drm_device *dev, u32 reg, u32 mask, u32 val)
1259{ 1259{
1260 u32 tmp = nv_rd32(dev, reg); 1260 u32 tmp = nv_rd32(dev, reg);
1261 tmp &= ~mask; 1261 nv_wr32(dev, reg, (tmp & ~mask) | val);
1262 tmp |= val; 1262 return tmp;
1263 nv_wr32(dev, reg, tmp);
1264} 1263}
1265 1264
1266static inline u8 nv_rd08(struct drm_device *dev, unsigned reg) 1265static inline u8 nv_rd08(struct drm_device *dev, unsigned reg)