Initial commit of OpenSPARC T2 architecture model.
[OpenSPARC-T2-SAM] / legion / src / devices / mem_bus / libgeneric / device_support.c
/*
* ========== Copyright Header Begin ==========================================
*
* OpenSPARC T2 Processor File: device_support.c
* Copyright (c) 2006 Sun Microsystems, Inc. All Rights Reserved.
* DO NOT ALTER OR REMOVE COPYRIGHT NOTICES.
*
* The above named program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public
* License version 2 as published by the Free Software Foundation.
*
* The above named program is distributed in the hope that 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 work; if not, write to the Free Software
* Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA.
*
* ========== Copyright Header End ============================================
*/
/*
* This is a set of generic support functions for basic devices.
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <sys/types.h>
#include <time.h>
#include "basics.h"
#include "allocate.h"
#include "lexer.h"
#include "simcore.h"
#include "config.h"
#include "dumpinfo.h"
#include "fatal.h"
#include "device.h"
/*
* For devices that have no cacheable address space areas
* use this function instead of declaring it for every device.
*
* The cacheable function is supposed to provide the following:
*
* Returns the extent of the linear cacheable block
* starting at offset, and a pointer to the state block
*
* Note: if writing to the block is supposed to have a
* device side effect (e.g. device reg) then this
* function is supposed to return 0.
*/
tpaddr_t generic_device_non_cacheable(
config_addr_t * config_addrp,
dev_access_t type,
tpaddr_t offset,
uint8_t ** blockp)
{
return ((tpaddr_t)0); /* no cacheable memory at all */
}