board.h 2.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102
  1. /*
  2. * File : board.h
  3. * This file is part of RT-Thread RTOS
  4. * COPYRIGHT (C) 2008 - 2016, RT-Thread Development Team
  5. *
  6. * This program is free software; you can redistribute it and/or modify
  7. * it under the terms of the GNU General Public License as published by
  8. * the Free Software Foundation; either version 2 of the License, or
  9. * (at your option) any later version.
  10. *
  11. * This program is distributed in the hope that it will be useful,
  12. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  13. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  14. * GNU General Public License for more details.
  15. *
  16. * You should have received a copy of the GNU General Public License along
  17. * with this program; if not, write to the Free Software Foundation, Inc.,
  18. * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
  19. *
  20. * Change Logs:
  21. * Date Author Notes
  22. * 2015-11-19 Urey the first version
  23. */
  24. #ifndef _BOARD_H_
  25. #define _BOARD_H_
  26. #include <rtthread.h>
  27. #include <stdint.h>
  28. #include "x1000.h"
  29. #define RT_USING_JZ_X1000
  30. #define X1000
  31. #ifdef BOARD_HALLEY2_FIR
  32. #include "board/halley2_fir/board_halley2_fir.h"
  33. #endif
  34. #ifdef BOARD_HALLEY2_REALBOARD
  35. #include "board/halley2_realboard/board_halley2_readboard.h"
  36. #endif
  37. #ifdef BOARD_HALLEY2_REALBOARD_V2
  38. #include "board/halley2_realboard_v2/board_halley2_readboard_v2.h"
  39. #endif
  40. #ifdef BOARD_HALLEY2_IDELAN
  41. #include "board/halley2_idelan/board_halley2_idelan.h"
  42. #endif
  43. #ifdef BOARD_HALLEY2
  44. #include "board/halley2/board_halley2.h"
  45. #endif
  46. #ifdef BOARD_PHOENIX
  47. #include "board/phoenix/board_phoenix.h"
  48. #endif
  49. #ifdef BOARD_CANNA
  50. #include "board/canna/board_canna.h"
  51. #endif
  52. /*
  53. * Clock setting
  54. */
  55. #define BOARD_EXTAL_CLK 24000000
  56. #define BOARD_RTC_CLK 32768
  57. #define BOARD_CPU_CLK (1008 * 1000 * 1000UL)
  58. #define BOARD_APLL_FREQ 1008000000 /*If APLL not use mast be set 0*/
  59. #define BOARD_MPLL_FREQ 600000000 /*If MPLL not use mast be set 0*/
  60. /*
  61. * Heap setting
  62. */
  63. extern unsigned char __bss_start;
  64. extern unsigned char __bss_end;
  65. #define RT_HW_HEAP_BEGIN (void*)&__bss_end
  66. #define RT_HW_HEAP_END (void*)(0x80000000 + 32 * 1024 * 1024)
  67. /* HW EVENT */
  68. #define EVENT_NONE 0x0000
  69. #define EVENT_TYPE_MSK 0xFF00
  70. #define EVENT_VALUE_MSK 0x00FF
  71. #define EVENT_LINEIN 0x0100
  72. #define EVENT_LINEIN_INSERT 0x0101
  73. #define EVENT_LINEIN_REMOVE 0x0102
  74. #define EVENT_LINEIN_SHUTDOWN 0x0103
  75. #define EVENT_BAT 0x0200
  76. #define EVENT_BAT_ALONE 0x0201
  77. #define EVENT_BAT_CHARGE_IN 0x0202
  78. #define EVENT_BAT_CHARGE_FULL 0x0203
  79. #define EVENT_BAT_ERROR 0x0204
  80. #define EVENT_KEY_DOWN 0x0300
  81. #define EVENT_KEY_UP 0x0400
  82. #endif /* _BOARD_H_ */