

drivers/video/aty/atyfb_base.c:2749: warning: `struct fb_indo' declared inside parameter list
drivers/video/aty/atyfb_base.c:2749: warning: its scope is only this definition or declaration, which is probably not what you want
drivers/video/aty/atyfb_base.c: In function `atyfb_setup_sparc':
drivers/video/aty/atyfb_base.c:2754: error: dereferencing pointer to incomplete type
drivers/video/aty/atyfb_base.c:2767: warning: assignment makes pointer from integer without a cast
drivers/video/aty/atyfb_base.c:2768: error: dereferencing pointer to incomplete type
drivers/video/aty/atyfb_base.c:2773: error: dereferencing pointer to incomplete type
drivers/video/aty/atyfb_base.c:2774: error: dereferencing pointer to incomplete type
drivers/video/aty/atyfb_base.c:2785: error: `_par' undeclared (first use in this function)
drivers/video/aty/atyfb_base.c:2785: error: (Each undeclared identifier is reported only once
drivers/video/aty/atyfb_base.c:2785: error: for each function it appears in.)
drivers/video/aty/atyfb_base.c:2751: warning: unused variable `prom_palette'
drivers/video/aty/atyfb_base.c: In function `atyfb_pci_probe':
drivers/video/aty/atyfb_base.c:3371: warning: passing arg 2 of `atyfb_setup_sparc' from incompatible pointer type
drivers/video/aty/atyfb_base.c:3385: error: `prom_palette' undeclared (first use in this function)
drivers/video/aty/atyfb_base.c:3397: error: invalid operands to binary &
make[1]: *** [drivers/video/aty/atyfb_base.o] Error 1
make: *** [drivers/video/aty/atyfb_base.o] Error 2


Signed-off-by: Andrew Morton <akpm@osdl.org>
---

 25-sparc64-akpm/drivers/video/aty/atyfb_base.c |   12 +++++++-----
 1 files changed, 7 insertions(+), 5 deletions(-)

diff -puN drivers/video/aty/atyfb_base.c~fbdev-various-mach64-changes-sparc64-fix drivers/video/aty/atyfb_base.c
--- 25-sparc64/drivers/video/aty/atyfb_base.c~fbdev-various-mach64-changes-sparc64-fix	2004-10-22 00:57:58.400849184 -0700
+++ 25-sparc64-akpm/drivers/video/aty/atyfb_base.c	2004-10-22 00:57:58.405848424 -0700
@@ -2746,9 +2746,11 @@ static int atyfb_setcolreg(u_int regno, 
 
 #ifdef __sparc__
 
-static int __devinit atyfb_setup_sparc(struct pci_dev *pdev, struct fb_indo *info, unsigned long addr)
+extern void (*prom_palette) (int);
+
+static int __devinit atyfb_setup_sparc(struct pci_dev *pdev,
+			struct fb_info *info, unsigned long addr)
 {
-	extern void (*prom_palette) (int);
 	extern int con_is_present(void);
 
 	struct atyfb_par *par = info->par;
@@ -2764,7 +2766,7 @@ static int __devinit atyfb_setup_sparc(s
 	/*
 	 * Map memory-mapped registers.
 	 */
-	par->ati_regbase = addr + 0x7ffc00UL;
+	par->ati_regbase = (void *)addr + 0x7ffc00UL;
 	info->fix.mmio_start = addr + 0x7ffc00UL;
 
 	/*
@@ -2782,7 +2784,7 @@ static int __devinit atyfb_setup_sparc(s
 	j = i + 4;
 
 	par->mmap_map = kmalloc(j * sizeof(*par->mmap_map), GFP_ATOMIC);
-	if (!_par->mmap_map) {
+	if (!par->mmap_map) {
 		PRINTKE("atyfb_setup_sparc() can't alloc mmap_map\n");
 		return -ENOMEM;
 	}
@@ -3394,7 +3396,7 @@ static int __devinit atyfb_pci_probe(str
 	par->mmap_map[0].prot_mask = _PAGE_CACHE;
 	par->mmap_map[0].prot_flag = _PAGE_E;
 	par->mmap_map[1].voff = par->mmap_map[0].voff + info->fix.smem_len;
-	par->mmap_map[1].poff = par->ati_regbase & PAGE_MASK;
+	par->mmap_map[1].poff = (long)par->ati_regbase & PAGE_MASK;
 	par->mmap_map[1].size = PAGE_SIZE;
 	par->mmap_map[1].prot_mask = _PAGE_CACHE;
 	par->mmap_map[1].prot_flag = _PAGE_E;
_
