rtai-core/include/asm-arm/arch-pxa/rtai_arch.h

00001 /* rtai/include/asm-arm/arch-sa1100/rtai_arch.h
00002 -------------------------------------------------------------
00003 DON´T include directly - it's included through asm-arm/rtai.h
00004 -------------------------------------------------------------
00005 COPYRIGHT (C) 2002 Guennadi Liakhovetski, DSA GmbH (gl@dsa-ac.de)
00006 COPYRIGHT (C) 2002 Wolfgang Müller (wolfgang.mueller@dsa-ac.de)
00007 Copyright (c) 2001 Alex Züpke, SYSGO RTS GmbH (azu@sysgo.de)
00008 
00009 This program is free software; you can redistribute it and/or modify
00010 it under the terms of version 2 of the GNU General Public License as
00011 published by the Free Software Foundation.
00012 
00013 This program is distributed in the hope that it will be useful,
00014 but WITHOUT ANY WARRANTY; without even the implied warranty of
00015 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00016 GNU General Public License for more details.
00017 
00018 You should have received a copy of the GNU General Public License
00019 along with this program; if not, write to the Free Software
00020 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
00021 */
00022 /*
00023 --------------------------------------------------------------------------
00024 Acknowledgements
00025 - Paolo Mantegazza      (mantegazza@aero.polimi.it)
00026         creator of RTAI 
00027 */
00028 
00029 #ifndef _ASM_ARCH_RTAI_ARCH_H_
00030 #define _ASM_ARCH_RTAI_ARCH_H_
00031 
00032 #define FREQ_SYS_CLK       3686400
00033 #define LATENCY_MATCH_REG     2000
00034 #define SETUP_TIME_MATCH_REG   600
00035 #define LATENCY_TICKS    (LATENCY_MATCH_REG/(1000000000/FREQ_SYS_CLK))
00036 #define SETUP_TIME_TICKS (SETUP_TIME_MATCH_REG/(1000000000/FREQ_SYS_CLK))
00037 
00038 #define TIMER_8254_IRQ          IRQ_OST0
00039 
00040 #define ARCH_MUX_IRQ            IRQ_GPIO_2_80
00041 
00042 #include <asm/arch/irq.h>
00043 void rtai_pxa_GPIO_2_80_demux( int irq, void *dev_id, struct pt_regs *regs );
00044 
00045 static inline void arch_mount_rtai( void )
00046 {
00047         /* Let's take care about our "special" IRQ11 */
00048 //      free_irq( IRQ_GPIO_2_80 );
00049         rt_request_global_irq_ext( IRQ_GPIO_2_80, rtai_pxa_GPIO_2_80_demux, NULL );
00050 }
00051 
00052 static inline void arch_umount_rtai( void )
00053 {
00054         rt_free_global_irq( IRQ_GPIO_2_80 );
00055 //      request_irq( IRQ_GPIO_2_80, pxa_GPIO_2_80_demux, SA_INTERRUPT, "GPIO 2-80", NULL );
00056 }
00057 
00058 /* Check, if this is a demultiplexed irq */
00059 #define isdemuxirq(irq) (irq >= IRQ_GPIO(2))
00060 
00061 #endif

Generated on Sat Jul 24 19:36:02 2004 for RTAI API by doxygen 1.3.4