source: rtems/c/src/lib/libcpu/bfin/include/spiRegs.h @ fe83cef6

4.104.11
Last change on this file since fe83cef6 was fe83cef6, checked in by Joel Sherrill <joel.sherrill@…>, on Jan 11, 2010 at 4:14:47 PM

2010-01-11 Allan Hessenflow <allanh@…>

  • serial/spi.c, serial/spi.h: Fill in skeleton with functional SPI master code.
  • include/spiRegs.h: Correct spi shadow register declaration.
  • Property mode set to 100644
File size: 3.1 KB
Line 
1/*  Blackfin SPI Registers
2 *
3 *  Copyright (c) 2010 Kallisti Labs, Los Gatos, CA, USA
4 *             written by Allan Hessenflow <allanh@kallisti.com>
5 *
6 *  The license and distribution terms for this file may be
7 *  found in the file LICENSE in this distribution or at
8 *  http://www.rtems.com/license/LICENSE.
9 *
10 *  $Id$
11 */
12
13#ifndef _spiRegs_h_
14#define _spiRegs_h_
15
16
17/* register addresses */
18
19#define SPI_CTL_OFFSET                                0x0000
20#define SPI_FLG_OFFSET                                0x0004
21#define SPI_STAT_OFFSET                               0x0008
22#define SPI_TDBR_OFFSET                               0x000c
23#define SPI_RDBR_OFFSET                               0x0010
24#define SPI_BAUD_OFFSET                               0x0014
25#define SPI_SHADOW_OFFSET                             0x0018
26
27
28/* register fields */
29
30#define SPI_CTL_SPE                                   0x4000
31#define SPI_CTL_WOM                                   0x2000
32#define SPI_CTL_MSTR                                  0x1000
33#define SPI_CTL_CPOL                                  0x0800
34#define SPI_CTL_CPHA                                  0x0400
35#define SPI_CTL_LSBF                                  0x0200
36#define SPI_CTL_SIZE                                  0x0100
37#define SPI_CTL_EMISO                                 0x0020
38#define SPI_CTL_PSSE                                  0x0010
39#define SPI_CTL_GM                                    0x0008
40#define SPI_CTL_SZ                                    0x0004
41#define SPI_CTL_TIMOD_MASK                            0x0003
42#define SPI_CTL_TIMOD_RDBR                            0x0000
43#define SPI_CTL_TIMOD_TDBR                            0x0001
44#define SPI_CTL_TIMOD_DMA_RDBR                        0x0002
45#define SPI_CTL_TIMOD_DMA_TDBR                        0x0003
46
47#define SPI_FLG_FLG7                                  0x8000
48#define SPI_FLG_FLG6                                  0x4000
49#define SPI_FLG_FLG5                                  0x2000
50#define SPI_FLG_FLG4                                  0x1000
51#define SPI_FLG_FLG3                                  0x0800
52#define SPI_FLG_FLG2                                  0x0400
53#define SPI_FLG_FLG1                                  0x0200
54#define SPI_FLG_FLS7                                  0x0080
55#define SPI_FLG_FLS6                                  0x0040
56#define SPI_FLG_FLS5                                  0x0020
57#define SPI_FLG_FLS4                                  0x0010
58#define SPI_FLG_FLS3                                  0x0008
59#define SPI_FLG_FLS2                                  0x0004
60#define SPI_FLG_FLS1                                  0x0002
61
62#define SPI_STAT_TXCOL                                0x0040
63#define SPI_STAT_RXS                                  0x0020
64#define SPI_STAT_RBSY                                 0x0010
65#define SPI_STAT_TXS                                  0x0008
66#define SPI_STAT_TXE                                  0x0004
67#define SPI_STAT_MODF                                 0x0002
68#define SPI_STAT_SPIF                                 0x0001
69
70
71#endif /* _spiRegs_h_ */
72
Note: See TracBrowser for help on using the repository browser.