io.h

来自「em86xx 完整启动程序,支持网络下载与串通下载」· C头文件 代码 · 共 64 行

H
64
字号
/***************************************** Copyright (c) 2002-2004 Sigma Designs, Inc. All Rights Reserved Proprietary and Confidential *****************************************//* This file is part of the boot loader *//* * io.h * * Raw I/O  * * first revision by Ho Lee 10/31/2002 */#ifndef __BOOTLOADER_IO_H#define __BOOTLOADER_IO_H#define mb()            __asm__ __volatile__ ("" : : : "memory")//// RAW I/O//static __inline__ unsigned char __raw_readb(unsigned long addr){    volatile unsigned char *ptr = (volatile unsigned char *) (addr);    return *ptr;}static __inline__ unsigned short __raw_readw(unsigned long addr){    volatile unsigned short *ptr = (volatile unsigned short *) (addr);    return *ptr;}static __inline__ unsigned int __raw_readl(unsigned long addr){    volatile unsigned int *ptr = (volatile unsigned int *) (addr);    return *ptr;}static __inline__ void __raw_writeb(unsigned int data, unsigned long addr){    volatile unsigned char *ptr = (volatile unsigned char *) (addr);    *ptr = (unsigned char) data;}static __inline__ void __raw_writew(unsigned int data, unsigned long addr){    volatile unsigned short *ptr = (volatile unsigned short *) (addr);    *ptr = (unsigned short) data;}static __inline__ void __raw_writel(unsigned int data, unsigned long addr){    volatile unsigned int *ptr = (volatile unsigned int *) (addr);    *ptr = data;}#endif

⌨️ 快捷键说明

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