Linux kernel & device driver programming

Cross-Referenced Linux and Device Driver Code

[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ]
Version: [ 2.6.11.8 ] [ 2.6.25 ] [ 2.6.25.8 ] [ 2.6.31.13 ] Architecture: [ i386 ]
  1 /*
  2  *  linux/include/asm-arm/arch-versatile/system.h
  3  *
  4  *  Copyright (C) 2003 ARM Limited
  5  *  Copyright (C) 2000 Deep Blue Solutions Ltd
  6  *
  7  * This program is free software; you can redistribute it and/or modify
  8  * it under the terms of the GNU General Public License as published by
  9  * the Free Software Foundation; either version 2 of the License, or
 10  * (at your option) any later version.
 11  *
 12  * This program is distributed in the hope that it will be useful,
 13  * but WITHOUT ANY WARRANTY; without even the implied warranty of
 14  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 15  * GNU General Public License for more details.
 16  *
 17  * You should have received a copy of the GNU General Public License
 18  * along with this program; if not, write to the Free Software
 19  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
 20  */
 21 #ifndef __ASM_ARCH_SYSTEM_H
 22 #define __ASM_ARCH_SYSTEM_H
 23 
 24 #include <asm/hardware.h>
 25 #include <asm/io.h>
 26 #include <asm/arch/platform.h>
 27 
 28 static inline void arch_idle(void)
 29 {
 30         /*
 31          * This should do all the clock switching
 32          * and wait for interrupt tricks
 33          */
 34         cpu_do_idle();
 35 }
 36 
 37 static inline void arch_reset(char mode)
 38 {
 39         u32 val;
 40 
 41         val = __raw_readl(IO_ADDRESS(VERSATILE_SYS_RESETCTL)) & ~0x7;
 42         val |= 0x105;
 43 
 44         __raw_writel(0xa05f, IO_ADDRESS(VERSATILE_SYS_LOCK));
 45         __raw_writel(val, IO_ADDRESS(VERSATILE_SYS_RESETCTL));
 46         __raw_writel(0, IO_ADDRESS(VERSATILE_SYS_LOCK));
 47 }
 48 
 49 #endif
 50 
  This page was automatically generated by the LXR engine.