sam3_pmc.h
Go to the documentation of this file.00001
00036 #ifndef SAM3_PMC_H
00037 #define SAM3_PMC_H
00038
00039 #include <cfg/macros.h>
00040 #include <cfg/debug.h>
00041
00042
00044 #if CPU_CM3_SAM3X
00045 #define PMC_BASE 0x400E0600
00046 #else
00047 #define PMC_BASE 0x400E0400
00048 #endif
00049
00053
00054 #define PMC_SCER_OFF 0x00 ///< System Clock Enable Register
00055 #define PMC_SCDR_OFF 0x04 ///< System Clock Disable Register
00056 #define PMC_SCSR_OFF 0x08 ///< System Clock Status Register
00057 #define PMC_MOR_OFF 0x20 ///< Main Oscillator Register
00058 #define PMC_MCFR_OFF 0x24 ///< Main Clock Frequency Register
00059 #define PMC_MCKR_OFF 0x30 ///< Master Clock Register
00060 #define PMC_IER_OFF 0x60 ///< Interrupt Enable Register
00061 #define PMC_IDR_OFF 0x64 ///< Interrupt Disable Register
00062 #define PMC_SR_OFF 0x68 ///< Status Register
00063 #define PMC_IMR_OFF 0x6C ///< Interrupt Mask Register
00064 #define PMC_FSMR_OFF 0x70 ///< Fast Startup Mode Register
00065 #define PMC_FSPR_OFF 0x74 ///< Fast Startup Polarity Register
00066 #define PMC_FOCR_OFF 0x78 ///< Fault Output Clear Register
00067 #define PMC_WPMR_OFF 0xE4 ///< Write Protect Mode Register
00068 #define PMC_WPSR_OFF 0xE8 ///< Write Protect Status Register
00069
00070 #if CPU_CM3_SAM3N
00071 #define PMC_PCER_OFF 0x10 ///< Peripheral Clock Enable Register
00072 #define PMC_PCDR_OFF 0x14 ///< Peripheral Clock Disable Register
00073 #define PMC_PCSR_OFF 0x18 ///< Peripheral Clock Status Register
00074 #define PMC_PLLR_OFF 0x28 ///< PLL Register
00075 #define PMC_PCK_OFF 0x40 ///< Programmable Clock 0 Register
00076 #define PMC_OCR_OFF 0x110 ///< Oscillator Calibration Register
00077 #elif CPU_CM3_SAM3X
00078 #define PMC_PCER0_OFF 0x10 ///< Peripheral Clock Enable Register
00079 #define PMC_PCDR0_OFF 0x14 ///< Peripheral Clock Disable Register
00080 #define PMC_PCSR0_OFF 0x18 ///< Peripheral Clock Status Register
00081 #define PMC_UCKR_OFF 0x1C ///< UTMI clock register
00082 #define PMC_PLLAR_OFF 0x28 ///< PLL Register
00083 #define PMC_USB_OFF 0x38 ///< USB clock register
00084 #define PMC_PCK0_OFF 0x40 ///< Programmable Clock 0 Register
00085 #define PMC_PCK1_OFF 0x44 ///< Programmable Clock 1 Register
00086 #define PMC_PCK2_OFF 0x48 ///< Programmable Clock 2 Register
00087 #define PMC_PCER1_OFF 0x100 ///< Peripheral Clock Enable Register
00088 #define PMC_PCDR1_OFF 0x104 ///< Peripheral Clock Disable Register
00089 #define PMC_PCSR1_OFF 0x108 ///< Peripheral Clock Status Register
00090 #define PMC_PCR_OFF 0x10C ///< Oscillator Calibration Register
00091
00092 #define PMC_PLLROFF PMC_PLLAR_OFF
00093 #else
00094 #warning Some PMC registers undefined for the selected CPU
00095 #endif
00096
00097
00098
00103 #define PMC_PCK0_ID 8
00104 #define PMC_PCK1_ID 9
00105 #define PMC_PCK2_ID 10
00106
00107
00112 #define PMC_PCKRDY0 8 ///< Programmable clock 0 ready.
00113 #define PMC_PCKRDY1 9 ///< Programmable clock 1 ready.
00114 #define PMC_PCKRDY2 10 ///< Programmable clock 2 ready.
00115
00116
00120
00121 #define PMC_SCER (*((reg32_t *)(PMC_BASE + PMC_SCER_OFF))) ///< System Clock Enable Register
00122 #define PMC_SCDR (*((reg32_t *)(PMC_BASE + PMC_SCDR_OFF))) ///< System Clock Disable Register
00123 #define PMC_SCSR (*((reg32_t *)(PMC_BASE + PMC_SCSR_OFF))) ///< System Clock Status Register
00124 #define CKGR_MOR (*((reg32_t *)(PMC_BASE + PMC_MOR_OFF ))) ///< Main Oscillator Register
00125 #define CKGR_MCFR (*((reg32_t *)(PMC_BASE + PMC_MCFR_OFF))) ///< Main Clock Frequency Register
00126 #define PMC_MCKR (*((reg32_t *)(PMC_BASE + PMC_MCKR_OFF))) ///< Master Clock Register
00127 #define PMC_IER (*((reg32_t *)(PMC_BASE + PMC_IER_OFF ))) ///< Interrupt Enable Register
00128 #define PMC_IDR (*((reg32_t *)(PMC_BASE + PMC_IDR_OFF ))) ///< Interrupt Disable Register
00129 #define PMC_SR (*((reg32_t *)(PMC_BASE + PMC_SR_OFF ))) ///< Status Register
00130 #define PMC_IMR (*((reg32_t *)(PMC_BASE + PMC_IMR_OFF ))) ///< Interrupt Mask Register
00131 #define PMC_FSMR (*((reg32_t *)(PMC_BASE + PMC_FSMR_OFF))) ///< Fast Startup Mode Register
00132 #define PMC_FSPR (*((reg32_t *)(PMC_BASE + PMC_FSPR_OFF))) ///< Fast Startup Polarity Register
00133 #define PMC_FOCR (*((reg32_t *)(PMC_BASE + PMC_FOCR_OFF))) ///< Fault Output Clear Register
00134 #define PMC_WPMR (*((reg32_t *)(PMC_BASE + PMC_WPMR_OFF))) ///< Write Protect Mode Register
00135 #define PMC_WPSR (*((reg32_t *)(PMC_BASE + PMC_WPSR_OFF))) ///< Write Protect Status Register
00136
00137 #if CPU_CM3_SAM3N
00138 #define PMC_PCER (*((reg32_t *)(PMC_BASE + PMC_PCER_OFF))) ///< Peripheral Clock Enable Register
00139 #define PMC_PCDR (*((reg32_t *)(PMC_BASE + PMC_PCDR_OFF))) ///< Peripheral Clock Disable Register
00140 #define PMC_PCSR (*((reg32_t *)(PMC_BASE + PMC_PCSR_OFF))) ///< Peripheral Clock Status Register
00141 #define CKGR_PLLR (*((reg32_t *)(PMC_BASE + PMC_PLLR_OFF))) ///< PLL Register
00142 #define PMC_PCK (*((reg32_t *)(PMC_BASE + PMC_PCK_OFF ))) ///< Programmable Clock 0 Register
00143 #define PMC_OCR (*((reg32_t *)(PMC_BASE + PMC_OCR_OFF ))) ///< Oscillator Calibration Register
00144 #elif CPU_CM3_SAM3X
00145 #define PMC_PCER0 (*((reg32_t *)(PMC_BASE + PMC_PCER0_OFF))) ///< Peripheral Clock Enable Register
00146 #define PMC_PCDR0 (*((reg32_t *)(PMC_BASE + PMC_PCDR0_OFF))) ///< Peripheral Clock Disable Register
00147 #define PMC_PCSR0 (*((reg32_t *)(PMC_BASE + PMC_PCSR0_OFF))) ///< Peripheral Clock Status Register
00148 #define PMC_UCKR (*((reg32_t *)(PMC_BASE + PMC_UCKR_OFF))) ///< UTMI clock register
00149 #define CKGR_PLLAR (*((reg32_t *)(PMC_BASE + PMC_PLLAR_OFF))) ///< PLL Register
00150 #define PMC_USB_O (*((reg32_t *)(PMC_BASE + PMC_USB_O_OFF))) ///< USB clock register
00151 #define PMC_PCK0 (*((reg32_t *)(PMC_BASE + PMC_PCK0_OFF))) ///< Programmable Clock 0 Register
00152 #define PMC_PCK1 (*((reg32_t *)(PMC_BASE + PMC_PCK1_OFF))) ///< Programmable Clock 1 Register
00153 #define PMC_PCK2 (*((reg32_t *)(PMC_BASE + PMC_PCK2_OFF))) ///< Programmable Clock 2 Register
00154 #define PMC_PCER1 (*((reg32_t *)(PMC_BASE + PMC_PCER1_OFF))) ///< Peripheral Clock Enable Register
00155 #define PMC_PCDR1 (*((reg32_t *)(PMC_BASE + PMC_PCDR1_OFF))) ///< Peripheral Clock Disable Register
00156 #define PMC_PCSR1 (*((reg32_t *)(PMC_BASE + PMC_PCSR1_OFF))) ///< Peripheral Clock Status Register
00157 #define PMC_PCR (*((reg32_t *)(PMC_BASE + PMC_PCR_OFF))) ///< Oscillator Calibration Register
00158
00159 #define CKGR_PLLR CKGR_PLLAR
00160 #endif
00161
00162
00168 #ifdef PMC_PCER1
00169
00170 INLINE void pmc_periphEnable(unsigned id)
00171 {
00172 ASSERT(id < 64);
00173 if (id < 32)
00174 PMC_PCER0 = BV(id);
00175 else
00176 PMC_PCER1 = BV(id - 32);
00177 }
00178
00179 #else
00180
00181 INLINE void pmc_periphEnable(unsigned id)
00182 {
00183 ASSERT(id < 32);
00184 PMC_PCER = BV(id);
00185 }
00186
00187 #endif
00188
00194 #ifdef PMC_PCER1
00195
00196 INLINE void pmc_periphDisable(unsigned id)
00197 {
00198 ASSERT(id < 64);
00199 if (id < 32)
00200 PMC_PCDR0 = BV(id);
00201 else
00202 PMC_PCDR1 = BV(id - 32);
00203 }
00204
00205 #else
00206
00207 INLINE void pmc_periphDisable(unsigned id)
00208 {
00209 ASSERT(id < 32);
00210 PMC_PCDR = BV(id);
00211 }
00212
00213 #endif
00214
00218
00219 #define PMC_SCER_PCK0 8 ///< Programmable Clock 0 Output Enable
00220 #define PMC_SCER_PCK1 9 ///< Programmable Clock 1 Output Enable
00221 #define PMC_SCER_PCK2 10 ///< Programmable Clock 2 Output Enable
00222
00223
00227
00228 #define PMC_SCDR_PCK0 8 ///< Programmable Clock 0 Output Disable
00229 #define PMC_SCDR_PCK1 9 ///< Programmable Clock 1 Output Disable
00230 #define PMC_SCDR_PCK2 10 ///< Programmable Clock 2 Output Disable
00231
00232
00236
00237 #define PMC_SCSR_PCK0 8 ///< Programmable Clock 0 Output Status
00238 #define PMC_SCSR_PCK1 9 ///< Programmable Clock 1 Output Status
00239 #define PMC_SCSR_PCK2 10 ///< Programmable Clock 2 Output Status
00240
00241
00245
00246 #define CKGR_MOR_MOSCXTEN 0 ///< Main Crystal Oscillator Enable
00247 #define CKGR_MOR_MOSCXTBY 1 ///< Main Crystal Oscillator Bypass
00248 #define CKGR_MOR_WAITMODE 2 ///< Wait Mode Command
00249 #define CKGR_MOR_MOSCRCEN 3 ///< Main On-Chip RC Oscillator Enable
00250 #define CKGR_MOR_MOSCRCF_SHIFT 4
00251 #define CKGR_MOR_MOSCRCF_MASK (0x7 << CKGR_MOR_MOSCRCF_SHIFT) ///< Main On-Chip RC Oscillator Frequency Selection
00252 #define CKGR_MOR_MOSCRCF(value) ((CKGR_MOR_MOSCRCF_MASK & ((value) << CKGR_MOR_MOSCRCF_SHIFT)))
00253 #define CKGR_MOR_MOSCRCF_4MHZ (0x0 << CKGR_MOR_MOSCRCF_SHIFT)
00254 #define CKGR_MOR_MOSCRCF_8MHZ (0x1 << CKGR_MOR_MOSCRCF_SHIFT)
00255 #define CKGR_MOR_MOSCRCF_12MHZ (0x2 << CKGR_MOR_MOSCRCF_SHIFT)
00256 #define CKGR_MOR_MOSCXTST_SHIFT 8
00257 #define CKGR_MOR_MOSCXTST_MASK (0xff << CKGR_MOR_MOSCXTST_SHIFT) ///< Main Crystal Oscillator Start-up Time
00258 #define CKGR_MOR_MOSCXTST(value) ((CKGR_MOR_MOSCXTST_MASK & ((value) << CKGR_MOR_MOSCXTST_SHIFT)))
00259 #define CKGR_MOR_KEY_SHIFT 16
00260 #define CKGR_MOR_KEY_MASK (0xffu << CKGR_MOR_KEY_SHIFT) ///< Password
00261 #define CKGR_MOR_KEY(value) ((CKGR_MOR_KEY_MASK & ((value) << CKGR_MOR_KEY_SHIFT)))
00262 #define CKGR_MOR_MOSCSEL 24 ///< Main Oscillator Selection
00263 #define CKGR_MOR_CFDEN 25 ///< Clock Failure Detector Enable
00264
00265
00269
00270 #define CKGR_MCFR_MAINF_MASK 0xffff ///< Main Clock Frequency mask
00271 #define CKGR_MCFR_MAINFRDY 16 ///< Main Clock Ready
00272
00273
00277
00278 #define CKGR_PLLR_DIV_MASK 0xff ///< Divider mask
00279 #define CKGR_PLLR_DIV(value) (CKGR_PLLR_DIV_MASK & (value))
00280 #define CKGR_PLLR_PLLCOUNT_SHIFT 8
00281 #define CKGR_PLLR_PLLCOUNT_MASK (0x3f << CKGR_PLLR_PLLCOUNT_SHIFT) ///< PLL Counter mask
00282 #define CKGR_PLLR_PLLCOUNT(value) (CKGR_PLLR_PLLCOUNT_MASK & ((value) << CKGR_PLLR_PLLCOUNT_SHIFT))
00283 #define CKGR_PLLR_MUL_SHIFT 16
00284 #define CKGR_PLLR_MUL_MASK (0x7ff << CKGR_PLLR_MUL_SHIFT) ///< PLL Multiplier mask
00285 #define CKGR_PLLR_MUL(value) (CKGR_PLLR_MUL_MASK & ((value) << CKGR_PLLR_MUL_SHIFT))
00286 #define CKGR_PLLR_STUCKTO1 29
00287
00288
00292
00293 #define PMC_MCKR_CSS_MASK 0x3 ///< Master Clock Source Selection mask
00294 #define PMC_MCKR_CSS_SLOW_CLK 0x0 ///< Slow Clock is selected
00295 #define PMC_MCKR_CSS_MAIN_CLK 0x1 ///< Main Clock is selected
00296 #define PMC_MCKR_CSS_PLL_CLK 0x2 ///< PLL Clock is selected
00297 #define PMC_MCKR_PRES_SHIFT 4
00298 #define PMC_MCKR_PRES_MASK (0x7 << PMC_MCKR_PRES_SHIFT) ///< Processor Clock Prescaler mask
00299 #define PMC_MCKR_PRES_CLK (0x0 << PMC_MCKR_PRES_SHIFT) ///< Selected clock
00300 #define PMC_MCKR_PRES_CLK_2 (0x1 << PMC_MCKR_PRES_SHIFT) ///< Selected clock divided by 2
00301 #define PMC_MCKR_PRES_CLK_4 (0x2 << PMC_MCKR_PRES_SHIFT) ///< Selected clock divided by 4
00302 #define PMC_MCKR_PRES_CLK_8 (0x3 << PMC_MCKR_PRES_SHIFT) ///< Selected clock divided by 8
00303 #define PMC_MCKR_PRES_CLK_16 (0x4 << PMC_MCKR_PRES_SHIFT) ///< Selected clock divided by 16
00304 #define PMC_MCKR_PRES_CLK_32 (0x5 << PMC_MCKR_PRES_SHIFT) ///< Selected clock divided by 32
00305 #define PMC_MCKR_PRES_CLK_64 (0x6 << PMC_MCKR_PRES_SHIFT) ///< Selected clock divided by 64
00306 #define PMC_MCKR_PRES_CLK_3 (0x7 << PMC_MCKR_PRES_SHIFT) ///< Selected clock divided by 3
00307 #define PMC_MCKR_PLLDIV2 12 ///< PLL Divisor by 2
00308
00309
00313
00314 #define PMC_PCK_CSS_MASK 0x7 ///< Master Clock Source Selection mask
00315 #define PMC_PCK_CSS_SLOW 0x0 ///< Slow Clock is selected
00316 #define PMC_PCK_CSS_MAIN 0x1 ///< Main Clock is selected
00317 #define PMC_PCK_CSS_PLL 0x2 ///< PLL Clock is selected
00318 #define PMC_PCK_CSS_MCK 0x4 ///< Master Clock is selected
00319 #define PMC_PCK_PRES_SHIFT 4
00320 #define PMC_PCK_PRES_MASK (0x7 << PMC_PCK_PRES_SHIFT) ///< Programmable Clock Prescaler
00321 #define PMC_PCK_PRES_CLK (0x0 << PMC_PCK_PRES_SHIFT) ///< Selected clock
00322 #define PMC_PCK_PRES_CLK_2 (0x1 << PMC_PCK_PRES_SHIFT) ///< Selected clock divided by 2
00323 #define PMC_PCK_PRES_CLK_4 (0x2 << PMC_PCK_PRES_SHIFT) ///< Selected clock divided by 4
00324 #define PMC_PCK_PRES_CLK_8 (0x3 << PMC_PCK_PRES_SHIFT) ///< Selected clock divided by 8
00325 #define PMC_PCK_PRES_CLK_16 (0x4 << PMC_PCK_PRES_SHIFT) ///< Selected clock divided by 16
00326 #define PMC_PCK_PRES_CLK_32 (0x5 << PMC_PCK_PRES_SHIFT) ///< Selected clock divided by 32
00327 #define PMC_PCK_PRES_CLK_64 (0x6 << PMC_PCK_PRES_SHIFT) ///< Selected clock divided by 64
00328
00329
00333
00334 #define PMC_IER_MOSCXTS 0 ///< Main Crystal Oscillator Status Interrupt Enable
00335 #define PMC_IER_LOCK 1 ///< PLL Lock Interrupt Enable
00336 #define PMC_IER_MCKRDY 3 ///< Master Clock Ready Interrupt Enable
00337 #define PMC_IER_PCKRDY0 8 ///< Programmable Clock Ready 0 Interrupt Enable
00338 #define PMC_IER_PCKRDY1 9 ///< Programmable Clock Ready 1 Interrupt Enable
00339 #define PMC_IER_PCKRDY2 10 ///< Programmable Clock Ready 2 Interrupt Enable
00340 #define PMC_IER_MOSCSELS 16 ///< Main Oscillator Selection Status Interrupt Enable
00341 #define PMC_IER_MOSCRCS 17 ///< Main On-Chip RC Status Interrupt Enable
00342 #define PMC_IER_CFDEV 18 ///< Clock Failure Detector Event Interrupt Enable
00343
00344
00348
00349 #define PMC_IDR_MOSCXTS 0 ///< Main Crystal Oscillator Status Interrupt Disable
00350 #define PMC_IDR_LOCK 1 ///< PLL Lock Interrupt Disable
00351 #define PMC_IDR_MCKRDY 3 ///< Master Clock Ready Interrupt Disable
00352 #define PMC_IDR_PCKRDY0 8 ///< Programmable Clock Ready 0 Interrupt Disable
00353 #define PMC_IDR_PCKRDY1 9 ///< Programmable Clock Ready 1 Interrupt Disable
00354 #define PMC_IDR_PCKRDY2 10 ///< Programmable Clock Ready 2 Interrupt Disable
00355 #define PMC_IDR_MOSCSELS 16 ///< Main Oscillator Selection Status Interrupt Disable
00356 #define PMC_IDR_MOSCRCS 17 ///< Main On-Chip RC Status Interrupt Disable
00357 #define PMC_IDR_CFDEV 18 ///< Clock Failure Detector Event Interrupt Disable
00358
00359
00363
00364 #define PMC_SR_MOSCXTS 0 ///< Main XTAL Oscillator Status
00365 #define PMC_SR_LOCK 1 ///< PLL Lock Status
00366 #define PMC_SR_MCKRDY 3 ///< Master Clock Status
00367 #define PMC_SR_OSCSELS 7 ///< Slow Clock Oscillator Selection
00368 #define PMC_SR_PCKRDY0 8 ///< Programmable Clock Ready Status
00369 #define PMC_SR_PCKRDY1 9 ///< Programmable Clock Ready Status
00370 #define PMC_SR_PCKRDY2 10 ///< Programmable Clock Ready Status
00371 #define PMC_SR_MOSCSELS 16 ///< Main Oscillator Selection Status
00372 #define PMC_SR_MOSCRCS 17 ///< Main On-Chip RC Oscillator Status
00373 #define PMC_SR_CFDEV 18 ///< Clock Failure Detector Event
00374 #define PMC_SR_CFDS 19 ///< Clock Failure Detector Status
00375 #define PMC_SR_FOS 20 ///< Clock Failure Detector Fault Output Status
00376
00377
00381
00382 #define PMC_IMR_MOSCXTS 0 ///< Main Crystal Oscillator Status Interrupt Mask
00383 #define PMC_IMR_LOCK 1 ///< PLL Lock Interrupt Mask
00384 #define PMC_IMR_MCKRDY 3 ///< Master Clock Ready Interrupt Mask
00385 #define PMC_IMR_PCKRDY0 8 ///< Programmable Clock Ready 0 Interrupt Mask
00386 #define PMC_IMR_PCKRDY1 9 ///< Programmable Clock Ready 1 Interrupt Mask
00387 #define PMC_IMR_PCKRDY2 10 ///< Programmable Clock Ready 2 Interrupt Mask
00388 #define PMC_IMR_MOSCSELS 16 ///< Main Oscillator Selection Status Interrupt Mask
00389 #define PMC_IMR_MOSCRCS 17 ///< Main On-Chip RC Status Interrupt Mask
00390 #define PMC_IMR_CFDEV 18 ///< Clock Failure Detector Event Interrupt Mask
00391
00392
00396
00397 #define PMC_FSMR_FSTT0 0 ///< Fast Startup Input Enable 0
00398 #define PMC_FSMR_FSTT1 1 ///< Fast Startup Input Enable 1
00399 #define PMC_FSMR_FSTT2 2 ///< Fast Startup Input Enable 2
00400 #define PMC_FSMR_FSTT3 3 ///< Fast Startup Input Enable 3
00401 #define PMC_FSMR_FSTT4 4 ///< Fast Startup Input Enable 4
00402 #define PMC_FSMR_FSTT5 5 ///< Fast Startup Input Enable 5
00403 #define PMC_FSMR_FSTT6 6 ///< Fast Startup Input Enable 6
00404 #define PMC_FSMR_FSTT7 7 ///< Fast Startup Input Enable 7
00405 #define PMC_FSMR_FSTT8 8 ///< Fast Startup Input Enable 8
00406 #define PMC_FSMR_FSTT9 9 ///< Fast Startup Input Enable 9
00407 #define PMC_FSMR_FSTT10 10 ///< Fast Startup Input Enable 10
00408 #define PMC_FSMR_FSTT11 11 ///< Fast Startup Input Enable 11
00409 #define PMC_FSMR_FSTT12 12 ///< Fast Startup Input Enable 12
00410 #define PMC_FSMR_FSTT13 13 ///< Fast Startup Input Enable 13
00411 #define PMC_FSMR_FSTT14 14 ///< Fast Startup Input Enable 14
00412 #define PMC_FSMR_FSTT15 15 ///< Fast Startup Input Enable 15
00413 #define PMC_FSMR_RTTAL 16 ///< RTT Alarm Enable
00414 #define PMC_FSMR_RTCAL 17 ///< RTC Alarm Enable
00415 #define PMC_FSMR_LPM 20 ///< Low Power Mode
00416
00417
00421
00422 #define PMC_FSPR_FSTP0 0 ///< Fast Startup Input Polarityx
00423 #define PMC_FSPR_FSTP1 1 ///< Fast Startup Input Polarityx
00424 #define PMC_FSPR_FSTP2 2 ///< Fast Startup Input Polarityx
00425 #define PMC_FSPR_FSTP3 3 ///< Fast Startup Input Polarityx
00426 #define PMC_FSPR_FSTP4 4 ///< Fast Startup Input Polarityx
00427 #define PMC_FSPR_FSTP5 5 ///< Fast Startup Input Polarityx
00428 #define PMC_FSPR_FSTP6 6 ///< Fast Startup Input Polarityx
00429 #define PMC_FSPR_FSTP7 7 ///< Fast Startup Input Polarityx
00430 #define PMC_FSPR_FSTP8 8 ///< Fast Startup Input Polarityx
00431 #define PMC_FSPR_FSTP9 9 ///< Fast Startup Input Polarityx
00432 #define PMC_FSPR_FSTP10 10 ///< Fast Startup Input Polarityx
00433 #define PMC_FSPR_FSTP11 11 ///< Fast Startup Input Polarityx
00434 #define PMC_FSPR_FSTP12 12 ///< Fast Startup Input Polarityx
00435 #define PMC_FSPR_FSTP13 13 ///< Fast Startup Input Polarityx
00436 #define PMC_FSPR_FSTP14 14 ///< Fast Startup Input Polarityx
00437 #define PMC_FSPR_FSTP15 15 ///< Fast Startup Input Polarityx
00438
00439
00443
00444 #define PMC_FOCR_FOCLR 0 ///< Fault Output Clear
00445
00446
00450
00451 #define PMC_WPMR_WPEN 0 ///< Write Protect Enable
00452 #define PMC_WPMR_WPKEY_SHIFT 8
00453 #define PMC_WPMR_WPKEY_MASK (0xffffff << PMC_WPMR_WPKEY_SHIFT) ///< Write Protect key mask
00454 #define PMC_WPMR_WPKEY(value) ((PMC_WPMR_WPKEY_MASK & ((value) << PMC_WPMR_WPKEY_SHIFT)))
00455
00456
00460
00461 #define PMC_WPSR_WPVS 0 ///< Write Protect Violation Status
00462 #define PMC_WPSR_WPVSRC_SHIFT 8
00463 #define PMC_WPSR_WPVSRC_MASK (0xffff << PMC_WPSR_WPVSRC_SHIFT) ///< Write Protect Violation Source mask
00464
00465
00469
00470 #define PMC_OCR_CAL4_MASK 0x7f ///< RC Oscillator Calibration bits for 4 MHz mask
00471 #define PMC_OCR_CAL4(value) (PMC_OCR_CAL4_MASK & (value))
00472 #define PMC_OCR_SEL4 7 ///< Selection of RC Oscillator Calibration bits for 4 MHz
00473 #define PMC_OCR_CAL8_SHIFT 8
00474 #define PMC_OCR_CAL8_MASK (0x7f << PMC_OCR_CAL8_SHIFT) ///< RC Oscillator Calibration bits for 8 MHz mask
00475 #define PMC_OCR_CAL8(value) ((PMC_OCR_CAL8_MASK & ((value) << PMC_OCR_CAL8_SHIFT)))
00476 #define PMC_OCR_SEL8 15 ///< Selection of RC Oscillator Calibration bits for 8 MHz
00477 #define PMC_OCR_CAL12_SHIFT 16
00478 #define PMC_OCR_CAL12_MASK (0x7f << PMC_OCR_CAL12_SHIFT) ///< RC Oscillator Calibration bits for 12 MHz mask
00479 #define PMC_OCR_CAL12(value) ((PMC_OCR_CAL12_MASK & ((value) << PMC_OCR_CAL12_SHIFT)))
00480 #define PMC_OCR_SEL12 23 ///< Selection of RC Oscillator Calibration bits for 12 MHz
00481
00482
00483
00484 #endif