source: rtems/c/src/lib/libbsp/powerpc/psim/shmsupp/getcfg.c @ 39cc10a

4.104.114.95
Last change on this file since 39cc10a was 39cc10a, checked in by Joel Sherrill <joel.sherrill@…>, on 09/05/08 at 14:42:59

2008-09-05 Joel Sherrill <joel.sherrill@…>

  • Makefile.am, preinstall.am, shmsupp/getcfg.c, shmsupp/lock.c, startup/linkcmds: Now running mptests using new memory layout with updates patches against gdb 6.8.
  • include/psim.h, startup/psim_registers.c: New files.
  • Property mode set to 100644
File size: 1.7 KB
Line 
1/*  void Shm_Get_configuration( localnode, &shmcfg )
2 *
3 *  This routine initializes, if necessary, and returns a pointer
4 *  to the Shared Memory Configuration Table for the PowerPC PSIM.
5 *
6 *  INPUT PARAMETERS:
7 *    localnode - local node number
8 *    shmcfg    - address of pointer to SHM Config Table
9 *
10 *  OUTPUT PARAMETERS:
11 *    *shmcfg   - pointer to SHM Config Table
12 *
13 *  NOTES:  No interrupt support.
14 *
15 *  COPYRIGHT (c) 1989-2008.
16 *  On-Line Applications Research Corporation (OAR).
17 *
18 *  The license and distribution terms for this file may be
19 *  found in found in the file LICENSE in this distribution or at
20 *  http://www.rtems.com/license/LICENSE.
21 *
22 *  $Id$
23 */
24
25#include <rtems.h>
26#include <psim.h>
27#include "shm_driver.h"
28
29#define INTERRUPT 0                   /* PSIM target supports only */
30#define POLLING   1                   /* polling mode. */
31
32shm_config_table BSP_shm_cfgtbl;
33
34void Shm_Get_configuration(
35  uint32_t           localnode,
36  shm_config_table **shmcfg
37)
38{
39   BSP_shm_cfgtbl.base         = (uint32_t*)PSIM.SharedMemory;
40   BSP_shm_cfgtbl.length       = sizeof(PSIM.SharedMemory);
41   BSP_shm_cfgtbl.format       = SHM_BIG;
42
43   BSP_shm_cfgtbl.cause_intr   = Shm_Cause_interrupt;
44
45#ifdef NEUTRAL_BIG
46   BSP_shm_cfgtbl.convert      = NULL_CONVERT;
47#else
48   BSP_shm_cfgtbl.convert      = CPU_swap_u32;
49#endif
50
51#if (POLLING==1)
52   BSP_shm_cfgtbl.poll_intr    = POLLED_MODE;
53   BSP_shm_cfgtbl.Intr.address = NO_INTERRUPT;
54   BSP_shm_cfgtbl.Intr.value   = NO_INTERRUPT;
55   BSP_shm_cfgtbl.Intr.length  = NO_INTERRUPT;
56#else
57   BSP_shm_cfgtbl.poll_intr    = INTR_MODE;
58   BSP_shm_cfgtbl.Intr.address = 0;
59   BSP_shm_cfgtbl.Intr.value   = 0;
60   BSP_shm_cfgtbl.Intr.length  = BYTE;
61#endif
62
63   *shmcfg = &BSP_shm_cfgtbl;
64
65}
Note: See TracBrowser for help on using the repository browser.