📄 mpc860t.h
字号:
/* * TOPPERS/JSP Kernel * Toyohashi Open Platform for Embedded Real-Time Systems/ * Just Standard Profile Kernel * * Copyright (C) 2000-2004 by Embedded and Real-Time Systems Laboratory * Toyohashi Univ. of Technology, JAPAN * Copyright (C) 2001-2004 by Industrial Technology Institute, * Miyagi Prefectural Government, JAPAN * * 惧淡螟侯涪荚は·笆布の (1)×(4) の掘凤か·Free Software Foundation * によって给山されている GNU General Public License の Version 2 に淡 * 揭されている掘凤を塔たす眷圭に嘎り·塑ソフトウェア∈塑ソフトウェア * を猖恃したものを崔むˉ笆布票じ∷を蝗脱ˇ剩澜ˇ猖恃ˇ浩芹邵∈笆布· * 网脱と钙ぶ∷することを痰浸で钓满するˉ * (1) 塑ソフトウェアをソ〖スコ〖ドの妨で网脱する眷圭には·惧淡の螟侯 * 涪山绩·この网脱掘凤および布淡の痰瘦沮惮年が·そのままの妨でソ〖 * スコ〖ド面に崔まれていることˉ * (2) 塑ソフトウェアを·ライブラリ妨及など·戮のソフトウェア倡券に蝗 * 脱できる妨で浩芹邵する眷圭には·浩芹邵に燃うドキュメント∈网脱 * 荚マニュアルなど∷に·惧淡の螟侯涪山绩·この网脱掘凤および布淡 * の痰瘦沮惮年を非很することˉ * (3) 塑ソフトウェアを·怠达に寥み哈むなど·戮のソフトウェア倡券に蝗 * 脱できない妨で浩芹邵する眷圭には·肌のいずれかの掘凤を塔たすこ * とˉ * (a) 浩芹邵に燃うドキュメント∈网脱荚マニュアルなど∷に·惧淡の螟 * 侯涪山绩·この网脱掘凤および布淡の痰瘦沮惮年を非很することˉ * (b) 浩芹邵の妨轮を·侍に年める数恕によって·TOPPERSプロジェクトに * 鼠桂することˉ * (4) 塑ソフトウェアの网脱により木儡弄または粗儡弄に栏じるいかなる禄 * 巢からも·惧淡螟侯涪荚およびTOPPERSプロジェクトを倘勒することˉ * * 塑ソフトウェアは·痰瘦沮で捏丁されているものであるˉ惧淡螟侯涪荚お * よびTOPPERSプロジェクトは·塑ソフトウェアに簇して·その努脱材墙拉も * 崔めて·いかなる瘦沮も乖わないˉまた·塑ソフトウェアの网脱により木 * 儡弄または粗儡弄に栏じたいかなる禄巢に簇しても·その勒扦を砷わないˉ * * @(#) $Id: mpc860t.h,v 1.2 2004/10/07 17:10:56 honda Exp $ *//* * MPC860のハ〖ドウェア获富の年盗 */#ifndef _MPC860_H_#define _MPC860_H_/* * 充哈みの塑眶 */#define TMAX_SIU_INTNO 16 /* システムインタ〖フェ〖スユニットSIU */#define TMAX_CPM_INTNO 32 /* 奶慨プロセッサモジュ〖ルCPM */ /* MPC860链挛 */#define TMAX_INTNO (TMAX_SIU_INTNO+TMAX_CPM_INTNO)/* * 充哈み簇息の年盗 * 充哈み妥傍髓に3硷梧の猛を瓷妄している * 1ˉ充哈み戎规 * 2ˉSIUへの充哈み妥滇レベル * 柒婶レベルの肋年 * CPM充哈みは链挛でひとまとめの胺い * (1) No.¨0×7の眶猛 * 客粗には尸かりやすいが、プログラム面では * 木儡、蝗脱されない * (1-2) 充哈み妥傍の急侍 * 导击ベクタテ〖ブルのインデックスとして粕み叫す * だけなので、篓猛としてマクロ年盗しておく涩妥はない * 徒め2ビットシフトされている * (2) 1バイトのビットパタ〖ン * 充哈み妥滇レベルを肋年する狠にレジスタにセットする猛 * 澈碰する1ビットだけをセットする * 3ˉSIUのIPM * 2バイトのビットパタ〖ン * CPM充哈みは链挛でひとまとめの胺い * (1) 充哈みマスク * SIU充哈みレジスタSIMASKに肋年する猛 * 极尸よりレベルの你い充哈み妥滇をすべてマスクする * (2) 瘦伪面の充哈み妥傍 * 澈碰するビットだけがセットされている * * 柒婶レベル2-(1)から充哈み戎规、充哈みレベル肋年脱ビットパタ〖ン、 * IPMを栏喇する数克で悸刘 * *//* * 充哈み戎规の年盗 * ハ〖ドウェアマニュアルにはSIU充哈みソ〖スの16×31戎は徒腆貉 * みとあるが、导击ベクタテ〖ブルが痰绿に络きくなるだけなので、 * CPM充哈みソ〖スを充り碰てている * * 充哈み戎规と庭黎刨の簇犯がSIU充哈みとCPM充哈み∈デフォルト∷ * で嫡なので庙罢 * SIU充哈み * 充哈み戎规 0¨呵惧疤 * 充哈み戎规 15¨呵布疤 * CPM充哈み∈デフォルト∷ * 充哈み戎规 0x0¨呵布疤 * 充哈み戎规 0x1f¨呵惧疤 */ /* SIU充哈みソ〖ス */#define INTNO_IRQ0 0x0 /* IRQ0 */#define INTNO_LVL0 0x1 /* 柒婶レベル0 */#define INTNO_IRQ1 0x2 /* IRQ1 */#define INTNO_LVL1 0x3 /* 柒婶レベル1 */#define INTNO_IRQ2 0x4 /* IRQ2 */#define INTNO_LVL2 0x5 /* 柒婶レベル2 */#define INTNO_IRQ3 0x6 /* IRQ3 */#define INTNO_LVL3 0x7 /* 柒婶レベル3 */#define INTNO_IRQ4 0x8 /* IRQ4 */#define INTNO_LVL4 0x9 /* 柒婶レベル4 */#define INTNO_IRQ5 0xa /* IRQ5 */#define INTNO_LVL5 0xb /* 柒婶レベル5 */#define INTNO_IRQ6 0xc /* IRQ6 */#define INTNO_LVL6 0xd /* 柒婶レベル6 */#define INTNO_IRQ7 0xe /* IRQ7 */#define INTNO_LVL7 0xf /* 柒婶レベル7 */ /* CPM充哈みソ〖ス */#define INTNO_ERR 0x10 /* エラ〖¨0x0 */#define INTNO_PC4 0x11 /* パラレルI/O PC4¨0x1 */#define INTNO_PC5 0x12 /* パラレルI/O PC5¨0x2 */#define INTNO_SMC2 0x13 /* SMC2/PIP¨0x3 */#define INTNO_SMC1 0x14 /* SMC1¨0x4 */#define INTNO_SPI 0x15 /* SPI¨0x5 */#define INTNO_PC6 0x16 /* パラレルI/O PC6¨0x6 */#define INTNO_TIMER4 0x17 /* タイマ4¨0x7 *//* CPM充哈み戎规8は徒腆貉み */#define INTNO_PC7 0x19 /* パラレルI/O PC7¨0x9 */#define INTNO_PC8 0x1a /* パラレルI/O PC8¨0xa */#define INTNO_PC9 0x1b /* パラレルI/O PC9¨0xb */#define INTNO_TIMER3 0x1c /* タイマ3¨0xc *//* CPM充哈み戎规0xdは徒腆貉み */#define INTNO_PC10 0x1e /* パラレルI/O PC10¨0xe */#define INTNO_PC11 0x1f /* パラレルI/O PC11¨0xf */#define INTNO_I2C 0x20 /* I2C¨0x10 */#define INTNO_RISC 0x21 /* RISCタイマテ〖ブル¨0x11 */#define INTNO_TIMER2 0x22 /* タイマ2¨0x12 *//* CPM充哈み戎规0x13は徒腆貉み */#define INTNO_IDMA2 0x24 /* IDMA2¨0x14 */#define INTNO_IDMA1 0x25 /* IDMA1¨0x15 */#define INTNO_SDMA 0x26 /* SDMAチャネルバスエラ〖¨0x16 */#define INTNO_PC12 0x27 /* パラレルI/O PC12¨0x17 */#define INTNO_PC13 0x28 /* パラレルI/O PC13¨0x18 */#define INTNO_TIMER1 0x29 /* タイマ1¨0x19 */#define INTNO_PC14 0x2a /* パラレルI/O PC14¨ */#define INTNO_SCC4 0x2b /* SCC4¨0x1a */#define INTNO_SCC3 0x2c /* SCC3¨0x1c */#define INTNO_SCC2 0x2d /* SCC2¨0x1d */#define INTNO_SCC1 0x2e /* SCC1¨0x1e */#define INTNO_PC15 0x2f /* パラレルI/O PC15¨0x1f *//* * SIUのIPMの年盗 * 2バイトのビットパタ〖ン * ハ〖ドウェアのデフォルトの庭黎刨に圭わせている */#define IPM_IRQ0 0x00u /* IRQ0 */#define IPM_LVL0 BIT0_16 /* 柒婶レベル0 */#define IPM_IRQ1 (IPM_LVL0 | BIT1_16) /* IRQ1 */#define IPM_LVL1 (IPM_IRQ1 | BIT2_16) /* 柒婶レベル1 */#define IPM_IRQ2 (IPM_LVL1 | BIT3_16) /* IRQ2 */#define IPM_LVL2 (IPM_IRQ2 | BIT4_16) /* 柒婶レベル2 */#define IPM_IRQ3 (IPM_LVL2 | BIT5_16) /* IRQ3 */#define IPM_LVL3 (IPM_IRQ3 | BIT6_16) /* 柒婶レベル3 */#define IPM_IRQ4 (IPM_LVL3 | BIT7_16) /* IRQ4 */#define IPM_LVL4 (IPM_IRQ4 | BIT8_16) /* 柒婶レベル4 */#define IPM_IRQ5 (IPM_LVL4 | BIT9_16) /* IRQ5 */#define IPM_LVL5 (IPM_IRQ5 | BIT10_16) /* 柒婶レベル5 */#define IPM_IRQ6 (IPM_LVL5 | BIT11_16) /* IRQ6 */#define IPM_LVL6 (IPM_IRQ6 | BIT12_16) /* 柒婶レベル6 */#define IPM_IRQ7 (IPM_LVL6 | BIT13_16) /* IRQ7 */#define IPM_LVL7 (IPM_IRQ7 | BIT14_16) /* 柒婶レベル7 *//* 充哈みレベルから充哈み戎规への恃垂 */#define _LEVEL_TO_INHNO(level) INTNO_LVL##level#define LEVEL_TO_INHNO(level) _LEVEL_TO_INHNO(level)/* 充哈みレベルから判峡脱ビットパタ〖ンへの恃垂 */#define _LEVEL_TO_BIT_PATTERN(level) (0x1<<(7-(level)))#define LEVEL_TO_BIT_PATTERN(level) _LEVEL_TO_BIT_PATTERN(level)/* 充哈みレベルからIPMへの恃垂 */#define _LEVEL_TO_IPM(level) IPM_LVL##level#define LEVEL_TO_IPM(level) _LEVEL_TO_IPM(level)/* 充哈みレベルから充哈み钓材ビットへの恃垂 */#define _LEVEL_TO_ENABLE_BIT(level) SIMASK_LVM##level#define LEVEL_TO_ENABLE_BIT(level) _LEVEL_TO_ENABLE_BIT(level)/* * CPUの柒婶レジスタ *//* * 8. 炭吾キャッシュˇデ〖タキャッシュ簇息の年盗 *//* 扩告レジスタ *//* 炭吾キャッシュ簇息 */#define IC_CST 560 /* 扩告およびステ〖タスˇレジスタ */#define IC_ADR 561 /* アドレスˇレジスタ */#define IC_DAT 562 /* デ〖タˇポ〖トˇレジスタ *//* デ〖タˇキャッシュ簇息 */#define DC_CST 568 /* 扩告およびステ〖タスˇレジスタ */#define DC_ADR 569 /* アドレスˇレジスタ */#define DC_DAT 570 /* デ〖タˇポ〖トˇレジスタ *//* * 9. メモリ瓷妄ユニットMMU簇息の年盗 *//* 扩告レジスタ */#define MI_CTR 784 /* IMMU 扩告レジスタ */#define MD_CTR 792 /* DMMU 扩告レジスタ *//* TLBソ〖スˇレジスタ */#define MI_EPN 787 /* IMMU 悸跟ペ〖ジ戎规レジスタ */#define MD_EPN 795 /* DMMU 悸跟ペ〖ジ戎规レジスタ */#define MI_TWC 789 /* IMMU テ〖ブルウォ〖ク扩告レジスタ */#define MD_TWC 797 /* DMMU テ〖ブルウォ〖ク扩告レジスタ */#define MI_RPN 790 /* IMMU 悸∈湿妄∷ペ〖ジ戎规ポ〖ト */#define MD_RPN 798 /* DMMU 悸∈湿妄∷ペ〖ジ戎规ポ〖ト *//* テ〖ブルウォ〖クˇベ〖スˇレジスタ */#define M_TWD 796 /* MMU テ〖ブルウォ〖クˇベ〖スˇレジスタ *//* 瘦割レジスタ */#define M_CASID 793 /* MMU カレントˇアドレス鄂粗ID レジスタ */#define MI_AP 786 /* IMMU アクセス瘦割レジスタ */#define MD_AP 794 /* DMMU アクセス瘦割レジスタ *//* スクラッチˇレジスタ */#define M_TB 799 /* MMU テ〖ブルウォ〖クˇスペシャルˇレジスタ *//* デバッグˇレジスタ */#define MI_CAM 816 /* IMMU CAM エントリˇリ〖ドˇレジスタ */#define MI_RAM0 817 /* IMMU RAM エントリˇリ〖ドˇレジスタ 0 */#define MI_RAM1 818 /* IMMU RAM エントリˇリ〖ドˇレジスタ 1 */#define MD_CAM 824 /* DMMU CAM エントリˇリ〖ドˇレジスタ */#define MD_RAM0 825 /* DMMU RAM エントリˇリ〖ドˇレジスタ 0 */#define MD_RAM1 826 /* DMMU RAM エントリˇリ〖ドˇレジスタ 1 *//* * 11. システムインタ〖フェ〖スユニットSIU簇息の年盗 *//* * 柒婶メモリマップレジスタ * 柒婶レジスタ凡の黎片アドレス * * リセット木稿は0x0000,0000戎孟を回しているがSDRAMと * ぶつかるので、侍のアドレスに恃える涩妥がある */#define IMMR 638 /* レジスタ戎规 */#define IMMR_UPPER_2BYTE 0xff00 /* 惧疤16ビット */#define IMMR_BASE (IMMR_UPPER_2BYTE << 16) /* ベ〖スアドレス */ #define TADR_SIU_SIUMCR 0x0 /* SIUモジュ〖ルコンフィギュレ〖ション */ /* レジスタSIUMCR *//* * 11.5 SIU充哈みコントロ〖ラ簇息の年盗 */#define TADR_SIU_SIPEND 0x10 /* SIU充哈み瘦伪レジスタSIPEND */#define TADR_SIU_SIMASK 0x14 /* SIU充哈みマスクレジスタSIMASK */ /* 惧疤2バイトのみ蝗脱する */#define SIMASK (VH *)(IMMR_BASE + TADR_SIU_SIMASK)#define SIMASK_IRM0 BIT0_16 /* IRQ0 */#define SIMASK_LVM0 BIT1_16 /* 柒婶レベル0 */#define SIMASK_IRM1 BIT2_16 /* IRQ1 */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -