![]() |
|
|||
File indexing completed on 2025-05-11 08:23:56
0001 /** 0002 * @file 0003 * 0004 * @ingroup powerpc_vmeconfig 0005 * 0006 * @brief mvme3100 BSP specific address space configuration parameters 0007 */ 0008 0009 #ifndef RTEMS_BSP_VME_CONFIG_H 0010 #define RTEMS_BSP_VME_CONFIG_H 0011 0012 /* 0013 * Authorship 0014 * ---------- 0015 * This software was created by 0016 * Till Straumann <strauman@slac.stanford.edu>, 2002..2007, 0017 * Stanford Linear Accelerator Center, Stanford University. 0018 * 0019 * Acknowledgement of sponsorship 0020 * ------------------------------ 0021 * This software was produced by 0022 * the Stanford Linear Accelerator Center, Stanford University, 0023 * under Contract DE-AC03-76SFO0515 with the Department of Energy. 0024 * 0025 * Government disclaimer of liability 0026 * ---------------------------------- 0027 * Neither the United States nor the United States Department of Energy, 0028 * nor any of their employees, makes any warranty, express or implied, or 0029 * assumes any legal liability or responsibility for the accuracy, 0030 * completeness, or usefulness of any data, apparatus, product, or process 0031 * disclosed, or represents that its use would not infringe privately owned 0032 * rights. 0033 * 0034 * Stanford disclaimer of liability 0035 * -------------------------------- 0036 * Stanford University makes no representations or warranties, express or 0037 * implied, nor assumes any liability for the use of this software. 0038 * 0039 * Stanford disclaimer of copyright 0040 * -------------------------------- 0041 * Stanford University, owner of the copyright, hereby disclaims its 0042 * copyright and all other rights in this software. Hence, anyone may 0043 * freely use it for any purpose without restriction. 0044 * 0045 * Maintenance of notices 0046 * ---------------------- 0047 * In the interest of clarity regarding the origin and status of this 0048 * SLAC software, this and all the preceding Stanford University notices 0049 * are to remain affixed to any copy or derivative of this software made 0050 * or distributed by the recipient and are to be affixed to any copy of 0051 * software made or distributed by the recipient that contains a copy or 0052 * derivative of this software. 0053 * 0054 * ------------------ SLAC Software Notices, Set 4 OTT.002a, 2004 FEB 03 0055 */ 0056 0057 /* 0058 * NOTE: the BSP (startup/bspstart.c) uses 0059 * hardcoded window lengths that match this 0060 * layout: 0061 */ 0062 0063 #define _VME_A32_WIN0_ON_PCI 0xc0000000 0064 #define _VME_CSR_ON_PCI 0xce000000 0065 #define _VME_A24_ON_PCI 0xcf000000 0066 #define _VME_A16_ON_PCI 0xcfff0000 0067 0068 /* start of the A32 window on the VME bus 0069 * TODO: this should perhaps be a run-time configuration option 0070 */ 0071 #define _VME_A32_WIN0_ON_VME 0x20000000 0072 0073 /* if _VME_DRAM_OFFSET is defined, the BSP 0074 * will map the board RAM onto the VME bus, starting 0075 * at _VME_DRAM_OFFSET 0076 */ 0077 #define _VME_DRAM_OFFSET 0xc0000000 0078 0079 /* If your BSP requires a non-standard way to configure 0080 * the VME interrupt manager then define the symbol 0081 * 0082 * BSP_VME_INSTALL_IRQ_MGR 0083 * 0084 * to a proper instruction sequence that installs the 0085 * universe interrupt manager. This requires knowledge 0086 * of the wiring between the universe and the PIC (main 0087 * interrupt controller), i.e., which IRQ 'pins' of the 0088 * universe are wired to which 'lines'/inputs at the PIC. 0089 * (consult vmeUniverse.h for more information). 0090 * 0091 * When installing the universe IRQ manager it is also 0092 * possible to specify whether it should try to share 0093 * PIC interrupts with other sources. This might not 0094 * be supported by all BSPs (but the unverse driver 0095 * recognizes that). 0096 * 0097 * If BSP_VME_INSTALL_IRQ_MGR is undefined then 0098 * the default algorithm is used (vme_universe.c): 0099 * 0100 * This default setup uses only a single wire. It reads 0101 * the PIC 'line' from PCI configuration space and assumes 0102 * this to be wired to the first (LIRQ0) IRQ input at the 0103 * universe. The default setup tries to use interrupt 0104 * sharing. 0105 */ 0106 0107 extern int BSP_VMEInit(void); 0108 extern int BSP_VMEIrqMgrInstall(void); 0109 0110 /** 0111 * @defgroup powerpc_vme BSP_VME_INSTALL_IRQ_MGR Support 0112 * 0113 * @ingroup RTEMSBSPsPowerPCMVME3100 0114 * 0115 * @brief BSP_VME_INSTALL_IRQ_MGR Support Package 0116 */ 0117 #define BSP_VME_INSTALL_IRQ_MGR(err) \ 0118 do { \ 0119 err = vmeTsi148InstallIrqMgrAlt(\ 0120 VMETSI148_IRQ_MGR_FLAG_SHARED, /* use shared IRQs */ \ 0121 0, BSP_VME0_IRQ, \ 0122 1, BSP_VME1_IRQ, \ 0123 2, BSP_VME2_IRQ, \ 0124 3, BSP_VME3_IRQ, \ 0125 -1 /* terminate list */ \ 0126 ); \ 0127 } while (0) 0128 0129 /* This BSP uses the Tsi148 Driver */ 0130 #define _VME_DRIVER_TSI148 0131 0132 #endif
[ Source navigation ] | [ Diff markup ] | [ Identifier search ] | [ general search ] |
This page was automatically generated by the 2.3.7 LXR engine. The LXR team |
![]() ![]() |