Merge commit '9276b3991ba20d5a5660887ba81b0bc7bed25a0c'
[unleashed.git] / share / man / man9f / ddi_dev_regsize.9f
blob43fe73396b178945c079f5bca5fb873669692d05
1 '\" te
2 .\" Copyright (c) 2006, Sun Microsystems, Inc.
3 .\" The contents of this file are subject to the terms of the Common Development and Distribution License (the "License").  You may not use this file except in compliance with the License.
4 .\" You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE or http://www.opensolaris.org/os/licensing.  See the License for the specific language governing permissions and limitations under the License.
5 .\" When distributing Covered Code, include this CDDL HEADER in each file and include the License file at usr/src/OPENSOLARIS.LICENSE.  If applicable, add the following below this CDDL HEADER, with the fields enclosed by brackets "[]" replaced with your own identifying information: Portions Copyright [yyyy] [name of copyright owner]
6 .TH DDI_DEV_REGSIZE 9F "Jan 16, 2006"
7 .SH NAME
8 ddi_dev_regsize \- return the size of a device's register
9 .SH SYNOPSIS
10 .LP
11 .nf
12 #include <sys/conf.h>
13 #include <sys/ddi.h>
14 #include <sys/sunddi.h>
18 \fBint\fR \fBddi_dev_regsize\fR(\fBdev_info_t *\fR\fIdip\fR, \fBuint_t\fR \fIrnumber\fR, \fBoff_t *\fR\fIresultp\fR);
19 .fi
21 .SH INTERFACE LEVEL
22 .sp
23 .LP
24 Solaris DDI specific (Solaris DDI).
25 .SH PARAMETERS
26 .sp
27 .ne 2
28 .na
29 \fB\fIdip\fR\fR
30 .ad
31 .RS 11n
32 A pointer to the device's \fBdev_info\fR structure.
33 .RE
35 .sp
36 .ne 2
37 .na
38 \fB\fIrnumber\fR\fR
39 .ad
40 .RS 11n
41 The ordinal register number. Device registers are associated with a
42 \fBdev_info\fR and are enumerated in arbitrary sets from \fB0\fR on up. The
43 number of registers a device has can be determined from a call to
44 \fBddi_dev_nregs\fR(9F).
45 .RE
47 .sp
48 .ne 2
49 .na
50 \fB\fIresultp\fR\fR
51 .ad
52 .RS 11n
53 Pointer to an integer that holds the size, in bytes, of the described register
54 (if it exists).
55 .RE
57 .SH DESCRIPTION
58 .sp
59 .LP
60 The \fBddi_dev_regsize()\fR function returns the size, in bytes, of the device
61 register specified by \fIdip\fR and \fIrnumber\fR. This is useful when, for
62 example, one of the registers is a frame buffer with a varying size known only
63 to its proms.
64 .SH RETURN VALUES
65 .sp
66 .LP
67 The \fBddi_dev_regsize()\fR function returns:
68 .sp
69 .ne 2
70 .na
71 \fB\fBDDI_SUCCESS\fR\fR
72 .ad
73 .RS 15n
74 A successful return. The size, in bytes, of the specified register, is set in
75 \fIresultp\fR.
76 .RE
78 .sp
79 .ne 2
80 .na
81 \fB\fBDDI_FAILURE\fR\fR
82 .ad
83 .RS 15n
84 An invalid (nonexistent) register number was specified.
85 .RE
87 .SH CONTEXT
88 .sp
89 .LP
90 The \fBddi_dev_regsize()\fR function can be called from user, interrupt, or
91 kernel context.
92 .SH SEE ALSO
93 .sp
94 .LP
95 \fBddi_dev_nintrs\fR(9F), \fBddi_dev_nregs\fR(9F)
96 .sp
97 .LP
98 \fIWriting Device Drivers\fR