/* Coldfire C Header File | |
* Copyright Freescale Semiconductor Inc | |
* All rights reserved. | |
* | |
* 2008/04/17 Revision: 0.2 | |
* | |
* (c) Copyright UNIS, spol. s r.o. 1997-2008 | |
* UNIS, spol. s r.o. | |
* Jundrovska 33 | |
* 624 00 Brno | |
* Czech Republic | |
* http : www.processorexpert.com | |
* mail : info@processorexpert.com | |
*/ | |
#ifndef __MCF52259_GPT_H__ | |
#define __MCF52259_GPT_H__ | |
/********************************************************************* | |
* | |
* General Purpose Timer Module (GPT) | |
* | |
*********************************************************************/ | |
/* Register read/write macros */ | |
#define MCF_GPT_GPTIOS (*(vuint8 *)(0x401A0000)) | |
#define MCF_GPT_GPTCFORC (*(vuint8 *)(0x401A0001)) | |
#define MCF_GPT_GPTOC3M (*(vuint8 *)(0x401A0002)) | |
#define MCF_GPT_GPTOC3D (*(vuint8 *)(0x401A0003)) | |
#define MCF_GPT_GPTCNT (*(vuint16*)(0x401A0004)) | |
#define MCF_GPT_GPTSCR1 (*(vuint8 *)(0x401A0006)) | |
#define MCF_GPT_GPTTOV (*(vuint8 *)(0x401A0008)) | |
#define MCF_GPT_GPTCTL1 (*(vuint8 *)(0x401A0009)) | |
#define MCF_GPT_GPTCTL2 (*(vuint8 *)(0x401A000B)) | |
#define MCF_GPT_GPTIE (*(vuint8 *)(0x401A000C)) | |
#define MCF_GPT_GPTSCR2 (*(vuint8 *)(0x401A000D)) | |
#define MCF_GPT_GPTFLG1 (*(vuint8 *)(0x401A000E)) | |
#define MCF_GPT_GPTFLG2 (*(vuint8 *)(0x401A000F)) | |
#define MCF_GPT_GPTC0 (*(vuint16*)(0x401A0010)) | |
#define MCF_GPT_GPTC1 (*(vuint16*)(0x401A0012)) | |
#define MCF_GPT_GPTC2 (*(vuint16*)(0x401A0014)) | |
#define MCF_GPT_GPTC3 (*(vuint16*)(0x401A0016)) | |
#define MCF_GPT_GPTPACTL (*(vuint8 *)(0x401A0018)) | |
#define MCF_GPT_GPTPAFLG (*(vuint8 *)(0x401A0019)) | |
#define MCF_GPT_GPTPACNT (*(vuint16*)(0x401A001A)) | |
#define MCF_GPT_GPTPORT (*(vuint8 *)(0x401A001D)) | |
#define MCF_GPT_GPTDDR (*(vuint8 *)(0x401A001E)) | |
#define MCF_GPT_GPTC(x) (*(vuint16*)(0x401A0010 + ((x)*0x2))) | |
/* Bit definitions and macros for MCF_GPT_GPTIOS */ | |
#define MCF_GPT_GPTIOS_IOS0 (0x1) | |
#define MCF_GPT_GPTIOS_IOS1 (0x2) | |
#define MCF_GPT_GPTIOS_IOS2 (0x4) | |
#define MCF_GPT_GPTIOS_IOS3 (0x8) | |
/* Bit definitions and macros for MCF_GPT_GPTCFORC */ | |
#define MCF_GPT_GPTCFORC_FOC0 (0x1) | |
#define MCF_GPT_GPTCFORC_FOC1 (0x2) | |
#define MCF_GPT_GPTCFORC_FOC2 (0x4) | |
#define MCF_GPT_GPTCFORC_FOC3 (0x8) | |
/* Bit definitions and macros for MCF_GPT_GPTOC3M */ | |
#define MCF_GPT_GPTOC3M_OC3M0 (0x1) | |
#define MCF_GPT_GPTOC3M_OC3M1 (0x2) | |
#define MCF_GPT_GPTOC3M_OC3M2 (0x4) | |
#define MCF_GPT_GPTOC3M_OC3M3 (0x8) | |
/* Bit definitions and macros for MCF_GPT_GPTOC3D */ | |
#define MCF_GPT_GPTOC3D_OC3D0 (0x1) | |
#define MCF_GPT_GPTOC3D_OC3D1 (0x2) | |
#define MCF_GPT_GPTOC3D_OC3D2 (0x4) | |
#define MCF_GPT_GPTOC3D_OC3D3 (0x8) | |
/* Bit definitions and macros for MCF_GPT_GPTCNT */ | |
#define MCF_GPT_GPTCNT_CNTR(x) (((x)&0xFFFF)<<0) | |
/* Bit definitions and macros for MCF_GPT_GPTSCR1 */ | |
#define MCF_GPT_GPTSCR1_TFFCA (0x10) | |
#define MCF_GPT_GPTSCR1_GPTEN (0x80) | |
/* Bit definitions and macros for MCF_GPT_GPTTOV */ | |
#define MCF_GPT_GPTTOV_TOV0 (0x1) | |
#define MCF_GPT_GPTTOV_TOV1 (0x2) | |
#define MCF_GPT_GPTTOV_TOV2 (0x4) | |
#define MCF_GPT_GPTTOV_TOV3 (0x8) | |
/* Bit definitions and macros for MCF_GPT_GPTCTL1 */ | |
#define MCF_GPT_GPTCTL1_OL0 (0x1) | |
#define MCF_GPT_GPTCTL1_OM0 (0x2) | |
#define MCF_GPT_GPTCTL1_OL1 (0x4) | |
#define MCF_GPT_GPTCTL1_OM1 (0x8) | |
#define MCF_GPT_GPTCTL1_OL2 (0x10) | |
#define MCF_GPT_GPTCTL1_OM2 (0x20) | |
#define MCF_GPT_GPTCTL1_OL3 (0x40) | |
#define MCF_GPT_GPTCTL1_OM3 (0x80) | |
#define MCF_GPT_GPTCTL1_OUTPUT0_NOTHING (0) | |
#define MCF_GPT_GPTCTL1_OUTPUT0_TOGGLE (0x1) | |
#define MCF_GPT_GPTCTL1_OUTPUT0_CLEAR (0x2) | |
#define MCF_GPT_GPTCTL1_OUTPUT0_SET (0x3) | |
#define MCF_GPT_GPTCTL1_OUTPUT1_NOTHING (0) | |
#define MCF_GPT_GPTCTL1_OUTPUT1_TOGGLE (0x4) | |
#define MCF_GPT_GPTCTL1_OUTPUT1_CLEAR (0x8) | |
#define MCF_GPT_GPTCTL1_OUTPUT1_SET (0xC) | |
#define MCF_GPT_GPTCTL1_OUTPUT2_NOTHING (0) | |
#define MCF_GPT_GPTCTL1_OUTPUT2_TOGGLE (0x10) | |
#define MCF_GPT_GPTCTL1_OUTPUT2_CLEAR (0x20) | |
#define MCF_GPT_GPTCTL1_OUTPUT2_SET (0x30) | |
#define MCF_GPT_GPTCTL1_OUTPUT3_NOTHING (0) | |
#define MCF_GPT_GPTCTL1_OUTPUT3_TOGGLE (0x40) | |
#define MCF_GPT_GPTCTL1_OUTPUT3_CLEAR (0x80) | |
#define MCF_GPT_GPTCTL1_OUTPUT3_SET (0xC0) | |
/* Bit definitions and macros for MCF_GPT_GPTCTL2 */ | |
#define MCF_GPT_GPTCTL2_EDG0A (0x1) | |
#define MCF_GPT_GPTCTL2_EDG0B (0x2) | |
#define MCF_GPT_GPTCTL2_EDG1A (0x4) | |
#define MCF_GPT_GPTCTL2_EDG1B (0x8) | |
#define MCF_GPT_GPTCTL2_EDG2A (0x10) | |
#define MCF_GPT_GPTCTL2_EDG2B (0x20) | |
#define MCF_GPT_GPTCTL2_EDG3A (0x40) | |
#define MCF_GPT_GPTCTL2_EDG3B (0x80) | |
#define MCF_GPT_GPTCTL2_INPUT0_DISABLED (0) | |
#define MCF_GPT_GPTCTL2_INPUT0_RISING (0x1) | |
#define MCF_GPT_GPTCTL2_INPUT0_FALLING (0x2) | |
#define MCF_GPT_GPTCTL2_INPUT0_ANY (0x3) | |
#define MCF_GPT_GPTCTL2_INPUT1_DISABLED (0) | |
#define MCF_GPT_GPTCTL2_INPUT1_RISING (0x4) | |
#define MCF_GPT_GPTCTL2_INPUT1_FALLING (0x8) | |
#define MCF_GPT_GPTCTL2_INPUT1_ANY (0xC) | |
#define MCF_GPT_GPTCTL2_INPUT2_DISABLED (0) | |
#define MCF_GPT_GPTCTL2_INPUT2_RISING (0x10) | |
#define MCF_GPT_GPTCTL2_INPUT2_FALLING (0x20) | |
#define MCF_GPT_GPTCTL2_INPUT2_ANY (0x30) | |
#define MCF_GPT_GPTCTL2_INPUT3_DISABLED (0) | |
#define MCF_GPT_GPTCTL2_INPUT3_RISING (0x40) | |
#define MCF_GPT_GPTCTL2_INPUT3_FALLING (0x80) | |
#define MCF_GPT_GPTCTL2_INPUT3_ANY (0xC0) | |
/* Bit definitions and macros for MCF_GPT_GPTIE */ | |
#define MCF_GPT_GPTIE_CI0 (0x1) | |
#define MCF_GPT_GPTIE_CI1 (0x2) | |
#define MCF_GPT_GPTIE_CI2 (0x4) | |
#define MCF_GPT_GPTIE_CI3 (0x8) | |
/* Bit definitions and macros for MCF_GPT_GPTSCR2 */ | |
#define MCF_GPT_GPTSCR2_PR(x) (((x)&0x7)<<0) | |
#define MCF_GPT_GPTSCR2_PR_1 (0) | |
#define MCF_GPT_GPTSCR2_PR_2 (0x1) | |
#define MCF_GPT_GPTSCR2_PR_4 (0x2) | |
#define MCF_GPT_GPTSCR2_PR_8 (0x3) | |
#define MCF_GPT_GPTSCR2_PR_16 (0x4) | |
#define MCF_GPT_GPTSCR2_PR_32 (0x5) | |
#define MCF_GPT_GPTSCR2_PR_64 (0x6) | |
#define MCF_GPT_GPTSCR2_PR_128 (0x7) | |
#define MCF_GPT_GPTSCR2_TCRE (0x8) | |
#define MCF_GPT_GPTSCR2_RDPT (0x10) | |
#define MCF_GPT_GPTSCR2_PUPT (0x20) | |
#define MCF_GPT_GPTSCR2_TOI (0x80) | |
/* Bit definitions and macros for MCF_GPT_GPTFLG1 */ | |
#define MCF_GPT_GPTFLG1_CF0 (0x1) | |
#define MCF_GPT_GPTFLG1_CF1 (0x2) | |
#define MCF_GPT_GPTFLG1_CF2 (0x4) | |
#define MCF_GPT_GPTFLG1_CF3 (0x8) | |
/* Bit definitions and macros for MCF_GPT_GPTFLG2 */ | |
#define MCF_GPT_GPTFLG2_TOF (0x80) | |
/* Bit definitions and macros for MCF_GPT_GPTC */ | |
#define MCF_GPT_GPTC_CCNT(x) (((x)&0xFFFF)<<0) | |
/* Bit definitions and macros for MCF_GPT_GPTPACTL */ | |
#define MCF_GPT_GPTPACTL_PAI (0x1) | |
#define MCF_GPT_GPTPACTL_PAOVI (0x2) | |
#define MCF_GPT_GPTPACTL_CLK(x) (((x)&0x3)<<0x2) | |
#define MCF_GPT_GPTPACTL_CLK_GPTPR (0) | |
#define MCF_GPT_GPTPACTL_CLK_PACLK (0x1) | |
#define MCF_GPT_GPTPACTL_CLK_PACLK_256 (0x2) | |
#define MCF_GPT_GPTPACTL_CLK_PACLK_65536 (0x3) | |
#define MCF_GPT_GPTPACTL_PEDGE (0x10) | |
#define MCF_GPT_GPTPACTL_PAMOD (0x20) | |
#define MCF_GPT_GPTPACTL_PAE (0x40) | |
/* Bit definitions and macros for MCF_GPT_GPTPAFLG */ | |
#define MCF_GPT_GPTPAFLG_PAIF (0x1) | |
#define MCF_GPT_GPTPAFLG_PAOVF (0x2) | |
/* Bit definitions and macros for MCF_GPT_GPTPACNT */ | |
#define MCF_GPT_GPTPACNT_PACNT(x) (((x)&0xFFFF)<<0) | |
/* Bit definitions and macros for MCF_GPT_GPTPORT */ | |
#define MCF_GPT_GPTPORT_PORTT0 (0x1) | |
#define MCF_GPT_GPTPORT_PORTT1 (0x2) | |
#define MCF_GPT_GPTPORT_PORTT2 (0x4) | |
#define MCF_GPT_GPTPORT_PORTT3 (0x8) | |
/* Bit definitions and macros for MCF_GPT_GPTDDR */ | |
#define MCF_GPT_GPTDDR_DDRT0 (0x1) | |
#define MCF_GPT_GPTDDR_DDRT1 (0x2) | |
#define MCF_GPT_GPTDDR_DDRT2 (0x4) | |
#define MCF_GPT_GPTDDR_DDRT3 (0x8) | |
#endif /* __MCF52259_GPT_H__ */ |