1 PROBE(9E) Driver Entry Points PROBE(9E)
2
3
4
5 NAME
6 probe - determine if a non-self-identifying device is present
7
8 SYNOPSIS
9 #include <sys/conf.h>
10 #include <sys/ddi.h>
11 #include <sys/sunddi.h>
12
13
14
15 static intprefixprobe(dev_info_t *dip);
16
17
18 INTERFACE LEVEL
19 Solaris DDI specific (Solaris DDI). This entry point is required for
20 non-self-identifying devices. You must write it for such devices. For
21 self-identifying devices, nulldev(9F) should be specified in the
22 dev_ops(9S) structure if a probe routine is not necessary.
23
24 ARGUMENTS
25 dip
26 Pointer to the device's dev_info structure.
27
28
29 DESCRIPTION
30 probe() determines whether the device corresponding to dip actually
31 exists and is a valid device for this driver. probe() is called after
32 identify(9E) and before attach(9E) for a given dip. For example, the
33 probe() routine can map the device registers using ddi_map_regs(9F)
34 then attempt to access the hardware using ddi_peek(9F) or ddi_poke(9F)
35 and determine if the device exists. Then the device registers should
67
68 DDI_PROBE_DONTCARE
69 If the probe was unsuccessful, yet attach(9E)
70 should still be called.
71
72
73 DDI_PROBE_PARTIAL
74 If the instance is not present now, but may be
75 present in the future.
76
77
78 SEE ALSO
79 attach(9E), identify(9E), ddi_dev_is_sid(9F), ddi_map_regs(9F),
80 ddi_peek(9F), ddi_poke(9F), nulldev(9F), dev_ops(9S)
81
82
83 Writing Device Drivers
84
85
86
87 November 18, 1992 PROBE(9E)
|
1 PROBE(9E) Driver Entry Points PROBE(9E)
2
3
4
5 NAME
6 probe - determine if a non-self-identifying device is present
7
8 SYNOPSIS
9 #include <sys/conf.h>
10 #include <sys/ddi.h>
11 #include <sys/sunddi.h>
12
13
14
15 static int prefixprobe(dev_info_t *dip);
16
17
18 INTERFACE LEVEL
19 Solaris DDI specific (Solaris DDI). This entry point is required for
20 non-self-identifying devices. You must write it for such devices. For
21 self-identifying devices, nulldev(9F) should be specified in the
22 dev_ops(9S) structure if a probe routine is not necessary.
23
24 ARGUMENTS
25 dip
26 Pointer to the device's dev_info structure.
27
28
29 DESCRIPTION
30 probe() determines whether the device corresponding to dip actually
31 exists and is a valid device for this driver. probe() is called after
32 identify(9E) and before attach(9E) for a given dip. For example, the
33 probe() routine can map the device registers using ddi_map_regs(9F)
34 then attempt to access the hardware using ddi_peek(9F) or ddi_poke(9F)
35 and determine if the device exists. Then the device registers should
67
68 DDI_PROBE_DONTCARE
69 If the probe was unsuccessful, yet attach(9E)
70 should still be called.
71
72
73 DDI_PROBE_PARTIAL
74 If the instance is not present now, but may be
75 present in the future.
76
77
78 SEE ALSO
79 attach(9E), identify(9E), ddi_dev_is_sid(9F), ddi_map_regs(9F),
80 ddi_peek(9F), ddi_poke(9F), nulldev(9F), dev_ops(9S)
81
82
83 Writing Device Drivers
84
85
86
87 February 15, 2020 PROBE(9E)
|