|
|
1.1 root 1: /*
2: * Copyright (c) 1999 Apple Computer, Inc. All rights reserved.
3: *
4: * @APPLE_LICENSE_HEADER_START@
5: *
6: * Portions Copyright (c) 1999 Apple Computer, Inc. All Rights
7: * Reserved. This file contains Original Code and/or Modifications of
8: * Original Code as defined in and that are subject to the Apple Public
9: * Source License Version 1.1 (the "License"). You may not use this file
10: * except in compliance with the License. Please obtain a copy of the
11: * License at http://www.apple.com/publicsource and read it before using
12: * this file.
13: *
14: * The Original Code and all software distributed under the License are
15: * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
16: * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
17: * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
18: * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
19: * License for the specific language governing rights and limitations
20: * under the License.
21: *
22: * @APPLE_LICENSE_HEADER_END@
23: */
24:
25: /* @(#)ldd.h 2.0 03/20/90 (c) 1990 NeXT
26: *
27: * ldd.h - kernel prototypes used by loadable device drivers
28: *
29: * HISTORY
30: * 22-May-91 Gregg Kellogg (gk) at NeXT
31: * Split out public interface.
32: *
33: * 16-Aug-90 Gregg Kellogg (gk) at NeXT
34: * Removed a lot of stuff that's defined in other header files.
35: * Eventually this file should either go away or contain only imports of
36: * other files.
37: *
38: * 20-Mar-90 Doug Mitchell at NeXT
39: * Created.
40: *
41: */
42:
43: #ifndef _DEV_LDD_PRIV_
44: #define _DEV_LDD_PRIV_
45:
46: #import <kernserv/prototypes.h>
47: #import <sys/cdefs.h>
48: #import <bsd/dev/disk.h>
49: #ifdef KERNEL_PRIVATE
50: #if !MACH_USER_API
51: #import <kern/task.h>
52: #import <kern/thread.h>
53: #endif /* MACH_USER_API */
54: #endif /* KERNEL_PRIVATE */
55:
56: typedef int (*PFI)();
57:
58: extern int physio(int (*strat)(), struct buf *bp, dev_t dev, int rw,
59: unsigned (*mincnt)(), struct uio *uio, int blocksize);
60:
61: extern u_short checksum_16 (u_short *wp, int shorts);
62: extern int sdchecklabel(struct disk_label *dlp, int blkno);
63:
64: int sleep __P((void *chan, int pri));
65: void wakeup __P((void *chan));
66: extern void psignal(struct proc *p, int sig);
67:
68: void timeout __P((void (*)(void *), void *arg, int ticks));
69: int untimeout __P((void (*)(void *), void *arg));
70:
71: #if KERNEL_PRIVATE && !MACH_USER_API
72:
73: extern kern_return_t vm_map_delete(vm_map_t map,
74: vm_offset_t start,
75: vm_offset_t end);
76: extern kern_return_t vm_map_pageable(vm_map_t map,
77: vm_offset_t start,
78: vm_offset_t end,
79: boolean_t new_pageable);
80:
81: #endif /* KERNEL_PRIVATE && !MACH_USER_API */
82:
83: #endif /* _DEV_LDD_PRIV_ */
84:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.