On Sun, Nov 28, 2010 at 1:06 PM, Daniel Vetter <daniel.vetter at ffwll.ch> wrote: > Used in a macro with only a single call-site for each. > IHMO that's a bit too much indirection. Fold them in. >
I'd rather keep them separate in case we need to use them directly in some other cases. Plus it's more consistent with the other register access routines. Alex > Signed-off-by: Daniel Vetter <daniel.vetter at ffwll.ch> > --- > ?drivers/gpu/drm/radeon/radeon.h ? ? ? ?| ? 22 ---------------------- > ?drivers/gpu/drm/radeon/radeon_device.c | ? 16 ++++++++++++---- > ?2 files changed, 12 insertions(+), 26 deletions(-) > > diff --git a/drivers/gpu/drm/radeon/radeon.h b/drivers/gpu/drm/radeon/radeon.h > index 942f5f2..7afb08e 100644 > --- a/drivers/gpu/drm/radeon/radeon.h > +++ b/drivers/gpu/drm/radeon/radeon.h > @@ -1202,26 +1202,6 @@ static inline void r100_mm_wreg(struct radeon_device > *rdev, uint32_t reg, uint32 > ? ? ? ?} > ?} > > -static inline u32 r100_io_rreg(struct radeon_device *rdev, u32 reg) > -{ > - ? ? ? if (reg < rdev->rio_mem_size) > - ? ? ? ? ? ? ? return ioread32(rdev->rio_mem + reg); > - ? ? ? else { > - ? ? ? ? ? ? ? iowrite32(reg, rdev->rio_mem + RADEON_MM_INDEX); > - ? ? ? ? ? ? ? return ioread32(rdev->rio_mem + RADEON_MM_DATA); > - ? ? ? } > -} > - > -static inline void r100_io_wreg(struct radeon_device *rdev, u32 reg, u32 v) > -{ > - ? ? ? if (reg < rdev->rio_mem_size) > - ? ? ? ? ? ? ? iowrite32(v, rdev->rio_mem + reg); > - ? ? ? else { > - ? ? ? ? ? ? ? iowrite32(reg, rdev->rio_mem + RADEON_MM_INDEX); > - ? ? ? ? ? ? ? iowrite32(v, rdev->rio_mem + RADEON_MM_DATA); > - ? ? ? } > -} > - > ?/* > ?* Cast helper > ?*/ > @@ -1260,8 +1240,6 @@ static inline void r100_io_wreg(struct radeon_device > *rdev, u32 reg, u32 v) > ? ? ? ? ? ? ? ?WREG32_PLL(reg, tmp_); ? ? ? ? ? ? ? ? ? ? ? ? ?\ > ? ? ? ?} while (0) > ?#define DREG32_SYS(sqf, rdev, reg) seq_printf((sqf), #reg " : 0x%08X\n", > r100_mm_rreg((rdev), (reg))) > -#define RREG32_IO(reg) r100_io_rreg(rdev, (reg)) > -#define WREG32_IO(reg, v) r100_io_wreg(rdev, (reg), (v)) > > ?/* > ?* Indirect registers accessor > diff --git a/drivers/gpu/drm/radeon/radeon_device.c > b/drivers/gpu/drm/radeon/radeon_device.c > index 1f752ef..14c935c 100644 > --- a/drivers/gpu/drm/radeon/radeon_device.c > +++ b/drivers/gpu/drm/radeon/radeon_device.c > @@ -496,16 +496,24 @@ static void cail_ioreg_write(struct card_info *info, > uint32_t reg, uint32_t val) > ?{ > ? ? ? ?struct radeon_device *rdev = info->dev->dev_private; > > - ? ? ? WREG32_IO(reg*4, val); > + ? ? ? if (reg < rdev->rio_mem_size) > + ? ? ? ? ? ? ? iowrite32(val, rdev->rio_mem + reg); > + ? ? ? else { > + ? ? ? ? ? ? ? iowrite32(reg, rdev->rio_mem + RADEON_MM_INDEX); > + ? ? ? ? ? ? ? iowrite32(val, rdev->rio_mem + RADEON_MM_DATA); > + ? ? ? } > ?} > > ?static uint32_t cail_ioreg_read(struct card_info *info, uint32_t reg) > ?{ > ? ? ? ?struct radeon_device *rdev = info->dev->dev_private; > - ? ? ? uint32_t r; > > - ? ? ? r = RREG32_IO(reg*4); > - ? ? ? return r; > + ? ? ? if (reg < rdev->rio_mem_size) > + ? ? ? ? ? ? ? return ioread32(rdev->rio_mem + reg); > + ? ? ? else { > + ? ? ? ? ? ? ? iowrite32(reg, rdev->rio_mem + RADEON_MM_INDEX); > + ? ? ? ? ? ? ? return ioread32(rdev->rio_mem + RADEON_MM_DATA); > + ? ? ? } > ?} > > ?int radeon_atombios_init(struct radeon_device *rdev) > -- > 1.7.1 > > _______________________________________________ > dri-devel mailing list > dri-devel at lists.freedesktop.org > http://lists.freedesktop.org/mailman/listinfo/dri-devel >