forked from Minki/linux
docs: i2c: reference simple probes
Instead of documenting old-style probes, reference "simple probes" and document the i2c_match_id function. This might help reduce the use of two-argument probes in new code. Signed-off-by: Stephen Kitt <steve@sk2.org> Signed-off-by: Wolfram Sang <wsa@kernel.org>
This commit is contained in:
parent
43bf42ff47
commit
32d4536133
@ -46,7 +46,7 @@ driver model device node, and its I2C address.
|
||||
},
|
||||
|
||||
.id_table = foo_idtable,
|
||||
.probe = foo_probe,
|
||||
.probe_new = foo_probe,
|
||||
.remove = foo_remove,
|
||||
/* if device autodetection is needed: */
|
||||
.class = I2C_CLASS_SOMETHING,
|
||||
@ -155,8 +155,7 @@ those devices, and a remove() method to unbind.
|
||||
|
||||
::
|
||||
|
||||
static int foo_probe(struct i2c_client *client,
|
||||
const struct i2c_device_id *id);
|
||||
static int foo_probe(struct i2c_client *client);
|
||||
static int foo_remove(struct i2c_client *client);
|
||||
|
||||
Remember that the i2c_driver does not create those client handles. The
|
||||
@ -165,8 +164,12 @@ handle may be used during foo_probe(). If foo_probe() reports success
|
||||
foo_remove() returns. That binding model is used by most Linux drivers.
|
||||
|
||||
The probe function is called when an entry in the id_table name field
|
||||
matches the device's name. It is passed the entry that was matched so
|
||||
the driver knows which one in the table matched.
|
||||
matches the device's name. If the probe function needs that entry, it
|
||||
can retrieve it using
|
||||
|
||||
::
|
||||
|
||||
const struct i2c_device_id *id = i2c_match_id(foo_idtable, client);
|
||||
|
||||
|
||||
Device Creation
|
||||
|
Loading…
Reference in New Issue
Block a user