if (cpu_is_omap1510()) { 
if (cpu_is_omap730()) { MPUI730_SAVE(OMAP_IH1_MIR); MPUI730_SAVE(OMAP_IH2_0_MIR); MPUI730_SAVE(OMAP_IH2_1_MIR); MPUI730_SAVE(MPUI_CTRL); MPUI730_SAVE(MPUI_DSP_BOOT_CONFIG); MPUI730_SAVE(MPUI_DSP_API_CONFIG); MPUI730_SAVE(EMIFS_CONFIG); MPUI730_SAVE(EMIFF_SDRAM_CONFIG);  } else if (cpu_is_omap1510()) { 
void omap_pm_suspend(void){	unsigned long arg0 = 0, arg1 = 0;	printk("PM: OMAP%x is trying to enter deep sleep...\n", system_rev);	omap_serial_wake_trigger(1);	if (machine_is_omap_osk()) {		/* Stop LED1 (D9) blink */		tps65010_set_led(LED1, OFF);	}	omap_writew(0xffff, ULPD_SOFT_DISABLE_REQ_REG);	/*	 * Step 1: turn off interrupts (FIXME: NOTE: already disabled)	 */	local_irq_disable();	local_fiq_disable();	/*	 * Step 2: save registers	 *	 * The omap is a strange/beautiful device. The caches, memory	 * and register state are preserved across power saves.	 * We have to save and restore very little register state to	 * idle the omap.         * 	 * Save interrupt, MPUI, ARM and UPLD control registers.	 */	if (cpu_is_omap1510()) {		MPUI1510_SAVE(OMAP_IH1_MIR);		MPUI1510_SAVE(OMAP_IH2_MIR);		MPUI1510_SAVE(MPUI_CTRL);		MPUI1510_SAVE(MPUI_DSP_BOOT_CONFIG);		MPUI1510_SAVE(MPUI_DSP_API_CONFIG);		MPUI1510_SAVE(EMIFS_CONFIG);		MPUI1510_SAVE(EMIFF_SDRAM_CONFIG);	} else if (cpu_is_omap16xx()) {		MPUI1610_SAVE(OMAP_IH1_MIR);		MPUI1610_SAVE(OMAP_IH2_0_MIR);		MPUI1610_SAVE(OMAP_IH2_1_MIR);		MPUI1610_SAVE(OMAP_IH2_2_MIR);		MPUI1610_SAVE(OMAP_IH2_3_MIR);		MPUI1610_SAVE(MPUI_CTRL);		MPUI1610_SAVE(MPUI_DSP_BOOT_CONFIG);		MPUI1610_SAVE(MPUI_DSP_API_CONFIG);		MPUI1610_SAVE(EMIFS_CONFIG);		MPUI1610_SAVE(EMIFF_SDRAM_CONFIG);	}	ARM_SAVE(ARM_CKCTL);	ARM_SAVE(ARM_IDLECT1);	ARM_SAVE(ARM_IDLECT2);	if (!(cpu_is_omap1510()))		ARM_SAVE(ARM_IDLECT3);	ARM_SAVE(ARM_EWUPCT);	ARM_SAVE(ARM_RSTCT1);	ARM_SAVE(ARM_RSTCT2);	ARM_SAVE(ARM_SYSST);	ULPD_SAVE(ULPD_CLOCK_CTRL);	ULPD_SAVE(ULPD_STATUS_REQ);	/* (Step 3 removed - we now allow deep sleep by default) */	/*	 * Step 4: OMAP DSP Shutdown	 */	/*	 * Step 5: Wakeup Event Setup	 */	omap_pm_wakeup_setup();	/*	 * Step 6: ARM and Traffic controller shutdown	 */	/* disable ARM watchdog */	omap_writel(0x00F5, OMAP_WDT_TIMER_MODE);	omap_writel(0x00A0, OMAP_WDT_TIMER_MODE);	/*	 * Step 6b: ARM and Traffic controller shutdown	 *	 * Step 6 continues here. Prepare jump to power management	 * assembly code in internal SRAM.	 *	 * Since the omap_cpu_suspend routine has been copied to	 * SRAM, we'll do an indirect procedure call to it and pass the	 * contents of arm_idlect1 and arm_idlect2 so it can restore	 * them when it wakes up and it will return.	 */	arg0 = arm_sleep_save[ARM_SLEEP_SAVE_ARM_IDLECT1];	arg1 = arm_sleep_save[ARM_SLEEP_SAVE_ARM_IDLECT2];	/*	 * Step 6c: ARM and Traffic controller shutdown	 *	 * Jump to assembly code. The processor will stay there 	 * until wake up.	 */        omap_sram_suspend(arg0, arg1);	/*	 * If we are here, processor is woken up!	 */	/*	 * Restore ARM state, except ARM_IDLECT1/2 which omap_cpu_suspend did	 */	if (!(cpu_is_omap1510()))		ARM_RESTORE(ARM_IDLECT3);	ARM_RESTORE(ARM_CKCTL);	ARM_RESTORE(ARM_EWUPCT);	ARM_RESTORE(ARM_RSTCT1);	ARM_RESTORE(ARM_RSTCT2);	ARM_RESTORE(ARM_SYSST);	ULPD_RESTORE(ULPD_CLOCK_CTRL);	ULPD_RESTORE(ULPD_STATUS_REQ);	if (cpu_is_omap1510()) {		MPUI1510_RESTORE(MPUI_CTRL);		MPUI1510_RESTORE(MPUI_DSP_BOOT_CONFIG);		MPUI1510_RESTORE(MPUI_DSP_API_CONFIG);		MPUI1510_RESTORE(EMIFS_CONFIG);		MPUI1510_RESTORE(EMIFF_SDRAM_CONFIG);		MPUI1510_RESTORE(OMAP_IH1_MIR);		MPUI1510_RESTORE(OMAP_IH2_MIR);	} else if (cpu_is_omap16xx()) {		MPUI1610_RESTORE(MPUI_CTRL);		MPUI1610_RESTORE(MPUI_DSP_BOOT_CONFIG);		MPUI1610_RESTORE(MPUI_DSP_API_CONFIG);		MPUI1610_RESTORE(EMIFS_CONFIG);		MPUI1610_RESTORE(EMIFF_SDRAM_CONFIG);		MPUI1610_RESTORE(OMAP_IH1_MIR);		MPUI1610_RESTORE(OMAP_IH2_0_MIR);		MPUI1610_RESTORE(OMAP_IH2_1_MIR);		MPUI1610_RESTORE(OMAP_IH2_2_MIR);		MPUI1610_RESTORE(OMAP_IH2_3_MIR);	}	omap_writew(0, ULPD_SOFT_DISABLE_REQ_REG);	/*	 * Reenable interrupts	 */	local_irq_enable();	local_fiq_enable();	omap_serial_wake_trigger(0);	printk("PM: OMAP%x is re-starting from deep sleep...\n", system_rev);	if (machine_is_omap_osk()) {		/* Let LED1 (D9) blink again */		tps65010_set_led(LED1, BLINK);	}}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/1a8bfa1eb998af6e650ad26201f7cae9f2a2fdc8/pm.c/clean/arch/arm/plat-omap/pm.c