hw_bcopy.h
1.17 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
/*
* Copyright (C) 1996-1998 by the Board of Trustees
* of Leland Stanford Junior University.
*
* This file is part of the SimOS distribution.
* See LICENSE file for terms of the license.
*
*/
/*
* hw_bcopy.h - Interface to HWBCOPY chip
*/
#ifndef SIMHWBCOPY_H
#define SIMHWBCOPY_H
/* SimhwbcopyRequestArea should NOT be changed!! */
extern int Simhwbcopy_BlockCopy(char *, char *, int, uint64 *);
extern int Simhwbcopy_BlockZero(char *, int, uint64 *);
extern int Simhwbcopy_init(void);
extern int hwbDMA;
extern int hwbDMAChannels;
extern int hwbDMADelay;
extern int hwprefetch;
extern int hwprefRange;
extern int hwprefDepth;
/* RPB -- this is pillaged from protocols/dyn_ptr/msg_app_ppc_interface.h */
/* I'm not quite sure where it belongs yet, so I'll just stick it here... */
typedef union {
struct {
unsigned long fromPageNum:16;
/* How many source pages will follow? */
unsigned long toPageNum:16;
/* How many dest pages will follow? */
unsigned long count;
/* What is the message length in bytes */
} fields;
uint64 ll;
} FmemcpyInit;
typedef union {
struct {
uint64 length;
} fields;
uint64 ll;
} FbzeroInit;
#endif /* SIMHWBCOPY_H */