Commit 2f88b705 authored by Sebastian Reichel's avatar Sebastian Reichel

Merge 'i2c/client_device_id_helper-immutable'

Merge immutable branch adding 'i2c_client_get_device_id()' function,
so that drivers can easily be converted to use i2c_driver::probe_new.
Signed-off-by: default avatarSebastian Reichel <sebastian.reichel@collabora.com>
parents 332d7d0c 66223373
...@@ -2236,6 +2236,20 @@ int i2c_get_device_id(const struct i2c_client *client, ...@@ -2236,6 +2236,20 @@ int i2c_get_device_id(const struct i2c_client *client,
} }
EXPORT_SYMBOL_GPL(i2c_get_device_id); EXPORT_SYMBOL_GPL(i2c_get_device_id);
/**
* i2c_client_get_device_id - get the driver match table entry of a device
* @client: the device to query. The device must be bound to a driver
*
* Returns a pointer to the matching entry if found, NULL otherwise.
*/
const struct i2c_device_id *i2c_client_get_device_id(const struct i2c_client *client)
{
const struct i2c_driver *drv = to_i2c_driver(client->dev.driver);
return i2c_match_id(drv->id_table, client);
}
EXPORT_SYMBOL_GPL(i2c_client_get_device_id);
/* ---------------------------------------------------- /* ----------------------------------------------------
* the i2c address scanning function * the i2c address scanning function
* Will not work for 10-bit addresses! * Will not work for 10-bit addresses!
......
...@@ -189,6 +189,7 @@ s32 i2c_smbus_read_i2c_block_data_or_emulated(const struct i2c_client *client, ...@@ -189,6 +189,7 @@ s32 i2c_smbus_read_i2c_block_data_or_emulated(const struct i2c_client *client,
u8 *values); u8 *values);
int i2c_get_device_id(const struct i2c_client *client, int i2c_get_device_id(const struct i2c_client *client,
struct i2c_device_identity *id); struct i2c_device_identity *id);
const struct i2c_device_id *i2c_client_get_device_id(const struct i2c_client *client);
#endif /* I2C */ #endif /* I2C */
/** /**
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment