diff options
Diffstat (limited to 'c/src/lib/libbsp/a29k/portsw/shmsupp')
-rw-r--r-- | c/src/lib/libbsp/a29k/portsw/shmsupp/.cvsignore | 2 | ||||
-rw-r--r-- | c/src/lib/libbsp/a29k/portsw/shmsupp/Makefile.am | 36 | ||||
-rw-r--r-- | c/src/lib/libbsp/a29k/portsw/shmsupp/addrconv.c | 34 | ||||
-rw-r--r-- | c/src/lib/libbsp/a29k/portsw/shmsupp/getcfg.c | 80 | ||||
-rw-r--r-- | c/src/lib/libbsp/a29k/portsw/shmsupp/lock.c | 89 | ||||
-rw-r--r-- | c/src/lib/libbsp/a29k/portsw/shmsupp/mpisr.c | 50 |
6 files changed, 0 insertions, 291 deletions
diff --git a/c/src/lib/libbsp/a29k/portsw/shmsupp/.cvsignore b/c/src/lib/libbsp/a29k/portsw/shmsupp/.cvsignore deleted file mode 100644 index 282522db03..0000000000 --- a/c/src/lib/libbsp/a29k/portsw/shmsupp/.cvsignore +++ /dev/null @@ -1,2 +0,0 @@ -Makefile -Makefile.in diff --git a/c/src/lib/libbsp/a29k/portsw/shmsupp/Makefile.am b/c/src/lib/libbsp/a29k/portsw/shmsupp/Makefile.am deleted file mode 100644 index 30c8b19606..0000000000 --- a/c/src/lib/libbsp/a29k/portsw/shmsupp/Makefile.am +++ /dev/null @@ -1,36 +0,0 @@ -## -## $Id$ -## - -AUTOMAKE_OPTIONS = foreign 1.4 - -PGM = ${ARCH}/shmsupp.rel - -## C source names -C_FILES = addrconv.c getcfg.c lock.c mpisr.c -C_O_FILES = $(C_FILES:%.c=${ARCH}/%.o) - -OBJS = $(C_O_FILES) - -include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg -include $(top_srcdir)/../../../../../../automake/compile.am -include $(top_srcdir)/../../../../../../automake/lib.am - -# -# (OPTIONAL) Add local stuff here using += -# - -$(PGM): ${OBJS} - $(make-rel) - -if HAS_MP -all-local: ${ARCH} $(PGM) -else -all-local: -endif - -# the .rel file built here will be put into libbsp.a by ../wrapup/Makefile - -EXTRA_DIST = addrconv.c getcfg.c lock.c mpisr.c - -include $(top_srcdir)/../../../../../../automake/local.am diff --git a/c/src/lib/libbsp/a29k/portsw/shmsupp/addrconv.c b/c/src/lib/libbsp/a29k/portsw/shmsupp/addrconv.c deleted file mode 100644 index 13a5511306..0000000000 --- a/c/src/lib/libbsp/a29k/portsw/shmsupp/addrconv.c +++ /dev/null @@ -1,34 +0,0 @@ -/* Shm_Convert_address - * - * No address range conversion is required. - * - * Input parameters: - * address - address to convert - * - * Output parameters: - * returns - converted address - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - -#include <rtems.h> -#include <bsp.h> -#include <shm_driver.h> - -#ifndef lint -static char _sccsid[] = "@(#)addrconv.c 04/08/96 1.1\n"; -#endif - -void *Shm_Convert_address( - void *address -) -{ - return ( address ); -} diff --git a/c/src/lib/libbsp/a29k/portsw/shmsupp/getcfg.c b/c/src/lib/libbsp/a29k/portsw/shmsupp/getcfg.c deleted file mode 100644 index 2a681cdebf..0000000000 --- a/c/src/lib/libbsp/a29k/portsw/shmsupp/getcfg.c +++ /dev/null @@ -1,80 +0,0 @@ -/* void Shm_Get_configuration( localnode, &shmcfg ) - * - * This routine initializes, if necessary, and returns a pointer - * to the Shared Memory Configuration Table for the XXX target. - * - * INPUT PARAMETERS: - * localnode - local node number - * shmcfg - address of pointer to SHM Config Table - * - * OUTPUT PARAMETERS: - * *shmcfg - pointer to SHM Config Table - * -XXX: FIX THE COMMENTS BELOW WHEN THE CPU IS KNOWN - * NOTES: The XYZ does not have an interprocessor interrupt. - * - * The following table illustrates the configuration limitations: - * - * BUS MAX - * MODE ENDIAN NODES - * ========= ====== ======= - * POLLED BIG 2+ - * INTERRUPT **** NOT SUPPORTED **** - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - -#include <rtems.h> -#include <bsp.h> -#include <shm_driver.h> - -#ifndef lint -static char _sccsid[] = "@(#)getcfg.c 04/08/96 1.1\n"; -#endif - -/* - * configured if currently polling of interrupt driven - */ - -#define INTERRUPT 0 /* XXX: */ -#define POLLING 1 /* XXX: fix me -- is polling ONLY!!! */ - - -shm_config_table BSP_shm_cfgtbl; - -void Shm_Get_configuration( - rtems_unsigned32 localnode, - shm_config_table **shmcfg -) -{ - BSP_shm_cfgtbl.base = 0x0; - BSP_shm_cfgtbl.length = 1 * MEGABYTE; - BSP_shm_cfgtbl.format = SHM_BIG; - - /* - * Override cause_intr or shm_isr if your target has - * special requirements. - */ - - BSP_shm_cfgtbl.cause_intr = Shm_Cause_interrupt; - -#ifdef NEUTRAL_BIG - BSP_shm_cfgtbl.convert = NULL_CONVERT; -#else - BSP_shm_cfgtbl.convert = CPU_swap_u32; -#endif - - BSP_shm_cfgtbl.poll_intr = POLLED_MODE; - BSP_shm_cfgtbl.Intr.address = NO_INTERRUPT; - BSP_shm_cfgtbl.Intr.value = NO_INTERRUPT; - BSP_shm_cfgtbl.Intr.length = NO_INTERRUPT; - - *shmcfg = &BSP_shm_cfgtbl; -} diff --git a/c/src/lib/libbsp/a29k/portsw/shmsupp/lock.c b/c/src/lib/libbsp/a29k/portsw/shmsupp/lock.c deleted file mode 100644 index 3a99179e57..0000000000 --- a/c/src/lib/libbsp/a29k/portsw/shmsupp/lock.c +++ /dev/null @@ -1,89 +0,0 @@ -/* Shared Memory Lock Routines - * - * This shared memory locked queue support routine need to be - * able to lock the specified locked queue. Interrupts are - * disabled while the queue is locked to prevent preemption - * and deadlock when two tasks poll for the same lock. - * previous level. - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - -#include <rtems.h> -#include <bsp.h> -#include <shm_driver.h> - -#ifndef lint -static char _sccsid[] = "@(#)lock.c 04/08/96 1.1\n"; -#endif - -/* - * Shm_Initialize_lock - * - * Initialize the lock for the specified locked queue. - */ - -void Shm_Initialize_lock( - Shm_Locked_queue_Control *lq_cb -) -{ - lq_cb->lock = LQ_UNLOCKED; -} - -/* void _Shm_Lock( &lq_cb ) - * - * This shared memory locked queue support routine locks the - * specified locked queue. It disables interrupts to prevent - * a deadlock condition. - */ - -void Shm_Lock( - Shm_Locked_queue_Control *lq_cb -) -{ - rtems_unsigned32 isr_level; - rtems_unsigned32 *lockptr = &lq_cb->lock; - rtems_unsigned32 lock_value; - - lock_value = 0x80000000; - rtems_interrupt_disable( isr_level ); - - Shm_isrstat = isr_level; - while ( lock_value ) { - asm volatile( "" - : "=r" (lockptr), "=r" (lock_value) - : "0" (lockptr), "1" (lock_value) - ); - /* - * If not available, then may want to delay to reduce load on lock. - */ - - if ( lock_value ) - delay( 10 ); /* approximately 10 microseconds */ - } -} - -/* - * Shm_Unlock - * - * Unlock the lock for the specified locked queue. - */ - -void Shm_Unlock( - Shm_Locked_queue_Control *lq_cb -) -{ - rtems_unsigned32 isr_level; - - lq_cb->lock = SHM_UNLOCK_VALUE; - isr_level = Shm_isrstat; - rtems_interrupt_enable( isr_level ); -} - diff --git a/c/src/lib/libbsp/a29k/portsw/shmsupp/mpisr.c b/c/src/lib/libbsp/a29k/portsw/shmsupp/mpisr.c deleted file mode 100644 index d76b60fd9d..0000000000 --- a/c/src/lib/libbsp/a29k/portsw/shmsupp/mpisr.c +++ /dev/null @@ -1,50 +0,0 @@ -/* Shm_isr_nobsp() - * - * COPYRIGHT (c) 1989-1999. - * On-Line Applications Research Corporation (OAR). - * - * The license and distribution terms for this file may be - * found in the file LICENSE in this distribution or at - * http://www.OARcorp.com/rtems/license.html. - * - * $Id$ - */ - -#include <rtems.h> -#include <bsp.h> -#include <shm_driver.h> - -#ifndef lint -static char _sccsid[] = "@(#)mpisr.c 04/08/96 1.1\n"; -#endif - -rtems_isr Shm_isr_nobsp( void ) -{ - /* - * If this routine has to do anything other than the mpisr.c - * found in the generic driver, then copy the contents of the generic - * mpisr.c and augment it to satisfy this particular board. Typically, - * you need to have a board specific mpisr.c when the interrupt - * must be cleared. - * - * If the generic mpisr.c satisifies your requirements, then - * remove this routine from your target's shmsupp/mpisb.c file. - * Then simply install the generic Shm_isr in the Shm_setvec - * routine below. - */ -} - -/* Shm_setvec - * - * This driver routine sets the SHM interrupt vector to point to the - * driver's SHM interrupt service routine. - * - * Input parameters: NONE - * - * Output parameters: NONE - */ - -void Shm_setvec( void ) -{ - /* XXX: FIX ME!!! */ -} |