cpm8xx_t *cp = &((immap_t *)IMAP_ADDR)->im_cpm;  
void m8xx_cpm_dpinit(void){	cpm8xx_t *cp = &((immap_t *)IMAP_ADDR)->im_cpm;	spin_lock_init(&cpm_dpmem_lock);	/* Initialize the info header */	rh_init(&cpm_dpmem_info, CPM_DPMEM_ALIGNMENT,			sizeof(cpm_boot_dpmem_rh_block) /			sizeof(cpm_boot_dpmem_rh_block[0]),			cpm_boot_dpmem_rh_block);	/*	 * Attach the usable dpmem area.	 * XXX: This is actually crap.  CPM_DATAONLY_BASE and	 * CPM_DATAONLY_SIZE are a subset of the available dparm.  It varies	 * with the processor and the microcode patches applied / activated.	 * But the following should be at least safe.	 */	rh_attach_region(&cpm_dpmem_info, (void *)CPM_DATAONLY_BASE, CPM_DATAONLY_SIZE);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/204085c52aa9975a90a894cb385360a141f1e4a3/commproc.c/clean/arch/ppc/8xx_io/commproc.c