Merge branch 'core/iommu' into core/urgent
[linux-2.6] / arch / sparc / prom / devops_64.c
1 /*
2  * devops.c:  Device operations using the PROM.
3  *
4  * Copyright (C) 1995 David S. Miller (davem@caip.rutgers.edu)
5  * Copyright (C) 1996,1997 Jakub Jelinek (jj@sunsite.mff.cuni.cz)
6  */
7 #include <linux/types.h>
8 #include <linux/kernel.h>
9 #include <linux/sched.h>
10
11 #include <asm/openprom.h>
12 #include <asm/oplib.h>
13
14 /* Open the device described by the string 'dstr'.  Returns the handle
15  * to that device used for subsequent operations on that device.
16  * Returns 0 on failure.
17  */
18 int
19 prom_devopen(const char *dstr)
20 {
21         return p1275_cmd ("open", P1275_ARG(0,P1275_ARG_IN_STRING)|
22                                   P1275_INOUT(1,1),
23                                   dstr);
24 }
25
26 /* Close the device described by device handle 'dhandle'. */
27 int
28 prom_devclose(int dhandle)
29 {
30         p1275_cmd ("close", P1275_INOUT(1,0), dhandle);
31         return 0;
32 }
33
34 /* Seek to specified location described by 'seekhi' and 'seeklo'
35  * for device 'dhandle'.
36  */
37 void
38 prom_seek(int dhandle, unsigned int seekhi, unsigned int seeklo)
39 {
40         p1275_cmd ("seek", P1275_INOUT(3,1), dhandle, seekhi, seeklo);
41 }