etisserant@0: /* etisserant@0: This file is part of CanFestival, a library implementing CanOpen Stack. etisserant@0: etisserant@0: Author: Christian Fortin (canfestival@canopencanada.ca) etisserant@0: etisserant@0: See COPYING file for copyrights details. etisserant@0: etisserant@0: This library is free software; you can redistribute it and/or etisserant@0: modify it under the terms of the GNU Lesser General Public etisserant@0: License as published by the Free Software Foundation; either etisserant@0: version 2.1 of the License, or (at your option) any later version. etisserant@0: etisserant@0: This library is distributed in the hope that it will be useful, etisserant@0: but WITHOUT ANY WARRANTY; without even the implied warranty of etisserant@0: MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU etisserant@0: Lesser General Public License for more details. etisserant@0: etisserant@0: You should have received a copy of the GNU Lesser General Public etisserant@0: License along with this library; if not, write to the Free Software etisserant@0: Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA etisserant@0: */ etisserant@0: oremeq@3: #include oremeq@3: #include etisserant@0: oremeq@3: #include "lpc2138_pinout.h" oremeq@3: #include "lpc2138_defs.h" oremeq@3: #include "lpc2138.h" oremeq@3: oremeq@3: #include "sja1000.h" oremeq@3: oremeq@3: oremeq@3: #define CYGNUM_HAL_INTERRUPT_1 CYGNUM_HAL_INTERRUPT_EINT1 oremeq@3: #define CYGNUM_HAL_PRI_HIGH 0 oremeq@3: oremeq@3: oremeq@3: cyg_uint32 interrupt_1_isr(cyg_vector_t vector, cyg_addrword_t data); oremeq@3: void interrupt_1_dsr(cyg_vector_t vector, oremeq@3: cyg_ucount32 count, oremeq@3: cyg_addrword_t data); oremeq@3: oremeq@3: oremeq@3: /* Interrupt for CAN device. */ oremeq@3: static cyg_interrupt interrupt_1; oremeq@3: static cyg_handle_t interrupt_1_handle; oremeq@3: oremeq@3: oremeq@3: void init_sja1000(void) oremeq@3: { oremeq@3: do oremeq@3: { oremeq@3: sja1000_write(MOD, 1<