static int __pmac amd_write_bank(int bank, u8* datas) 
static int amd_write_bank(int bank, u8* datas) 
static int __pmac amd_write_bank(int bank, u8* datas){	int i, stat = 0;	unsigned long timeout;	u8* base = (u8 *)nvram_data + core99_bank*NVRAM_SIZE;       	DBG("nvram: AMD Writing bank %d...\n", bank);	for (i=0; i<NVRAM_SIZE; i++) {		/* Unlock 1 */		out_8(base+0x555, 0xaa);		udelay(1);		/* Unlock 2 */		out_8(base+0x2aa, 0x55);		udelay(1);		/* Write single word */		out_8(base+0x555, 0xa0);		udelay(1);		out_8(base+i, datas[i]);				timeout = 0;		do {			if (++timeout > 1000000) {				printk(KERN_ERR "nvram: AMD flash write timeout !\n");				break;			}			stat = in_8(base) ^ in_8(base);		} while (stat != 0);		if (stat != 0)			break;	}	/* Reset */	out_8(base, 0xf0);	udelay(1);	for (i=0; i<NVRAM_SIZE; i++)		if (base[i] != datas[i]) {			printk(KERN_ERR "nvram: AMD flash write failed !\n");			return -ENXIO;		}	return 0;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/aacaf9bd9646f6f611a08fca976411b6e5ddefe2/pmac_nvram.c/buggy/arch/ppc64/kernel/pmac_nvram.c