summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libbsp/arm/lpc176x/include/can.h
diff options
context:
space:
mode:
Diffstat (limited to 'c/src/lib/libbsp/arm/lpc176x/include/can.h')
-rwxr-xr-xc/src/lib/libbsp/arm/lpc176x/include/can.h179
1 files changed, 0 insertions, 179 deletions
diff --git a/c/src/lib/libbsp/arm/lpc176x/include/can.h b/c/src/lib/libbsp/arm/lpc176x/include/can.h
deleted file mode 100755
index 7515ec2f53..0000000000
--- a/c/src/lib/libbsp/arm/lpc176x/include/can.h
+++ /dev/null
@@ -1,179 +0,0 @@
-/**
- * @file can.h
- *
- * @ingroup lpc176x
- *
- * @brief CAN controller for the mbed lpc1768 board.
- */
-
-/*
- * Copyright (c) 2014 Taller Technologies.
- *
- * @author Diaz Marcos (marcos.diaz@tallertechnologies.com)
- * @author Daniel Chicco (daniel.chicco@tallertechnologies.com)
- *
- * The license and distribution terms for this file may be
- * found in the file LICENSE in this distribution or at
- * http://www.rtems.org/license/LICENSE.
- */
-
-#ifndef LPC176X_CAN_H
-#define LPC176X_CAN_H
-
-#include <bsp.h>
-#include <bsp/io.h>
-#include <bsp/lpc176x.h>
-
-#ifdef __cplusplus
-extern "C" {
-#endif /* __cplusplus */
-
-/**
- * @brief The CAN devices of the board.
- */
-typedef enum {
- CAN_0,
- CAN_1,
- CAN_DEVICES_NUMBER
-} lpc176x_can_number;
-
-/**
- * @brief A CAN message represented for the registers of the device.
- */
-typedef struct {
- uint32_t info;
- uint32_t id;
- uint32_t data_a;
- uint32_t data_b;
-} registers_can_message;
-
-/**
- * @brief A CAN message represented with each logical parts
- */
-typedef struct {
- unsigned int reserved1 : 16;
- unsigned int dlc : 4; /* Bits 16..19: DLC - Data Length Counter*/
- unsigned int reserved0 : 10;
- unsigned int rtr : 1; /* Bit 30: Set if this is a RTR message*/
- unsigned int type : 1; /* Bit 31: Set if this is a 29-bit ID message*/
- unsigned int id; /* CAN Message ID (11-bit or 29-bit)*/
- unsigned char data[ 8 ]; /* CAN Message Data Bytes 0-7*/
-} low_level_can_message;
-
-/**
- * @brief A CAN message represented of both forms.
- */
-typedef union {
- low_level_can_message low_level;
- registers_can_message registers;
-} can_message;
-
-/**
- * @brief The possible interrupt sources for CAN.
- */
-typedef enum {
- IRQ_RX = 0,
- IRQ_TX,
- IRQ_ERROR,
- IRQ_OVERRUN,
- IRQ_WAKEUP,
- IRQ_PASSIVE,
- IRQ_ARB,
- IRQ_BUS,
- IRQ_READY,
- CAN_IRQ_NUMBER
-} can_irq_type;
-
-/**
- * @brief An isr for a CAN interrupt
- *
- * @param number The CAN which rised the interrupt.
- */
-typedef void (*lpc176x_can_isr) ( lpc176x_can_number number );
-
-/**
- * @brief A CAN frequency value
- */
-typedef unsigned int can_freq;
-
-/**
- * @brief Opens CAN device.
- * @details It enables the module and gives it a clock, sets the pins,
- * disables the interrupts, sets the frequency and bypasses
- * the acceptance filter.
- *
- * @param minor The device to open.
- * @param freq The desired frequency.
- * @return RTEMS_SUCCESFUL on success.
- */
-rtems_status_code can_open( lpc176x_can_number minor, can_freq freq );
-
-/**
- * @brief Closes the passed CAN device and shut it down.
- *
- * @param minor The device to close.
- * @return RTEMS_SUCCESSFUL if ok, RTEMS_INVALID_NUMBER for a bad parameter.
- */
-rtems_status_code can_close( lpc176x_can_number minor );
-
-/**
- * @brief Reads the CAN device.
- *
- * @param minor The CAN device to read.
- * @param message The read message.
- * @return RTEMS_SUCCESSFUL if read ok, RTEMS_IO_ERROR otherwise.
- */
-rtems_status_code can_read(
- const lpc176x_can_number minor,
- can_message *message
-);
-
-/**
- * @brief Writes the passed CAN message into the selected CAN device.
- *
- * @param minor The device to write.
- * @param message The message to write.
- * @return RTEMS_SUCCESFUL if write ok. RTEMS_IO_ERROR otherwise.
- */
-rtems_status_code can_write(
- const lpc176x_can_number minor,
- const can_message *const message
-);
-
-/**
- * @brief Registers an isr in the driver vector, and enables the interrupt
-* in the device.
- *
- * @param number The CAN device to set
- * @param type The interrupt type.
- * @param isr The isr to register.
- * @return RTEMS_SUCCESSFUL if ok RTEMS_INVALID_NUMBER otherwise.
- */
-rtems_status_code can_register_isr(
- const lpc176x_can_number number,
- const can_irq_type type,
- const lpc176x_can_isr isr
-);
-
-/**
- * @brief Creates a CAN message.
- * @details [long description]
- *
- * @param msg The created message.
- * @param _id The can id for the message.
- * @param _data The data of the message.
- * @param _len The length of the message.
- * @return RTEMS_SUCCESFUL if created, RTEMS_INVALID_NUMBER otherwise.
- */
-rtems_status_code create_can_message(
- can_message *const msg,
- const int _id,
- const char *const _data,
- const char _len
-);
-
-#ifdef __cplusplus
-}
-#endif /* __cplusplus */
-
-#endif /* ifndef LPC176X_CAN_H */