Home | History | Annotate | Line # | Download | only in imx
      1  1.1  jkunz /* $Id: imx23_uartdbgreg.h,v 1.1 2012/11/20 19:06:14 jkunz Exp $ */
      2  1.1  jkunz 
      3  1.1  jkunz /*
      4  1.1  jkunz  * Copyright (c) 2012 The NetBSD Foundation, Inc.
      5  1.1  jkunz  * All rights reserved.
      6  1.1  jkunz  *
      7  1.1  jkunz  * This code is derived from software contributed to The NetBSD Foundation
      8  1.1  jkunz  * by Petri Laakso.
      9  1.1  jkunz  *
     10  1.1  jkunz  * Redistribution and use in source and binary forms, with or without
     11  1.1  jkunz  * modification, are permitted provided that the following conditions
     12  1.1  jkunz  * are met:
     13  1.1  jkunz  * 1. Redistributions of source code must retain the above copyright
     14  1.1  jkunz  *    notice, this list of conditions and the following disclaimer.
     15  1.1  jkunz  * 2. Redistributions in binary form must reproduce the above copyright
     16  1.1  jkunz  *    notice, this list of conditions and the following disclaimer in the
     17  1.1  jkunz  *    documentation and/or other materials provided with the distribution.
     18  1.1  jkunz  *
     19  1.1  jkunz  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
     20  1.1  jkunz  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
     21  1.1  jkunz  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     22  1.1  jkunz  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
     23  1.1  jkunz  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     24  1.1  jkunz  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     25  1.1  jkunz  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     26  1.1  jkunz  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     27  1.1  jkunz  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     28  1.1  jkunz  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     29  1.1  jkunz  * POSSIBILITY OF SUCH DAMAGE.
     30  1.1  jkunz  */
     31  1.1  jkunz 
     32  1.1  jkunz #ifndef _ARM_IMX_IMX23_UARTDBGREG_H_
     33  1.1  jkunz #define _ARM_IMX_IMX23_UARTDBGREG_H_
     34  1.1  jkunz 
     35  1.1  jkunz #ifdef _LOCORE
     36  1.1  jkunz #include <machine/asm.h>
     37  1.1  jkunz #else
     38  1.1  jkunz #include <sys/cdefs.h>
     39  1.1  jkunz #endif /* !_LOCORE */
     40  1.1  jkunz 
     41  1.1  jkunz #define HW_UARTDBG_BASE	0x80070000
     42  1.1  jkunz #define HW_UARTDBG_SIZE	0x00002000 /* 8kB */
     43  1.1  jkunz 
     44  1.1  jkunz /*
     45  1.1  jkunz  * UART Data Register.
     46  1.1  jkunz  */
     47  1.1  jkunz #define HW_UARTDBGDR	0x000
     48  1.1  jkunz 
     49  1.1  jkunz #define HW_UARTDBGDR_UNAVAILABLE	__BITS(31, 16)
     50  1.1  jkunz #define HW_UARTDBGDR_RESERVED		__BITS(15, 12)
     51  1.1  jkunz #define HW_UARTDBGDR_OE			__BIT(11)
     52  1.1  jkunz #define HW_UARTDBGDR_BE			__BIT(10)
     53  1.1  jkunz #define HW_UARTDBGDR_PE			__BIT(9)
     54  1.1  jkunz #define HW_UARTDBGDR_FE			__BIT(8)
     55  1.1  jkunz #define HW_UARTDBGDR_DATA		__BITS(7,0)
     56  1.1  jkunz 
     57  1.1  jkunz /*
     58  1.1  jkunz  * UART Receive Status Register.
     59  1.1  jkunz  */
     60  1.1  jkunz #define HW_UARTDBGRSR_ECR	0x004
     61  1.1  jkunz 
     62  1.1  jkunz #define HW_UARTDBGRSR_ECR_UNAVAILABLE	__BITS(31, 8)
     63  1.1  jkunz #define HW_UARTDBGRSR_ECR_EC		__BITS(7, 4)
     64  1.1  jkunz #define HW_UARTDBGRSR_ECR_OE		__BIT(3)
     65  1.1  jkunz #define HW_UARTDBGRSR_ECR_BE		__BIT(2)
     66  1.1  jkunz #define HW_UARTDBGRSR_ECR_PE		__BIT(1)
     67  1.1  jkunz #define HW_UARTDBGRSR_ECR_FE		__BIT(0)
     68  1.1  jkunz 
     69  1.1  jkunz /*
     70  1.1  jkunz  * UART Flag Register.
     71  1.1  jkunz  */
     72  1.1  jkunz #define HW_UARTDBGFR	0x018
     73  1.1  jkunz 
     74  1.1  jkunz #define HW_UARTDBGFR_RUNAVAILABLE	__BITS(31, 16)
     75  1.1  jkunz #define HW_UARTDBGFR_RESERVED		__BITS(15, 9)
     76  1.1  jkunz #define HW_UARTDBGFR_RI			__BIT(8)
     77  1.1  jkunz #define HW_UARTDBGFR_TXFE		__BIT(7)
     78  1.1  jkunz #define HW_UARTDBGFR_RXFF		__BIT(6)
     79  1.1  jkunz #define HW_UARTDBGFR_TXFF		__BIT(5)
     80  1.1  jkunz #define HW_UARTDBGFR_RXFE		__BIT(4)
     81  1.1  jkunz #define HW_UARTDBGFR_BUSY		__BIT(3)
     82  1.1  jkunz #define HW_UARTDBGFR_DCD		__BIT(2)
     83  1.1  jkunz #define HW_UARTDBGFR_DSR		__BIT(1)
     84  1.1  jkunz #define HW_UARTDBGFR_CTS		__BIT(0)
     85  1.1  jkunz 
     86  1.1  jkunz /*
     87  1.1  jkunz  * UART IrDA Low-Power Counter Register.
     88  1.1  jkunz  */
     89  1.1  jkunz #define HW_UARTDBGILPR	0x020
     90  1.1  jkunz 
     91  1.1  jkunz #define HW_UARTDBGILPR_UNAVAILABLE	__BITS(31, 8)
     92  1.1  jkunz #define HW_UARTDBGILPR_ILPDVSR		__BIT(7, 0)
     93  1.1  jkunz 
     94  1.1  jkunz /*
     95  1.1  jkunz  * UART Integer Baud Rate Divisor Register.
     96  1.1  jkunz  */
     97  1.1  jkunz #define HW_UARTDBGIBRD	0x024
     98  1.1  jkunz 
     99  1.1  jkunz #define HW_UARTDBGIBRD_UNAVAILABLE	__BITS(31, 16)
    100  1.1  jkunz #define HW_UARTDBGIBRD_BAUD_DIVINT	__BITS(15, 0)
    101  1.1  jkunz 
    102  1.1  jkunz /*
    103  1.1  jkunz  * UART Fractional Baud Rate Divisor Register.
    104  1.1  jkunz  */
    105  1.1  jkunz #define HW_UARTDBGFBRD	0x028
    106  1.1  jkunz 
    107  1.1  jkunz #define HW_UARTDBGFBRD_UNAVAILABLE	__BITS(31, 8)
    108  1.1  jkunz #define HW_UARTDBGFBRD_RESERVED		__BITS(7, 6)
    109  1.1  jkunz #define HW_UARTDBGFBRD_BAUD_DIVFRAC	__BITS(5, 0)
    110  1.1  jkunz 
    111  1.1  jkunz /*
    112  1.1  jkunz  * UART Line Control Register.
    113  1.1  jkunz  */
    114  1.1  jkunz #define HW_UARTDBGLCR_H	0x02C
    115  1.1  jkunz 
    116  1.1  jkunz #define HW_UARTDBGLCR_H_UNAVAILABLE	__BITS(31, 16)
    117  1.1  jkunz #define HW_UARTDBGLCR_H_RESERVED	__BITS(15, 8)
    118  1.1  jkunz #define HW_UARTDBGLCR_H_SPS		__BIT(7)
    119  1.1  jkunz #define HW_UARTDBGLCR_H_WLEN		__BITS(6, 5)
    120  1.1  jkunz #define HW_UARTDBGLCR_H_FEN		__BIT(4)
    121  1.1  jkunz #define HW_UARTDBGLCR_H_STP2		__BIT(3)
    122  1.1  jkunz #define HW_UARTDBGLCR_H_EPS		__BIT(2)
    123  1.1  jkunz #define HW_UARTDBGLCR_H_PEN		__BIT(1)
    124  1.1  jkunz #define HW_UARTDBGLCR_H_BRK		__BIT(0)
    125  1.1  jkunz 
    126  1.1  jkunz /*
    127  1.1  jkunz  * UART Control Register.
    128  1.1  jkunz  */
    129  1.1  jkunz #define HW_UARTDBGCR	0x030
    130  1.1  jkunz 
    131  1.1  jkunz #define HW_UARTDBGCR_UNAVAILABLE	__BITS(31, 16)
    132  1.1  jkunz #define HW_UARTDBGCR_CTSEN		__BIT(15)
    133  1.1  jkunz #define HW_UARTDBGCR_RTSEN		__BIT(14)
    134  1.1  jkunz #define HW_UARTDBGCR_OUT2		__BIT(13)
    135  1.1  jkunz #define HW_UARTDBGCR_OUT1		__BIT(12)
    136  1.1  jkunz #define HW_UARTDBGCR_RTS		__BIT(11)
    137  1.1  jkunz #define HW_UARTDBGCR_DTR		__BIT(10)
    138  1.1  jkunz #define HW_UARTDBGCR_RXE		__BIT(9)
    139  1.1  jkunz #define HW_UARTDBGCR_TXE		__BIT(8)
    140  1.1  jkunz #define HW_UARTDBGCR_LBE		__BIT(7)
    141  1.1  jkunz #define HW_UARTDBGCR_RESERVED		__BITS(6, 3)
    142  1.1  jkunz #define HW_UARTDBGCR_SIRLP		__BIT(2)
    143  1.1  jkunz #define HW_UARTDBGCR_SIREN		__BIT(1)
    144  1.1  jkunz #define HW_UARTDBGCR_UARTEN		__BIT(0)
    145  1.1  jkunz 
    146  1.1  jkunz /*
    147  1.1  jkunz  * UART Interrupt FIFO Level Select Register.
    148  1.1  jkunz  */
    149  1.1  jkunz #define HW_UARTDBGIFLS	0x034
    150  1.1  jkunz 
    151  1.1  jkunz #define HW_UARTDBGIFLS_UNAVAILABLE	__BITS(31, 16)
    152  1.1  jkunz #define HW_UARTDBGIFLS_RESERVED		__BITS(15, 6)
    153  1.1  jkunz #define HW_UARTDBGIFLS_RXIFLSEL		__BITS(5, 3)
    154  1.1  jkunz #define HW_UARTDBGIFLS_TXIFLSEL		__BITS(2, 0)
    155  1.1  jkunz 
    156  1.1  jkunz /*
    157  1.1  jkunz  * UART Interrupt Mask Set/Clear Register.
    158  1.1  jkunz  */
    159  1.1  jkunz #define HW_UARTDBGIMSC	0x038
    160  1.1  jkunz 
    161  1.1  jkunz #define HW_UARTDBGIMSC_UNAVAILABLE	__BITS(31, 16)
    162  1.1  jkunz #define HW_UARTDBGIMSC_RESERVED		__BITS(15, 11)
    163  1.1  jkunz #define HW_UARTDBGIMSC_OEIM		__BIT(10)
    164  1.1  jkunz #define HW_UARTDBGIMSC_BEIM		__BIT(9)
    165  1.1  jkunz #define HW_UARTDBGIMSC_PEIM		__BIT(8)
    166  1.1  jkunz #define HW_UARTDBGIMSC_FEIM		__BIT(7)
    167  1.1  jkunz #define HW_UARTDBGIMSC_RTIM		__BIT(6)
    168  1.1  jkunz #define HW_UARTDBGIMSC_TXIM		__BIT(5)
    169  1.1  jkunz #define HW_UARTDBGIMSC_RXIM		__BIT(4)
    170  1.1  jkunz #define HW_UARTDBGIMSC_DSRMIM		__BIT(3)
    171  1.1  jkunz #define HW_UARTDBGIMSC_DCDMIM		__BIT(2)
    172  1.1  jkunz #define HW_UARTDBGIMSC_CTSMIM		__BIT(1)
    173  1.1  jkunz #define HW_UARTDBGIMSC_RIMIM		__BIT(0)
    174  1.1  jkunz 
    175  1.1  jkunz /*
    176  1.1  jkunz  * UART Raw Interrupt Status Register.
    177  1.1  jkunz  */
    178  1.1  jkunz #define HW_UARTDBGRIS	0x03C
    179  1.1  jkunz 
    180  1.1  jkunz #define HW_UARTDBGRIS_UNAVAILABLE	__BITS(31, 16)
    181  1.1  jkunz #define HW_UARTDBGRIS_RESERVED		__BITS(15, 11)
    182  1.1  jkunz #define HW_UARTDBGRIS_OERIS		__BIT(10)
    183  1.1  jkunz #define HW_UARTDBGRIS_BERIS		__BIT(9)
    184  1.1  jkunz #define HW_UARTDBGRIS_PERIS		__BIT(8)
    185  1.1  jkunz #define HW_UARTDBGRIS_FERIS		__BIT(7)
    186  1.1  jkunz #define HW_UARTDBGRIS_RTRIS		__BIT(6)
    187  1.1  jkunz #define HW_UARTDBGRIS_TXRIS		__BIT(5)
    188  1.1  jkunz #define HW_UARTDBGRIS_RXRIS		__BIT(4)
    189  1.1  jkunz #define HW_UARTDBGRIS_DSRRMIS		__BIT(3)
    190  1.1  jkunz #define HW_UARTDBGRIS_DCDRMIS		__BIT(2)
    191  1.1  jkunz #define HW_UARTDBGRIS_CTSRMIS		__BIT(1)
    192  1.1  jkunz #define HW_UARTDBGRIS_RIRMIS		__BIT(0)
    193  1.1  jkunz 
    194  1.1  jkunz /*
    195  1.1  jkunz  * UART Masked Interrupt Status Register.
    196  1.1  jkunz  */
    197  1.1  jkunz #define HW_UARTDBGMIS	0x040
    198  1.1  jkunz 
    199  1.1  jkunz #define HW_UARTDBGMIS_UNAVAILABLE	__BITS(31, 16)
    200  1.1  jkunz #define HW_UARTDBGMIS_RESERVED		__BITS(15, 11)
    201  1.1  jkunz #define HW_UARTDBGMIS_OEMIS		__BIT(10)
    202  1.1  jkunz #define HW_UARTDBGMIS_BEMIS		__BIT(9)
    203  1.1  jkunz #define HW_UARTDBGMIS_PEMIS		__BIT(8)
    204  1.1  jkunz #define HW_UARTDBGMIS_FEMIS		__BIT(7)
    205  1.1  jkunz #define HW_UARTDBGMIS_RTMIS		__BIT(6)
    206  1.1  jkunz #define HW_UARTDBGMIS_TXMIS		__BIT(5)
    207  1.1  jkunz #define HW_UARTDBGMIS_RXMIS		__BIT(4)
    208  1.1  jkunz #define HW_UARTDBGMIS_DSRMMIS		__BIT(3)
    209  1.1  jkunz #define HW_UARTDBGMIS_DCDMMIS		__BIT(2)
    210  1.1  jkunz #define HW_UARTDBGMIS_CTSMMIS		__BIT(1)
    211  1.1  jkunz #define HW_UARTDBGMIS_RIMMIS		__BIT(0)
    212  1.1  jkunz 
    213  1.1  jkunz /*
    214  1.1  jkunz  * UART Interrupt Clear Register.
    215  1.1  jkunz  */
    216  1.1  jkunz #define HW_UARTDBGICR	0x044
    217  1.1  jkunz 
    218  1.1  jkunz #define HW_UARTDBGICR_UNAVAILABLE	__BITS(31, 16)
    219  1.1  jkunz #define HW_UARTDBGICR_RESERVED		__BITS(15, 11)
    220  1.1  jkunz #define HW_UARTDBGICR_OEIC		__BIT(10)
    221  1.1  jkunz #define HW_UARTDBGICR_BEIC		__BIT(9)
    222  1.1  jkunz #define HW_UARTDBGICR_PEIC		__BIT(8)
    223  1.1  jkunz #define HW_UARTDBGICR_FEIC		__BIT(7)
    224  1.1  jkunz #define HW_UARTDBGICR_RTIC		__BIT(6)
    225  1.1  jkunz #define HW_UARTDBGICR_TXIC		__BIT(5)
    226  1.1  jkunz #define HW_UARTDBGICR_RXIC		__BIT(4)
    227  1.1  jkunz #define HW_UARTDBGICR_DSRMIC		__BIT(3)
    228  1.1  jkunz #define HW_UARTDBGICR_DCDMIC		__BIT(2)
    229  1.1  jkunz #define HW_UARTDBGICR_CTSMIC		__BIT(1)
    230  1.1  jkunz #define HW_UARTDBGICR_RIMIC		__BIT(0)
    231  1.1  jkunz 
    232  1.1  jkunz /*
    233  1.1  jkunz  * UART DMA Control Register.
    234  1.1  jkunz  */
    235  1.1  jkunz #define HW_UARTDBGDMACR	0x048
    236  1.1  jkunz 
    237  1.1  jkunz #define HW_UARTDBGDMACR_UNAVAILABLE	__BITS(31, 16)
    238  1.1  jkunz #define HW_UARTDBGDMACR_RESERVED	__BITS(15, 3)
    239  1.1  jkunz #define HW_UARTDBGDMACR_DMAONERR	__BIT(2)
    240  1.1  jkunz #define HW_UARTDBGDMACR_TXDMAE		__BIT(1)
    241  1.1  jkunz #define HW_UARTDBGDMACR_RXDMAE		__BIT(0)
    242  1.1  jkunz 
    243  1.1  jkunz #endif /* !_ARM_IMX_IMX23_UARTDBGREG_H_ */
    244