Home | History | Annotate | Download | only in arch
      1 /****************************************************************************
      2  ****************************************************************************
      3  ***
      4  ***   This header was automatically generated from a Linux kernel header
      5  ***   of the same name, to make information necessary for userspace to
      6  ***   call into the kernel available to libc.  It contains only constants,
      7  ***   structures, and macros generated from the original header, and thus,
      8  ***   contains no copyrightable information.
      9  ***
     10  ***   To edit the content of this header, modify the corresponding
     11  ***   source file (e.g. under external/kernel-headers/original/) then
     12  ***   run bionic/libc/kernel/tools/update_all.py
     13  ***
     14  ***   Any manual change here will be lost the next time this script will
     15  ***   be run. You've been warned!
     16  ***
     17  ****************************************************************************
     18  ****************************************************************************/
     19 #ifndef __ASM_ARCH_OMAP_MCBSP_H
     20 #define __ASM_ARCH_OMAP_MCBSP_H
     21 #include <asm/hardware.h>
     22 #define OMAP730_MCBSP1_BASE 0xfffb1000
     23 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     24 #define OMAP730_MCBSP2_BASE 0xfffb1800
     25 #define OMAP1510_MCBSP1_BASE 0xe1011800
     26 #define OMAP1510_MCBSP2_BASE 0xfffb1000
     27 #define OMAP1510_MCBSP3_BASE 0xe1017000
     28 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     29 #define OMAP1610_MCBSP1_BASE 0xe1011800
     30 #define OMAP1610_MCBSP2_BASE 0xfffb1000
     31 #define OMAP1610_MCBSP3_BASE 0xe1017000
     32 #define OMAP24XX_MCBSP1_BASE 0x48074000
     33 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     34 #define OMAP24XX_MCBSP2_BASE 0x48076000
     35 #define OMAP_MCBSP_READ(base, reg) __raw_readw((base) + OMAP_MCBSP_REG_##reg)
     36 #define OMAP_MCBSP_WRITE(base, reg, val) __raw_writew((val), (base) + OMAP_MCBSP_REG_##reg)
     37 #define RRST 0x0001
     38 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     39 #define RRDY 0x0002
     40 #define RFULL 0x0004
     41 #define RSYNC_ERR 0x0008
     42 #define RINTM(value) ((value)<<4)
     43 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     44 #define ABIS 0x0040
     45 #define DXENA 0x0080
     46 #define CLKSTP(value) ((value)<<11)
     47 #define RJUST(value) ((value)<<13)
     48 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     49 #define DLB 0x8000
     50 #define XRST 0x0001
     51 #define XRDY 0x0002
     52 #define XEMPTY 0x0004
     53 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     54 #define XSYNC_ERR 0x0008
     55 #define XINTM(value) ((value)<<4)
     56 #define GRST 0x0040
     57 #define FRST 0x0080
     58 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     59 #define SOFT 0x0100
     60 #define FREE 0x0200
     61 #define CLKRP 0x0001
     62 #define CLKXP 0x0002
     63 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     64 #define FSRP 0x0004
     65 #define FSXP 0x0008
     66 #define DR_STAT 0x0010
     67 #define DX_STAT 0x0020
     68 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     69 #define CLKS_STAT 0x0040
     70 #define SCLKME 0x0080
     71 #define CLKRM 0x0100
     72 #define CLKXM 0x0200
     73 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     74 #define FSRM 0x0400
     75 #define FSXM 0x0800
     76 #define RIOEN 0x1000
     77 #define XIOEN 0x2000
     78 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     79 #define IDLE_EN 0x4000
     80 #define RWDLEN1(value) ((value)<<5)
     81 #define RFRLEN1(value) ((value)<<8)
     82 #define XWDLEN1(value) ((value)<<5)
     83 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     84 #define XFRLEN1(value) ((value)<<8)
     85 #define RDATDLY(value) (value)
     86 #define RFIG 0x0004
     87 #define RCOMPAND(value) ((value)<<3)
     88 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     89 #define RWDLEN2(value) ((value)<<5)
     90 #define RFRLEN2(value) ((value)<<8)
     91 #define RPHASE 0x8000
     92 #define XDATDLY(value) (value)
     93 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     94 #define XFIG 0x0004
     95 #define XCOMPAND(value) ((value)<<3)
     96 #define XWDLEN2(value) ((value)<<5)
     97 #define XFRLEN2(value) ((value)<<8)
     98 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
     99 #define XPHASE 0x8000
    100 #define CLKGDV(value) (value)
    101 #define FWID(value) ((value)<<8)
    102 #define FPER(value) (value)
    103 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    104 #define FSGM 0x1000
    105 #define CLKSM 0x2000
    106 #define CLKSP 0x4000
    107 #define GSYNC 0x8000
    108 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    109 #define RMCM 0x0001
    110 #define RCBLK(value) ((value)<<2)
    111 #define RPABLK(value) ((value)<<5)
    112 #define RPBBLK(value) ((value)<<7)
    113 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    114 #define XMCM(value) (value)
    115 #define XCBLK(value) ((value)<<2)
    116 #define XPABLK(value) ((value)<<5)
    117 #define XPBBLK(value) ((value)<<7)
    118 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    119 struct omap_mcbsp_reg_cfg {
    120  u16 spcr2;
    121  u16 spcr1;
    122  u16 rcr2;
    123 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    124  u16 rcr1;
    125  u16 xcr2;
    126  u16 xcr1;
    127  u16 srgr2;
    128 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    129  u16 srgr1;
    130  u16 mcr2;
    131  u16 mcr1;
    132  u16 pcr0;
    133 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    134  u16 rcerc;
    135  u16 rcerd;
    136  u16 xcerc;
    137  u16 xcerd;
    138 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    139  u16 rcere;
    140  u16 rcerf;
    141  u16 xcere;
    142  u16 xcerf;
    143 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    144  u16 rcerg;
    145  u16 rcerh;
    146  u16 xcerg;
    147  u16 xcerh;
    148 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    149 };
    150 typedef enum {
    151  OMAP_MCBSP1 = 0,
    152  OMAP_MCBSP2,
    153 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    154  OMAP_MCBSP3,
    155 } omap_mcbsp_id;
    156 typedef int __bitwise omap_mcbsp_io_type_t;
    157 #define OMAP_MCBSP_IRQ_IO ((__force omap_mcbsp_io_type_t) 1)
    158 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    159 #define OMAP_MCBSP_POLL_IO ((__force omap_mcbsp_io_type_t) 2)
    160 typedef enum {
    161  OMAP_MCBSP_WORD_8 = 0,
    162  OMAP_MCBSP_WORD_12,
    163 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    164  OMAP_MCBSP_WORD_16,
    165  OMAP_MCBSP_WORD_20,
    166  OMAP_MCBSP_WORD_24,
    167  OMAP_MCBSP_WORD_32,
    168 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    169 } omap_mcbsp_word_length;
    170 typedef enum {
    171  OMAP_MCBSP_CLK_RISING = 0,
    172  OMAP_MCBSP_CLK_FALLING,
    173 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    174 } omap_mcbsp_clk_polarity;
    175 typedef enum {
    176  OMAP_MCBSP_FS_ACTIVE_HIGH = 0,
    177  OMAP_MCBSP_FS_ACTIVE_LOW,
    178 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    179 } omap_mcbsp_fs_polarity;
    180 typedef enum {
    181  OMAP_MCBSP_CLK_STP_MODE_NO_DELAY = 0,
    182  OMAP_MCBSP_CLK_STP_MODE_DELAY,
    183 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    184 } omap_mcbsp_clk_stp_mode;
    185 typedef enum {
    186  OMAP_MCBSP_SPI_MASTER = 0,
    187  OMAP_MCBSP_SPI_SLAVE,
    188 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    189 } omap_mcbsp_spi_mode;
    190 struct omap_mcbsp_spi_cfg {
    191  omap_mcbsp_spi_mode spi_mode;
    192  omap_mcbsp_clk_polarity rx_clock_polarity;
    193 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    194  omap_mcbsp_clk_polarity tx_clock_polarity;
    195  omap_mcbsp_fs_polarity fsx_polarity;
    196  u8 clk_div;
    197  omap_mcbsp_clk_stp_mode clk_stp_mode;
    198 /* WARNING: DO NOT EDIT, AUTO-GENERATED CODE - SEE TOP FOR INSTRUCTIONS */
    199  omap_mcbsp_word_length word_length;
    200 };
    201 #endif
    202