diff options
Diffstat (limited to 'drivers/gpu/drm/nouveau/nouveau_compat.c')
| -rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_compat.c | 40 |
1 files changed, 40 insertions, 0 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_compat.c b/drivers/gpu/drm/nouveau/nouveau_compat.c new file mode 100644 index 000000000000..f9f86df2bddd --- /dev/null +++ b/drivers/gpu/drm/nouveau/nouveau_compat.c @@ -0,0 +1,40 @@ +#include "nouveau_drm.h" +#include "nouveau_compat.h" + +void *nouveau_newpriv(struct drm_device *); + +u8 +_nv_rd08(struct drm_device *dev, u32 reg) +{ + struct nouveau_drm *drm = nouveau_newpriv(dev); + return nv_ro08(drm->device, reg); +} + +void +_nv_wr08(struct drm_device *dev, u32 reg, u8 val) +{ + struct nouveau_drm *drm = nouveau_newpriv(dev); + nv_wo08(drm->device, reg, val); +} + +u32 +_nv_rd32(struct drm_device *dev, u32 reg) +{ + struct nouveau_drm *drm = nouveau_newpriv(dev); + return nv_ro32(drm->device, reg); +} + +void +_nv_wr32(struct drm_device *dev, u32 reg, u32 val) +{ + struct nouveau_drm *drm = nouveau_newpriv(dev); + nv_wo32(drm->device, reg, val); +} + +u32 +_nv_mask(struct drm_device *dev, u32 reg, u32 mask, u32 val) +{ + u32 tmp = _nv_rd32(dev, reg); + _nv_wr32(dev, reg, (tmp & ~mask) | val); + return tmp; +} |
