aboutsummaryrefslogtreecommitdiff
path: root/ja_JP.eucJP/man/man9/device_add_child.9
blob: 012111ccaf6286cd04630d68733df00b90b3e42d (plain) (blame)
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
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
.\" -*- nroff -*-
.\"
.\" Copyright (c) 1998 Doug Rabson
.\"
.\" All rights reserved.
.\"
.\" This program is free software.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE DEVELOPERS ``AS IS'' AND ANY EXPRESS OR
.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
.\" IN NO EVENT SHALL THE DEVELOPERS BE LIABLE FOR ANY DIRECT, INDIRECT,
.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.\" $FreeBSD: src/share/man/man9/device_add_child.9,v 1.8.2.1 2000/05/09 14:12:53 sheldonh Exp $
.\"
.Dd June 16, 1998
.Dt DEVICE_ADD_CHILD 9
.Os FreeBSD
.Sh 名称
.Nm device_add_child ,
.Nm device_add_child_ordered
.Nd 存在しているデバイスの子として新しいデバイスを追加
.Sh 書式
.Fd #include <sys/param.h>
.Fd #include <sys/bus.h>
.Ft device_t
.Fn device_add_child "device_t dev" "const char *name" "int unit"
.Ft device_t
.Fn device_add_child_ordered "device_t dev" "int order" "const char *name" "int unit"
.Sh 解説
.Pp
.Fa dev
の新しい子デバイスを追加します。
.Fa name
および
.Fa unit
引数はデバイスの名前とユニット番号を指定します。
名前が不明の場合には、呼び出し側は
.Dv NULL
を渡すべきです。
ユニット番号が不明の場合には、呼び出し側は
.Dv -1
を渡すべきで、システムは次の使用可能なユニット番号を選択するでしょう。
.Pp
デバイスの名前は、どのドライバがそのデバイスに適切であるかを
決定するために使用されます。
名前が指定されている場合には、その名前のドライバのみがプローブされます。
名前が与えられなかった場合には、
認識しているバスの全てのドライバがプローブされます。
.Pp
これは、デバイスインスタンスを独自に識別することができるバス (PCI 等) が、
個々のドライバが個々のデバイスインスタンスに適合しているか
チェック可能にします。
供給されたプローブヒントに依存して、
たった 1 つのドライバがデバイスをプローブ可能なバスでは、
ドライバの名前はデバイスの名前として指定されるべきです。
.Pp
通常、ユニット番号はシステムによって時動的に選択されますので、ユニット番号は
.Dv -1
が与えられるべきです。
指定のユニット番号が希望された時に (例えば、ハードウェアの一部分を
あらかじめ設定されたユニット番号に結びつけるため)、unit は渡されるべきです。
指定されたユニット番号が既に割り当てられていた場合には、新しいユニット番号が
割り当てられ、診断メッセージが表示されます。
.Pp
指定の順序でプローブされなければならないバス (例えば、ISA バス用の幾つかの
デバイスは関連の無いドライバのプローブの試みの失敗に敏感で、それゆえ
最初にプローブされなければならない) にアタッチされたデバイスの場合には、
.Xr device_add_child_ordered 9
の
.Fa order
引数が半順序を指定するために使用されるべきです。
新しいデバイスは、
既存のより大きい順序を持つすべてのデバイスの前に追加されます。
.Xr device_add_child 9
が使用された場合には、順序が 0 であるとして新しい子が追加されます。
.Sh 戻り値
成功時には新しいデバイスが、そうでなければ NULL が返されます。
.Sh 関連項目
.Xr device 9
.Sh 作者
このマニュアルページは
.An Doug Rabson
が書きました。