/* * Copyright (C) 2002 ARM Ltd. * All Rights Reserved * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License version 2 as * published by the Free Software Foundation. */ #include #include #include #include #include "common.h" static inline void cpu_enter_lowpower(void) { } static inline void cpu_leave_lowpower(void) { } static inline void platform_do_lowpower(unsigned int cpu) { asm("wfi" : : : "memory", "cc"); } /* * platform-specific code to shutdown a CPU * * Called with IRQs disabled */ void __ref msm_cpu_die(unsigned int cpu) { /* * we're ready for shutdown now, so do it */ cpu_enter_lowpower(); platform_do_lowpower(cpu); /* * bring this CPU back into the world of cache * coherency, and then restore interrupts */ cpu_leave_lowpower(); }