diff options
Diffstat (limited to 'c/src/lib/libbsp/sparc/shared/include/grspw.h')
-rw-r--r-- | c/src/lib/libbsp/sparc/shared/include/grspw.h | 168 |
1 files changed, 0 insertions, 168 deletions
diff --git a/c/src/lib/libbsp/sparc/shared/include/grspw.h b/c/src/lib/libbsp/sparc/shared/include/grspw.h deleted file mode 100644 index 3270e8a5a2..0000000000 --- a/c/src/lib/libbsp/sparc/shared/include/grspw.h +++ /dev/null @@ -1,168 +0,0 @@ -/** - * @file - * @ingroup sparc_bsp - * @defgroup spw SpaceWire - * @ingroup spw - * @brief GRSPW Device Driver - */ - -/* - * COPYRIGHT (c) 2007. - * Cobham Gaisler AB. - * - * 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 __GRSPW_H__ -#define __GRSPW_H__ - -#include <ambapp.h> - -#ifdef __cplusplus -extern "C" { -#endif - -#define SPW_LINKERR_EVENT RTEMS_EVENT_0 - -typedef struct { - unsigned int rxsize; - unsigned int txdsize; - unsigned int txhsize; -} spw_ioctl_packetsize; - -#define GRSPW_PKTSEND_OPTION_HDR_CRC 0x1 -#define GRSPW_PKTSEND_OPTION_DATA_CRC 0x2 -#define GRSPW_PKTSEND_OPTION_NOCRCLEN(len) ((len & 0xf) << 8) -#define GRSPW_PKTSEND_OPTION_NOCRCLEN_MASK 0xf00 - -typedef struct { - unsigned int hlen; - char *hdr; - unsigned int dlen; - char *data; - unsigned int sent; - unsigned int options; -} spw_ioctl_pkt_send; - -typedef struct { - unsigned int tx_link_err; - unsigned int rx_rmap_header_crc_err; - unsigned int rx_rmap_data_crc_err; - unsigned int rx_eep_err; - unsigned int rx_truncated; - unsigned int parity_err; - unsigned int escape_err; - unsigned int credit_err; - unsigned int write_sync_err; - unsigned int disconnect_err; - unsigned int early_ep; - unsigned int invalid_address; - unsigned int packets_sent; - unsigned int packets_received; -} spw_stats; - -typedef struct { - unsigned int nodeaddr; - unsigned int destkey; - unsigned int clkdiv; /* Note: contain both CLKDIVSTART and CLKDIVRUN, but IOCTL_SET_CLKDIV* commands are split into two */ - unsigned int rxmaxlen; - unsigned int timer; - unsigned int disconnect; - unsigned int promiscuous; - unsigned int rmapen; - unsigned int rmapbufdis; - unsigned int linkdisabled; - unsigned int linkstart; - - unsigned int check_rmap_err; /* check incoming packets for rmap errors */ - unsigned int rm_prot_id; /* remove protocol id from incoming packets */ - unsigned int tx_blocking; /* use blocking tx */ - unsigned int tx_block_on_full; /* block when all tx_buffers are used */ - unsigned int rx_blocking; /* block when no data is available */ - unsigned int disable_err; /* disable link automatically when link error is detected */ - unsigned int link_err_irq; /* generate an interrupt when link error occurs */ - rtems_id event_id; /* task id that should receive link err irq event */ - - unsigned int is_rmap; - unsigned int is_rxunaligned; - unsigned int is_rmapcrc; - - unsigned int nodemask; - unsigned int keep_source; /* copy source address to user-buffer in read() operations - * Note that rm_prot_id has no effect when keep_source is - * set. - */ - unsigned int rtimeout; /* Read timeout if != 0 */ -} spw_config; - -#define SPACEWIRE_IOCTRL_SET_NODEADDR 1 -#define SPACEWIRE_IOCTRL_SET_RXBLOCK 2 -#define SPACEWIRE_IOCTRL_SET_DESTKEY 4 -#define SPACEWIRE_IOCTRL_SET_CLKDIV 5 -#define SPACEWIRE_IOCTRL_SET_TIMER 6 -#define SPACEWIRE_IOCTRL_SET_DISCONNECT 7 -#define SPACEWIRE_IOCTRL_SET_PROMISCUOUS 8 -#define SPACEWIRE_IOCTRL_SET_RMAPEN 9 -#define SPACEWIRE_IOCTRL_SET_RMAPBUFDIS 10 -#define SPACEWIRE_IOCTRL_SET_CHECK_RMAP 11 -#define SPACEWIRE_IOCTRL_SET_RM_PROT_ID 12 -#define SPACEWIRE_IOCTRL_SET_TXBLOCK 14 -#define SPACEWIRE_IOCTRL_SET_DISABLE_ERR 15 -#define SPACEWIRE_IOCTRL_SET_LINK_ERR_IRQ 16 -#define SPACEWIRE_IOCTRL_SET_EVENT_ID 17 -#define SPACEWIRE_IOCTRL_SET_PACKETSIZE 20 -#define SPACEWIRE_IOCTRL_GET_LINK_STATUS 23 -#define SPACEWIRE_IOCTRL_GET_CONFIG 25 -#define SPACEWIRE_IOCTRL_GET_STATISTICS 26 -#define SPACEWIRE_IOCTRL_CLR_STATISTICS 27 -#define SPACEWIRE_IOCTRL_SEND 28 -#define SPACEWIRE_IOCTRL_LINKDISABLE 29 -#define SPACEWIRE_IOCTRL_LINKSTART 30 -#define SPACEWIRE_IOCTRL_SET_TXBLOCK_ON_FULL 31 -#define SPACEWIRE_IOCTRL_SET_COREFREQ 32 -#define SPACEWIRE_IOCTRL_SET_CLKDIVSTART 33 -#define SPACEWIRE_IOCTRL_SET_NODEMASK 34 -#define SPACEWIRE_IOCTRL_SET_KEEP_SOURCE 35 -#define SPACEWIRE_IOCTRL_SET_TCODE_CTRL 36 -#define SPACEWIRE_IOCTRL_SET_TCODE 37 -#define SPACEWIRE_IOCTRL_GET_TCODE 38 -#define SPACEWIRE_IOCTRL_SET_READ_TIMEOUT 39 - -#define SPACEWIRE_IOCTRL_START 64 -#define SPACEWIRE_IOCTRL_STOP 65 - -/* Defines what register bits that will be touched - * for SPACEWIRE_IOCTRL_SET_TCODE_CTRL - */ -#define SPACEWIRE_TCODE_CTRL_IE_MSK 0x001 -#define SPACEWIRE_TCODE_CTRL_TT_MSK 0x004 -#define SPACEWIRE_TCODE_CTRL_TR_MSK 0x008 - -/* Defines what register bits that should be set - * for SPACEWIRE_IOCTRL_SET_TCODE_CTRL - */ -#define SPACEWIRE_TCODE_CTRL_IE 0x100 -#define SPACEWIRE_TCODE_CTRL_TT 0x400 -#define SPACEWIRE_TCODE_CTRL_TR 0x800 - -/* SPACEWIRE_IOCTRL_SET_TCODE argument mask */ -#define SPACEWIRE_TCODE_TCODE 0x0ff -#define SPACEWIRE_TCODE_SET 0x100 /* Set Timecode register */ -#define SPACEWIRE_TCODE_TX 0x400 - -void grspw_register_drv (void); - -void grspw_print(int options); - -/* Global GRSPW Function pointer called upon timecode receive interrupt */ -extern void (*grspw_timecode_callback) - (void *pDev, void *regs, int minor, unsigned int tc); - - -#ifdef __cplusplus -} -#endif - -#endif /* __GRSPW_H__ */ |