53 lines
1.3 KiB
C
53 lines
1.3 KiB
C
#ifndef SYSTEM_RTL8710BX
|
|
#define SYSTEM_RTL8710BX
|
|
|
|
#include <stdint.h>
|
|
|
|
// #define USE_ROM_TABLES
|
|
|
|
#ifdef USE_ROM_TABLES
|
|
#define CPU_CLK_TABLE_ADDR 0x00046E68
|
|
#define XTAL_TABLE_ADDR 0x00046E10
|
|
/* for init inline asm */
|
|
#define CPU_CLK_TABLE ((const uint32_t*)CPU_CLK_TABLE_ADDR)
|
|
#define XTAL_TABLE ((const uint32_t*)XTAL_TABLE_ADDR)
|
|
#else
|
|
|
|
/* CPU clock frequency table (Hz) */
|
|
static const uint32_t CPU_CLK_TABLE[] = {
|
|
125000000, /* 125 MHz */
|
|
62500000, /* 62.5 MHz */
|
|
31250000, /* 31.25 MHz */
|
|
15625000, /* 15.625 MHz */
|
|
7812500, /* 7.8125 MHz */
|
|
4000000 /* 4 MHz */
|
|
};
|
|
|
|
/* Crystal oscillator frequency table (Hz) */
|
|
static const uint32_t XTAL_TABLE[] = {
|
|
40000000, /* 40 MHz */
|
|
25000000, /* 25 MHz */
|
|
13000000, /* 13 MHz */
|
|
19200000, /* 19.2 MHz */
|
|
20000000, /* 20 MHz */
|
|
26000000, /* 26 MHz */
|
|
38400000, /* 38.4 MHz */
|
|
17664000, /* 17.664 MHz */
|
|
16000000, /* 16 MHz */
|
|
14318000, /* 14.318 MHz */
|
|
12000000, /* 12 MHz */
|
|
};
|
|
/* for init inline asm */
|
|
#define CPU_CLK_TABLE_ADDR ((uint32_t)CPU_CLK_TABLE)
|
|
#define XTAL_TABLE_ADDR ((uint32_t)XTAL_TABLE)
|
|
|
|
#endif
|
|
|
|
/* System Clock Frequency (Core Clock)*/
|
|
extern uint32_t SystemCoreClock;
|
|
|
|
void SystemCoreClockUpdate(void);
|
|
void SystemInit(void);
|
|
|
|
#endif // SYSTEM_RTL8710BX
|