1 /***********************************************************************************************************************
\r
3 * This software is supplied by Renesas Electronics Corporation and is only intended for use with Renesas products.
\r
4 * No other uses are authorized. This software is owned by Renesas Electronics Corporation and is protected under all
\r
5 * applicable laws, including copyright laws.
\r
6 * THIS SOFTWARE IS PROVIDED "AS IS" AND RENESAS MAKES NO WARRANTIESREGARDING THIS SOFTWARE, WHETHER EXPRESS, IMPLIED
\r
7 * OR STATUTORY, INCLUDING BUT NOT LIMITED TO WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
\r
8 * NON-INFRINGEMENT. ALL SUCH WARRANTIES ARE EXPRESSLY DISCLAIMED.TO THE MAXIMUM EXTENT PERMITTED NOT PROHIBITED BY
\r
9 * LAW, NEITHER RENESAS ELECTRONICS CORPORATION NOR ANY OF ITS AFFILIATED COMPANIES SHALL BE LIABLE FOR ANY DIRECT,
\r
10 * INDIRECT, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES FOR ANY REASON RELATED TO THIS SOFTWARE, EVEN IF RENESAS OR
\r
11 * ITS AFFILIATES HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.
\r
12 * Renesas reserves the right, without notice, to make changes to this software and to discontinue the availability
\r
13 * of this software. By using this software, you agree to the additional terms and conditions found by accessing the
\r
15 * http://www.renesas.com/disclaimer
\r
17 * Copyright (C) 2015 Renesas Electronics Corporation. All rights reserved.
\r
18 ***********************************************************************************************************************/
\r
20 /***********************************************************************************************************************
\r
21 * File Name : r_cg_cgc.h
\r
22 * Version : Code Generator for RZ/T1 V1.00.00.09 [02 Mar 2015]
\r
23 * Device(s) : R7S910018CBG
\r
24 * Tool-Chain : GCCARM
\r
25 * Description : This file implements device driver for CGC module.
\r
26 * Creation Date: 22/04/2015
\r
27 ***********************************************************************************************************************/
\r
31 /***********************************************************************************************************************
\r
32 Macro definitions (Register bit)
\r
33 ***********************************************************************************************************************/
\r
35 System Clock Control Register (SCKCR)
\r
37 /* Peripheral Module Clock G (PCLKG) */
\r
38 #define _CGC_PCLKG_0 (0x00000000UL) /* 60 MHz */
\r
39 #define _CGC_PCLKG_1 (0x00000001UL) /* 30 MHz */
\r
40 #define _CGC_PCLKG_2 (0x00000002UL) /* 15 MHz */
\r
41 #define _CGC_PCLKG_3 (0x00000003UL) /* 7.5 MHz */
\r
42 /* Peripheral Module Clock F (PCLKF) */
\r
43 #define _CGC_PCLKF_0 (0x00000000UL) /* 60 MHz */
\r
44 #define _CGC_PCLKF_1 (0x00000004UL) /* 30 MHz */
\r
45 #define _CGC_PCLKF_2 (0x00000008UL) /* 15 MHz */
\r
46 #define _CGC_PCLKF_3 (0x0000000CUL) /* 7.5 MHz */
\r
47 /* Peripheral Module Clock E (PCLKE) */
\r
48 #define _CGC_PCLKE_0 (0x00000000UL) /* 75 MHz */
\r
49 #define _CGC_PCLKE_1 (0x00000010UL) /* 37.5 MHz */
\r
50 #define _CGC_PCLKE_2 (0x00000020UL) /* 18.75 MHz */
\r
51 /* External Bus Clock (CKIO) */
\r
52 #define _CGC_CKIO_0 (0x00000000UL) /* 75 MHz */
\r
53 #define _CGC_CKIO_1 (0x00000100UL) /* 50 MHz */
\r
54 #define _CGC_CKIO_2 (0x00000200UL) /* 37.5 MHz */
\r
55 #define _CGC_CKIO_3 (0x00000300UL) /* 30 MHz */
\r
56 #define _CGC_CKIO_4 (0x00000400UL) /* 25 MHz */
\r
57 #define _CGC_CKIO_5 (0x00000500UL) /* 21.43 MHz */
\r
58 #define _CGC_CKIO_6 (0x00000600UL) /* 18.75 MHz */
\r
59 /* Ether Clock E (ETCLKE) */
\r
60 #define _CGC_ETCKE_0 (0x00000000UL) /* 25 MHz */
\r
61 #define _CGC_ETCKE_1 (0x00001000UL) /* 50 MHz */
\r
62 #define _CGC_ETCKE_2 (0x00003000UL) /* 25 MHz */
\r
63 /* Ether Clock D (ETCLKD) */
\r
64 #define _CGC_ETCKD_0 (0x00000000UL) /* 12.5 MHz */
\r
65 #define _CGC_ETCKD_1 (0x00004000UL) /* 6.25 MHz */
\r
66 #define _CGC_ETCKD_2 (0x00008000UL) /* 3.125 MHz */
\r
67 #define _CGC_ETCKD_3 (0x0000C000UL) /* 1.563 MHz */
\r
68 /* High-Speed Serial Clock (SERICLK) */
\r
69 #define _CGC_SERICLK_0 (0x00000000UL) /* 150 MHz */
\r
70 #define _CGC_SERICLK_1 (0x00010000UL) /* 120 MHz */
\r
71 /* USB Clock (USBMCLK) */
\r
72 #define _CGC_UCK_0 (0x00000000UL) /* 50 MHz */
\r
73 #define _CGC_UCK_1 (0x00020000UL) /* 24 MHz */
\r
74 /* Trace Interface Clock (TCLK) */
\r
75 #define _CGC_TCLK_0 (0x00000000UL) /* 150 MHz */
\r
76 #define _CGC_TCLK_1 (0x00100000UL) /* 75 MHz */
\r
79 System Clock Control Register 2 (SCKCR2)
\r
81 #define _CGC_SKSEL0_PLL0 (0x00000000UL) /* PLL0 */
\r
82 #define _CGC_SKSEL0_PLL1 (0x00000001UL) /* PLL1 */
\r
85 Delta-Sigma Interface Clock Control Register (DSCR)
\r
87 #define _CGC_DSSEL0_SLAVE (0x00000000UL) /* Supplied from outside the LSI (slave operation) */
\r
88 #define _CGC_DSSEL0_MASTER (0x00000001UL) /* Supplied from CGC (master operation) */
\r
89 #define _CGC_DSCLK0_0 (0x00000000UL) /* 25 MHz */
\r
90 #define _CGC_DSCLK0_1 (0x00000002UL) /* 18.75 MHz */
\r
91 #define _CGC_DSCLK0_2 (0x00000004UL) /* 12.5 MHz */
\r
92 #define _CGC_DSCLK0_3 (0x00000006UL) /* 9.375 MHz */
\r
93 #define _CGC_DSCLK0_4 (0x00000008UL) /* 6.25 MHz */
\r
94 #define _CGC_DSCLK0_POL_NORMAL (0x00000000UL) /* Polarity not inverted (master and slave operation) */
\r
95 #define _CGC_DSCLK0_POL_INVERT (0x00000010UL) /* Polarity inverted (master and slave operation) */
\r
96 #define _CGC_DSCLK0_SLAVE_MCLK0_2 (0x00000000UL) /* Clock input to MCLK0,MCLK1,MCLK2 pins are used */
\r
97 #define _CGC_DSCLK0_SLAVE_MCLK0 (0x00000020UL) /* Clock input to MCLK0 pin is used */
\r
98 #define _CGC_DSSEL1_SLAVE (0x00000000UL) /* Supplied from outside the LSI (slave operation) */
\r
99 #define _CGC_DSSEL1_MASTER (0x00010000UL) /* Supplied from CGC (master operation) */
\r
100 #define _CGC_DSCLK1_0 (0x00000000UL) /* 25 MHz */
\r
101 #define _CGC_DSCLK1_1 (0x00020000UL) /* 18.75 MHz */
\r
102 #define _CGC_DSCLK1_2 (0x00040000UL) /* 12.5 MHz */
\r
103 #define _CGC_DSCLK1_3 (0x00060000UL) /* 9.375 MHz */
\r
104 #define _CGC_DSCLK1_4 (0x00080000UL) /* 6.25 MHz */
\r
105 #define _CGC_DSCLK1_POL_NORMAL (0x00000000UL) /* Polarity not inverted (master and slave operation) */
\r
106 #define _CGC_DSCLK1_POL_INVERT (0x00100000UL) /* Polarity inverted (master and slave operation) */
\r
109 PLL1 Control Register (PLL1CR)
\r
111 #define _CGC_PLL1_CPUCKSEL_150 (0x00U) /* 150 MHz */
\r
112 #define _CGC_PLL1_CPUCKSEL_300 (0x01U) /* 300 MHz */
\r
113 #define _CGC_PLL1_CPUCKSEL_450 (0x02U) /* 450 MHz */
\r
114 #define _CGC_PLL1_CPUCKSEL_600 (0x03U) /* 600 MHz */
\r
117 PLL1 Control Register 2 (PLL1CR2)
\r
119 #define _CGC_PLL1_DISABLE (0x00000000UL) /* PLL1 stops */
\r
120 #define _CGC_PLL1_ENABLE (0x00000001UL) /* PLL1 runs */
\r
123 Low-Speed On-Chip Oscillator Control Register (LOCOCR)
\r
125 #define _CGC_LOCO_RUN (0x00000000UL) /* LOCO Run */
\r
126 #define _CGC_LOCO_STOP (0x00000001UL) /* LOCO Stop */
\r
129 Oscillation Stop Detection Control Register (OSTDCR)
\r
131 /* Oscillation Stop Detection Interrupt Enable (OSTDIE) */
\r
132 #define _CGC_OSC_STOP_DET_INT_DISABLE (0x00000000UL) /* Stop detection interrupt is disabled */
\r
133 #define _CGC_OSC_STOP_DET_INT_ENABLE (0x00000001UL) /* Stop detection interrupt is enabled */
\r
134 /* Oscillation Stop Detection Function Enable (OSTDE) */
\r
135 #define _CGC_OSC_STOP_DET_DISABLE (0x00000000UL) /* Oscillation stop detection function is disabled */
\r
136 #define _CGC_OSC_STOP_DET_ENABLE (0x00000080UL) /* Oscillation stop detection function is enabled */
\r
139 ECM Non-maskable Interrupt Configuration Register 0 (ECMNMICFG0)
\r
141 #define _ECM_NMI_OSC_STOP_DISABLE (0x00000000UL) /* Stop detection NMI interrupt is disabled */
\r
142 #define _ECM_NMI_OSC_STOP_ENABLE (0x00080000UL) /* Stop detection NMI interrupt is enabled */
\r
145 ECM Maskable Interrupt Configuration Register 0 (ECMMICFG0)
\r
147 #define _ECM_MI_OSC_STOP_DISABLE (0x00000000UL) /* Stop detection Maskable interrupt is disabled */
\r
148 #define _ECM_MI_OSC_STOP_ENABLE (0x00080000UL) /* Stop detection Maskable interrupt is enabled */
\r
151 Debugging Interface Control Register (DBGIFCNT)
\r
153 #define _SWV_SEL_NOOUTPUT (0x00000000UL) /* SWV output is not output */
\r
154 #define _SWV_SEL_TDO (0x00000001UL) /* SWV output is output from the TDO pin */
\r
155 #define _SWV_SEL_TRACEDATA0 (0x00000002UL) /* SWV output is output from the TRACEDATA0 pin */
\r
156 #define _SWV_SEL_TRACECTL (0x00000003UL) /* SWV output is output from the TRACECTL pin */
\r
159 /***********************************************************************************************************************
\r
161 ***********************************************************************************************************************/
\r
162 #define _CGC_PLL_WAIT_CYCLE (0x1D4CU) /* Wait 100us when switch clock source in PLL0 and PLL1 */
\r
163 #define _CGC_LOCO_WAIT_CYCLE (0x0BB8U) /* Wait 40us for LOCO oscillation stabilization */
\r
165 /***********************************************************************************************************************
\r
166 Typedef definitions
\r
167 ***********************************************************************************************************************/
\r
169 /***********************************************************************************************************************
\r
171 ***********************************************************************************************************************/
\r
172 void R_CGC_Create(void);
\r
174 /* Start user code for function. Do not edit comment generated here */
\r
176 void R_CPG_PLLWait(void);
\r
177 void R_CPG_WriteEnable(void);
\r
178 void R_CPG_WriteDisable(void);
\r
180 #define CPG_CPUCLK_150_MHz (0)
\r
181 #define CPG_CPUCLK_300_MHz (1)
\r
182 #define CPG_CPUCLK_450_MHz (2)
\r
183 #define CPG_CPUCLK_600_MHz (3)
\r
185 #define CPG_PLL1_OFF (0)
\r
186 #define CPG_PLL1_ON (1)
\r
188 #define CPG_SELECT_PLL0 (0)
\r
189 #define CPG_SELECT_PLL1 (1)
\r
191 #define CPG_CKIO_75_MHz (0)
\r
192 #define CPG_CKIO_50_MHz (1)
\r
193 #define CPG_CKIO_37_5_MHz (2)
\r
194 #define CPG_CKIO_30_MHz (3)
\r
195 #define CPG_CKIO_25_MHz (4)
\r
196 #define CPG_CKIO_21_43_MHz (5)
\r
197 #define CPG_CKIO_18_75_MHz (6)
\r
199 #define CPG_LOCO_ENABLE (0x00000000)
\r
200 #define CPG_LOCO_DISABLE (0x00000001)
\r
202 /* End user code. Do not edit comment generated here */
\r