sysDuart.h
上传用户:dqzhongke1
上传日期:2022-06-26
资源大小:667k
文件大小:3k
源码类别:

VxWorks

开发平台:

C/C++

  1. /* sysDuart.h - MPC854x duart driver */
  2. /* Copyright 1984-2002 Wind River Systems, Inc. */
  3. /* Copyright 1996, 1998 Motorola, Inc. */
  4. /*
  5. modification history
  6. --------------------
  7. 01c,22mar05,dtr  Fix typos.
  8. 01b,22jul03,mil  Used unsigned calculation of COM base address.
  9. 01a,28jan02,jnz   created for MPC 8245/8241 Duart device.
  10. */
  11. /*
  12. This file contains I/O addresses and related constants for the
  13. MPC 8245/8241 Duart device.
  14. */
  15. #ifndef __INCsysDuarth
  16. #define __INCsysDuarth
  17. #ifdef __cplusplus
  18. extern "C" {
  19. #endif
  20. /* external variables */
  21. /* Duart Port Definitions */
  22. #define COM1         "/tyCo/0"             /* duart com port 1 */
  23. #define COM2         "/tyCo/1"             /* duart com port 2 */
  24. #define COM1_MEM_BASE       0x0500       /* com3 pci mem offset */
  25. #define COM2_MEM_BASE       0x0600         /* com4 pci mem offset */
  26. #define COM1_LOCAL_MEM_BASE     0x4500       /* com3 local mem offset */
  27. #define COM2_LOCAL_MEM_BASE     0x4600         /* com4 local mem offset */
  28. #define COM1_ADR         ((ULONG) CCSBAR + (ULONG) COM1_LOCAL_MEM_BASE)
  29. #define COM2_ADR         ((ULONG) CCSBAR + (ULONG) COM2_LOCAL_MEM_BASE)
  30. #define N_DUART_CHANNELS  2              /* 2 serial ports  */
  31. #define N_DUART_SIO_CHANNELS   N_DUART_CHANNELS      /* 2 serial I/O channels */
  32. #undef  NUM_DUART_TTY
  33. #define NUM_DUART_TTY           N_DUART_SIO_CHANNELS  /* default two duart channels */
  34. #define DUART_BAUD              9600                  /* default baud rate */
  35. #define DUART_REG_ADDR_INTERVAL 1                     /* duart vector register distance */
  36. #if FALSE
  37. #define XTAL                    1843200
  38. #else
  39. #define XTAL                    133333333 /* 66666666 */
  40. #endif
  41. #define DUART1_DATA_SPACE  0x000d0000 /* for stock data from UART1 Rx */
  42. #define DUART2_DATA_SPACE    0x000d0100 /* for stock data from UART2 Rx */
  43. /* UART1 8245 UM rev0 pg12-5 */
  44. #define URBR1                   0x04500    /* DLAB=0 read only  */
  45. #define UTHR1                   0x04500    /* DLAB=0 write only */
  46. #define UDLB1                   0x04500    /* DLAB=1 */
  47. #define UDMB1                   0x04501    /* DLAB=1 */
  48. #define UIER1                   0x04501    /* DLAB=0 */
  49. #define UIIR1                   0x04502    /* DLAB=0 read only  */
  50. #define UFCR1                   0x04502    /* DLAB=0 write only */
  51. #define UAFR1                   0x04502    /* DLAB=1 */
  52. #define ULCR1                   0x04503
  53. #define UMCR1                   0x04504
  54. #define ULSR1                   0x04505
  55. #define UMSR1                   0x04506
  56. #define USCR1                   0x04507
  57. #define UDSR1                   0x04510    /* read only */
  58. #define UDCR1                   0x04511
  59. /* UART2 8245 UM rev0 pg12-6 */
  60. #define URBR2                   0x04600    /* DLAB=0 read only  */
  61. #define UTHR2                   0x04600    /* DLAB=0 write only */
  62. #define UDLB2                   0x04600    /* DLAB=1 */
  63. #define UDMB2                   0x04601    /* DLAB=1 */
  64. #define UIER2                   0x04601    /* DLAB=0 */
  65. #define UIIR2                   0x04602    /* DLAB=0 read only  */
  66. #define UFCR2                   0x04602    /* DLAB=0 write only */
  67. #define UAFR2                   0x04602    /* DLAB=1 */
  68. #define ULCR2                   0x04603
  69. #define UMCR2                   0x04604
  70. #define ULSR2                   0x04605
  71. #define UMSR2                   0x04606
  72. #define USCR2                   0x04607
  73. #define UDSR2                   0x04610    /* read only */
  74. #define UDCR2                   0x04611
  75. #ifdef __cplusplus
  76. }
  77. #endif
  78. #endif  /* __INCsysDuarth */