cdefbf532.h

来自「linux 内核源代码」· C头文件 代码 · 共 745 行 · 第 1/4 页

H
745
字号
/* * File:         include/asm-blackfin/mach-bf533/cdefBF532.h * Based on: * Author: * * Created: * Description: * * Rev: * * Modified: * * Bugs:         Enter bugs at http://blackfin.uclinux.org/ * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2, or (at your option) * any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; see the file COPYING. * If not, write to the Free Software Foundation, * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */#ifndef _CDEF_BF532_H#define _CDEF_BF532_H#include <asm/blackfin.h>/*include all Core registers and bit definitions*/#include "defBF532.h"/*include core specific register pointer definitions*/#include <asm/mach-common/cdef_LPBlackfin.h>#include <asm/system.h>/* Clock and System Control (0xFFC0 0400-0xFFC0 07FF) */#define bfin_read_PLL_CTL()                  bfin_read16(PLL_CTL)#define bfin_write_PLL_CTL(val)              bfin_write16(PLL_CTL,val)#define bfin_read_PLL_STAT()                 bfin_read16(PLL_STAT)#define bfin_write_PLL_STAT(val)             bfin_write16(PLL_STAT,val)#define bfin_read_PLL_LOCKCNT()              bfin_read16(PLL_LOCKCNT)#define bfin_write_PLL_LOCKCNT(val)          bfin_write16(PLL_LOCKCNT,val)#define bfin_read_CHIPID()                   bfin_read32(CHIPID)#define bfin_read_PLL_DIV()                  bfin_read16(PLL_DIV)#define bfin_write_PLL_DIV(val)              bfin_write16(PLL_DIV,val)#define bfin_read_VR_CTL()                   bfin_read16(VR_CTL)/* Writing to VR_CTL initiates a PLL relock sequence. */static __inline__ void bfin_write_VR_CTL(unsigned int val){	unsigned long flags, iwr;	/* Enable the PLL Wakeup bit in SIC IWR */	iwr = bfin_read32(SIC_IWR);	/* Only allow PPL Wakeup) */	bfin_write32(SIC_IWR, IWR_ENABLE(0));	bfin_write16(VR_CTL, val);	SSYNC();	local_irq_save(flags);	asm("IDLE;");	local_irq_restore(flags);	bfin_write32(SIC_IWR, iwr);}/* System Interrupt Controller (0xFFC0 0C00-0xFFC0 0FFF) */#define bfin_read_SWRST()                    bfin_read16(SWRST)#define bfin_write_SWRST(val)                bfin_write16(SWRST,val)#define bfin_read_SYSCR()                    bfin_read16(SYSCR)#define bfin_write_SYSCR(val)                bfin_write16(SYSCR,val)#define bfin_read_SIC_IAR0()                 bfin_read32(SIC_IAR0)#define bfin_write_SIC_IAR0(val)             bfin_write32(SIC_IAR0,val)#define bfin_read_SIC_IAR1()                 bfin_read32(SIC_IAR1)#define bfin_write_SIC_IAR1(val)             bfin_write32(SIC_IAR1,val)#define bfin_read_SIC_IAR2()                 bfin_read32(SIC_IAR2)#define bfin_write_SIC_IAR2(val)             bfin_write32(SIC_IAR2,val)#define bfin_read_SIC_IAR3()                 bfin_read32(SIC_IAR3)#define bfin_write_SIC_IAR3(val)             bfin_write32(SIC_IAR3,val)#define bfin_read_SIC_IMASK()                bfin_read32(SIC_IMASK)#define bfin_write_SIC_IMASK(val)            bfin_write32(SIC_IMASK,val)#define bfin_read_SIC_ISR()                  bfin_read32(SIC_ISR)#define bfin_write_SIC_ISR(val)              bfin_write32(SIC_ISR,val)#define bfin_read_SIC_IWR()                  bfin_read32(SIC_IWR)#define bfin_write_SIC_IWR(val)              bfin_write32(SIC_IWR,val)/* Watchdog Timer (0xFFC0 1000-0xFFC0 13FF) */#define bfin_read_WDOG_CTL()                 bfin_read16(WDOG_CTL)#define bfin_write_WDOG_CTL(val)             bfin_write16(WDOG_CTL,val)#define bfin_read_WDOG_CNT()                 bfin_read32(WDOG_CNT)#define bfin_write_WDOG_CNT(val)             bfin_write32(WDOG_CNT,val)#define bfin_read_WDOG_STAT()                bfin_read32(WDOG_STAT)#define bfin_write_WDOG_STAT(val)            bfin_write32(WDOG_STAT,val)/* Real Time Clock (0xFFC0 1400-0xFFC0 17FF) */#define bfin_read_RTC_STAT()                 bfin_read32(RTC_STAT)#define bfin_write_RTC_STAT(val)             bfin_write32(RTC_STAT,val)#define bfin_read_RTC_ICTL()                 bfin_read16(RTC_ICTL)#define bfin_write_RTC_ICTL(val)             bfin_write16(RTC_ICTL,val)#define bfin_read_RTC_ISTAT()                bfin_read16(RTC_ISTAT)#define bfin_write_RTC_ISTAT(val)            bfin_write16(RTC_ISTAT,val)#define bfin_read_RTC_SWCNT()                bfin_read16(RTC_SWCNT)#define bfin_write_RTC_SWCNT(val)            bfin_write16(RTC_SWCNT,val)#define bfin_read_RTC_ALARM()                bfin_read32(RTC_ALARM)#define bfin_write_RTC_ALARM(val)            bfin_write32(RTC_ALARM,val)#define bfin_read_RTC_FAST()                 bfin_read16(RTC_FAST)#define bfin_write_RTC_FAST(val)             bfin_write16(RTC_FAST,val)#define bfin_read_RTC_PREN()                 bfin_read16(RTC_PREN)#define bfin_write_RTC_PREN(val)             bfin_write16(RTC_PREN,val)/* DMA Traffic controls */#define bfin_read_DMA_TCPER()                bfin_read16(DMA_TCPER)#define bfin_write_DMA_TCPER(val)            bfin_write16(DMA_TCPER,val)#define bfin_read_DMA_TCCNT()                bfin_read16(DMA_TCCNT)#define bfin_write_DMA_TCCNT(val)            bfin_write16(DMA_TCCNT,val)/* Alternate deprecated register names (below) provided for backwards code compatibility */#define bfin_read_DMA_TC_PER()               bfin_read16(DMA_TC_PER)#define bfin_write_DMA_TC_PER(val)           bfin_write16(DMA_TC_PER,val)#define bfin_read_DMA_TC_CNT()               bfin_read16(DMA_TC_CNT)#define bfin_write_DMA_TC_CNT(val)           bfin_write16(DMA_TC_CNT,val)/* General Purpose IO (0xFFC0 2400-0xFFC0 27FF) */#define bfin_read_FIO_DIR()                  bfin_read16(FIO_DIR)#define bfin_write_FIO_DIR(val)              bfin_write16(FIO_DIR,val)#define bfin_read_FIO_MASKA_C()              bfin_read16(FIO_MASKA_C)#define bfin_write_FIO_MASKA_C(val)          bfin_write16(FIO_MASKA_C,val)#define bfin_read_FIO_MASKA_S()              bfin_read16(FIO_MASKA_S)#define bfin_write_FIO_MASKA_S(val)          bfin_write16(FIO_MASKA_S,val)#define bfin_read_FIO_MASKB_C()              bfin_read16(FIO_MASKB_C)#define bfin_write_FIO_MASKB_C(val)          bfin_write16(FIO_MASKB_C,val)#define bfin_read_FIO_MASKB_S()              bfin_read16(FIO_MASKB_S)#define bfin_write_FIO_MASKB_S(val)          bfin_write16(FIO_MASKB_S,val)#define bfin_read_FIO_POLAR()                bfin_read16(FIO_POLAR)#define bfin_write_FIO_POLAR(val)            bfin_write16(FIO_POLAR,val)#define bfin_read_FIO_EDGE()                 bfin_read16(FIO_EDGE)#define bfin_write_FIO_EDGE(val)             bfin_write16(FIO_EDGE,val)#define bfin_read_FIO_BOTH()                 bfin_read16(FIO_BOTH)#define bfin_write_FIO_BOTH(val)             bfin_write16(FIO_BOTH,val)#define bfin_read_FIO_INEN()                 bfin_read16(FIO_INEN)#define bfin_write_FIO_INEN(val)             bfin_write16(FIO_INEN,val)#define bfin_read_FIO_MASKA_D()              bfin_read16(FIO_MASKA_D)#define bfin_write_FIO_MASKA_D(val)          bfin_write16(FIO_MASKA_D,val)#define bfin_read_FIO_MASKA_T()              bfin_read16(FIO_MASKA_T)#define bfin_write_FIO_MASKA_T(val)          bfin_write16(FIO_MASKA_T,val)#define bfin_read_FIO_MASKB_D()              bfin_read16(FIO_MASKB_D)#define bfin_write_FIO_MASKB_D(val)          bfin_write16(FIO_MASKB_D,val)#define bfin_read_FIO_MASKB_T()              bfin_read16(FIO_MASKB_T)#define bfin_write_FIO_MASKB_T(val)          bfin_write16(FIO_MASKB_T,val)#if ANOMALY_05000311#define BFIN_WRITE_FIO_FLAG(name) \static __inline__ void bfin_write_FIO_FLAG_ ## name (unsigned short val)\{\	unsigned long flags;\	local_irq_save(flags);\	bfin_write16(FIO_FLAG_ ## name,val);\	bfin_read_CHIPID();\	local_irq_restore(flags);\}BFIN_WRITE_FIO_FLAG(D)BFIN_WRITE_FIO_FLAG(C)BFIN_WRITE_FIO_FLAG(S)BFIN_WRITE_FIO_FLAG(T)#define BFIN_READ_FIO_FLAG(name) \static __inline__ unsigned short bfin_read_FIO_FLAG_ ## name (void)\{\	unsigned long flags;\	unsigned short ret;\	local_irq_save(flags);\	ret = bfin_read16(FIO_FLAG_ ## name);\	bfin_read_CHIPID();\	local_irq_restore(flags);\	return ret;\}BFIN_READ_FIO_FLAG(D)BFIN_READ_FIO_FLAG(C)BFIN_READ_FIO_FLAG(S)

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?