⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 generic.h

📁 这个linux源代码是很全面的~基本完整了~使用c编译的~由于时间问题我没有亲自测试~但就算用来做参考资料也是非常好的
💻 H
字号:
/* * Carsten Langgaard, carstenl@mips.com * Copyright (C) 2000 MIPS Technologies, Inc.  All rights reserved. * * ######################################################################## * *  This program is free software; you can distribute it and/or modify it *  under the terms of the GNU General Public License (Version 2) as *  published by the Free Software Foundation. * *  This program is distributed in the hope 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; if not, write to the Free Software Foundation, Inc., *  59 Temple Place - Suite 330, Boston MA 02111-1307, USA. * * ######################################################################## * * Defines of the MIPS boards specific address-MAP, registers, etc. * */#ifndef _MIPS_GENERIC_H#define _MIPS_GENERIC_H#include <linux/config.h>#include <asm/addrspace.h>#include <asm/byteorder.h>#include <asm/mips-boards/bonito64.h>/* * Display register base. */#if defined(CONFIG_MIPS_SEAD)#define ASCII_DISPLAY_POS_BASE     (KSEG1ADDR(0x1f0005c0))#else#define ASCII_DISPLAY_WORD_BASE    (KSEG1ADDR(0x1f000410))#define ASCII_DISPLAY_POS_BASE     (KSEG1ADDR(0x1f000418))#endif/* * Yamon Prom print address. */#define YAMON_PROM_PRINT_ADDR      (KSEG1ADDR(0x1fc00504))/* * Reset register. */#if defined(CONFIG_MIPS_SEAD)#define SOFTRES_REG       (KSEG1ADDR(0x1e800050))#define GORESET           0x4d#else#define SOFTRES_REG       (KSEG1ADDR(0x1f000500))#define GORESET           0x42#endif/* * Revision register. */#define MIPS_REVISION_REG                  (KSEG1ADDR(0x1fc00010))#define MIPS_REVISION_CORID_QED_RM5261     0#define MIPS_REVISION_CORID_CORE_LV        1#define MIPS_REVISION_CORID_BONITO64       2#define MIPS_REVISION_CORID_CORE_20K       3#define MIPS_REVISION_CORID_CORE_FPGA      4#define MIPS_REVISION_CORID_CORE_MSC       5#define MIPS_REVISION_CORID (((*(volatile u32 *)(MIPS_REVISION_REG)) >> 10) & 0x3f)extern unsigned int mips_revision_corid;/* * Galileo GT64120 system controller register base. */#define MIPS_GT_BASE    (KSEG1ADDR(0x1be00000))/* * Because of the way the internal register works on the Galileo chip, * we need to swap the bytes when running bigendian. */#define GT_WRITE(ofs, data)  \             *(volatile u32 *)(MIPS_GT_BASE+ofs) = cpu_to_le32(data)#define GT_READ(ofs, data)   \             data = le32_to_cpu(*(volatile u32 *)(MIPS_GT_BASE+ofs))#define GT_PCI_WRITE(ofs, data)  \	*(volatile u32 *)(MIPS_GT_BASE+ofs) = data#define GT_PCI_READ(ofs, data)   \	data = *(volatile u32 *)(MIPS_GT_BASE+ofs)/* * Algorithmics Bonito64 system controller register base. */static char * const _bonito = (char *)KSEG1ADDR(BONITO_REG_BASE);/* * MIPS System controller PCI register base. */#define MSC01_PCI_REG_BASE  (KSEG1ADDR(0x1bd00000))#define MSC_WRITE(reg, data)  \	*(volatile u32 *)(reg) = data#define MSC_READ(reg, data)   \	data = *(volatile u32 *)(reg)#endif  /* !(_MIPS_GENERIC_H) */

⌨️ 快捷键说明

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