unsigned long base_addr = get_tc_base_addr(slot); 
unsigned long base_addr = CKSEG1ADDR(get_tc_base_addr(slot)); 
static int __init init_one(int slot){	unsigned long base_addr = get_tc_base_addr(slot);	struct aafb_info *ip = &my_fb_info[slot];	memset(ip, 0, sizeof(struct aafb_info));	/*	 * Framebuffer display memory base address and friends.	 */	ip->bt455 = (struct bt455_regs *) (base_addr + PMAG_AA_BT455_OFFSET);	ip->bt431 = (struct bt431_regs *) (base_addr + PMAG_AA_BT431_OFFSET);	ip->fb_start = base_addr + PMAG_AA_ONBOARD_FBMEM_OFFSET;	ip->fb_size = 2048 * 1024; /* fb_fix_screeninfo.smem_length				      seems to be physical */	ip->fb_line_length = 2048;	/*	 * Let there be consoles..	 */	strcpy(ip->info.modename, "PMAG-AA");	ip->info.node = -1;	ip->info.flags = FBINFO_FLAG_DEFAULT;	ip->info.fbops = &aafb_ops;	ip->info.disp = &ip->disp;	ip->info.changevar = NULL;	ip->info.switch_con = &aafb_switch;	ip->info.updatevar = &aafb_update_var;	ip->info.blank = &aafb_blank;	aafb_set_disp(&ip->disp, currcon, ip);	/*	 * Configure the RAM DACs.	 */	bt455_erase_cursor(ip->bt455);	/* Init colormap. */	bt455_write_cmap_entry(ip->bt455, 0, 0x00, 0x00, 0x00);	bt455_write_cmap_entry(ip->bt455, 1, 0x0f, 0x0f, 0x0f);	/* Init hardware cursor. */	bt431_init_cursor(ip->bt431);	aafb_cursor_init(ip);	/* Clear the screen. */	memset ((void *)ip->fb_start, 0, ip->fb_size);	if (register_framebuffer(&ip->info) < 0)		return -EINVAL;	printk(KERN_INFO "fb%d: %s frame buffer in TC slot %d\n",	       GET_FB_IDX(ip->info.node), ip->info.modename, slot);	return 0;}
4520	/local/tlutelli/issta_data/temp/c/2005_temp/2005/4520/61838ffeee8296de8bfee751e9ad67bf6c61d0b4/pmag-aa-fb.c/buggy/drivers/video/pmag-aa-fb.c