/****************************************************************************** * * Copyright (C) 2011 - 2014 Xilinx, Inc. All rights reserved. * * Permission is hereby granted, free of charge, to any person obtaining a copy * of this software and associated documentation files (the "Software"), to deal * in the Software without restriction, including without limitation the rights * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell * copies of the Software, and to permit persons to whom the Software is * furnished to do so, subject to the following conditions: * * The above copyright notice and this permission notice shall be included in * all copies or substantial portions of the Software. * * Use of the Software is limited solely to applications: * (a) running on a Xilinx device, or * (b) that interact with a Xilinx device through a bus or interconnect. * * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE * XILINX CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF * OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE * SOFTWARE. * * Except as contained in this notice, the name of the Xilinx shall not be used * in advertising or otherwise to promote the sale, use or other dealings in * this Software without prior written authorization from Xilinx. * ******************************************************************************/ /*****************************************************************************/ /** * * @file xiomodule_g.c * * This file contains a configuration table that specifies the configuration of * interrupt controller devices in the system. * * <pre> * MODIFICATION HISTORY: * * Ver Who Date Changes * ----- ---- -------- ----------------------------------------------- * 1.00a sa 07/15/11 First release * </pre> * * @internal * * This configuration table contains entries that are modified at runtime * by the driver. The EDK tools populate the table with default values for the * vector table and the options flag. These default values can be, and are, * overwritten at runtime by the driver. This is a deviation from most drivers' * configuration tables in that most are created statically by the tools and * are never modified during runtime. Most tables reflect only the hardware * configuration of the device. This IOModule configuration table contains * software information in addition to hardware configuration. The IOModule * configuration table should be considered an exception to the usage of the * configuration table rather than the norm. * ******************************************************************************/ /***************************** Include Files *********************************/ #include "xiomodule.h" #include "xparameters.h" /************************** Constant Definitions *****************************/ /**************************** Type Definitions *******************************/ /***************** Macros (Inline Functions) Definitions *********************/ /************************** Function Prototypes ******************************/ /************************** Variable Prototypes ******************************/ /** * This table contains configuration information for each iomodule device * in the system. The XIOModule driver must know when to acknowledge the * interrupt. The entry which specifies this as a bit mask where each bit * corresponds to a specific interrupt. A bit set indicates to ack it before * servicing it. Generally, acknowledge before service is used when the * interrupt signal is edge-sensitive, and after when the signal is * level-sensitive. * * Refer to the XIOModule_Config data structure in xiomodule.h for * details on how this table should be initialized. */ XIOModule_Config XIOModule_ConfigTable[XPAR_XIOMODULE_NUM_INSTANCES] = { { XPAR_IOMODULE_0_DEVICE_ID, /* Unique ID of device */ XPAR_IOMODULE_0_REG_BASEADDR, /* Unique identifier */ XPAR_IOMODULE_0_IO_BASEADDR, /* IO Bus Base Address */ XPAR_IOMODULE_0_INTC_HAS_FAST, /* Fast interrupt enabled */ XPAR_IOMODULE_0_INTC_BASE_VECTORS, /* Relocatable base vector */ XPAR_IOMODULE_0_ACK_BEFORE, /* Ack before or after service */ 0, /* Device options */ 100000000, /* Input clock frequency (Hz) */ 115200, /* Current baud rate */ {0, 0, 0, 0}, /* PIT timer used */ {0, 0, 0, 0}, /* PIT timer counter size */ {0, 0, 0, 0}, /* PIT prescaler */ {0, 0, 0, 0}, /* PIT readable */ {0, 0, 0, 0} /* GPO initial value */ } , { XPAR_IOMODULE_1_DEVICE_ID, /* Unique ID of device */ XPAR_IOMODULE_1_REG_BASEADDR, /* Unique identifier */ XPAR_IOMODULE_1_IO_BASEADDR, /* IO Bus Base Address */ XPAR_IOMODULE_1_INTC_HAS_FAST, /* Fast interrupt enabled */ XPAR_IOMODULE_1_INTC_BASE_VECTORS, /* Relocatable base vector */ XPAR_IOMODULE_1_ACK_BEFORE, /* Ack before or after service */ 0, /* Device options */ 100000000, /* Input clock frequency (Hz) */ 115200, /* Current baud rate */ {0, 0, 0, 0}, /* PIT timer used */ {0, 0, 0, 0}, /* PIT timer counter size */ {0, 0, 0, 0}, /* PIT prescaler */ {0, 0, 0, 0}, /* PIT readable */ {0, 0, 0, 0} /* GPO initial value */ } };