This fixes radeonfb to not truncate 64 bits resources on 32 bits platforms. Unfortunately, there are still issues with addresses returned to userspace via struct fb_fix_screeninfo. This will have to be dealt with separately.
Signed-off-by: Benjamin Herrenschmidt <[EMAIL PROTECTED]> --- drivers/video/aty/radeon_base.c | 4 ++-- drivers/video/aty/radeonfb.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) --- linux-work.orig/drivers/video/aty/radeon_base.c 2008-04-22 11:04:19.000000000 +1000 +++ linux-work/drivers/video/aty/radeon_base.c 2008-04-22 11:05:00.000000000 +1000 @@ -1886,7 +1886,7 @@ static int __devinit radeon_set_fbinfo ( info->screen_size = rinfo->mapped_vram; /* Fill fix common fields */ strlcpy(info->fix.id, rinfo->name, sizeof(info->fix.id)); - info->fix.smem_start = rinfo->fb_base_phys; + info->fix.smem_start = (unsigned long)rinfo->fb_base_phys; info->fix.smem_len = rinfo->video_ram; info->fix.type = FB_TYPE_PACKED_PIXELS; info->fix.visual = FB_VISUAL_PSEUDOCOLOR; @@ -1894,7 +1894,7 @@ static int __devinit radeon_set_fbinfo ( info->fix.ypanstep = 1; info->fix.ywrapstep = 0; info->fix.type_aux = 0; - info->fix.mmio_start = rinfo->mmio_base_phys; + info->fix.mmio_start = (unsigned long)rinfo->mmio_base_phys; info->fix.mmio_len = RADEON_REGSIZE; info->fix.accel = FB_ACCEL_ATI_RADEON; Index: linux-work/drivers/video/aty/radeonfb.h =================================================================== --- linux-work.orig/drivers/video/aty/radeonfb.h 2008-04-22 11:03:17.000000000 +1000 +++ linux-work/drivers/video/aty/radeonfb.h 2008-04-22 11:03:27.000000000 +1000 @@ -287,8 +287,8 @@ struct radeonfb_info { char name[DEVICE_NAME_SIZE]; - unsigned long mmio_base_phys; - unsigned long fb_base_phys; + resource_size_t mmio_base_phys; + resource_size_t fb_base_phys; void __iomem *mmio_base; void __iomem *fb_base; _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev