OpenCores
URL https://opencores.org/ocsvn/openrisc_me/openrisc_me/trunk

Subversion Repositories openrisc_me

[/] [openrisc/] [trunk/] [rtos/] [rtems/] [c/] [src/] [lib/] [libbsp/] [i960/] [rxgen960/] [startup/] [memchnl.h] - Blame information for rev 173

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 30 unneback
/*-------------------------------------*/
2
/* memchnl.h                           */
3
/* Last change : 16. 5.95              */
4
/*-------------------------------------*/
5
/*
6
 *  $Id: memchnl.h,v 1.2 2001-09-27 11:59:59 chris Exp $
7
 */
8
 
9
#ifndef _MEMCHNL_H_
10
#define _MEMCHNL_H_
11
 
12
/* The following is a dummy for now to be filled in
13
        as the message passing stuff gets migrated to
14
        I20 (or other standard )
15
*/
16
 
17
typedef
18
struct memMsg{
19
        int * foo;
20
} IOTrCBlk, * iotrcb_ptr_t;
21
 
22
typedef void * iotrcb_sgm_t;
23
 
24
  /* Interrupt arrived from X processor.
25
   * This is invoked from low-level interrupt dispatcher.
26
   */
27
extern void memChnlIntrFromHost(void);
28
  /* This IOT's processing is completed.
29
   * Signal the host, it can take it back.
30
   */
31
extern void memChnlIotFinished(IOTrCBlk *);
32
  /* A fault has just occured. Pass a signal over
33
   * memory channel.
34
   */
35
extern void memChnlI960Fault(void);
36
  /* IOT handler procedure.
37
   */
38
typedef void (* IotHandler)(IOTrCBlk *, int tr_req);
39
  /* Register handler to process IOT's.
40
   */
41
extern void memChnlRegisterHndl(IotHandler);
42
  /* Intermediate image buffer.
43
   * Defined in *.ld
44
   */
45
extern unsigned int downloadStart[];
46
 
47
typedef struct {
48
  int ptr_len;
49
  iotrcb_ptr_t ptr_loc;
50
  iotrcb_ptr_t * ptr_crnt;
51
  iotrcb_sgm_t * sgm_crnt;
52
} BufLookupHndl;
53
  /* Procedures to travel throughout the buffer page list.
54
   * It should be accomplished as below:
55
   *    ...
56
   *    BufLookupHndl hndl;
57
   *    char * buf;
58
   *    if (memBufLookupInit(& hndl, iot) != 0)  {
59
   *       while ((buf = memBufLookupNext(& hndl)) != 0)  {
60
   *         ... buf is a buffer page address.
61
   *       }
62
   *    }
63
   */
64
extern BufLookupHndl * memBufLookupInit(BufLookupHndl *, IOTrCBlk *);
65
extern void * memBufLookupNext(BufLookupHndl *);
66
 
67
#endif
68
/*-------------*/
69
/* End of file */
70
/*-------------*/
71
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.