mirror of
https://github.com/torvalds/linux.git
synced 2026-03-08 03:24:45 +01:00
media: i2c: mt9p031: fix mbus code initialization
The mediabus code is device dependent, but the probe() function
thought that device_get_match_data() would return the code directly,
when in fact it returned a pointer to a struct mt9p031_model_info.
As a result, the initial mbus code was garbage.
Tested with a BeagleBoard xM and a Leopard Imaging LI-5M03 sensor board.
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Tested-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Fixes: a80b1bbff8 ("media: mt9p031: Refactor format handling for different sensor models")
Cc: stable@vger.kernel.org
This commit is contained in:
parent
4010eef01d
commit
075710b670
1 changed files with 3 additions and 1 deletions
|
|
@ -1093,6 +1093,7 @@ static int mt9p031_parse_properties(struct mt9p031 *mt9p031, struct device *dev)
|
|||
static int mt9p031_probe(struct i2c_client *client)
|
||||
{
|
||||
struct i2c_adapter *adapter = client->adapter;
|
||||
const struct mt9p031_model_info *info;
|
||||
struct mt9p031 *mt9p031;
|
||||
unsigned int i;
|
||||
int ret;
|
||||
|
|
@ -1113,7 +1114,8 @@ static int mt9p031_probe(struct i2c_client *client)
|
|||
|
||||
mt9p031->output_control = MT9P031_OUTPUT_CONTROL_DEF;
|
||||
mt9p031->mode2 = MT9P031_READ_MODE_2_ROW_BLC;
|
||||
mt9p031->code = (uintptr_t)device_get_match_data(&client->dev);
|
||||
info = device_get_match_data(&client->dev);
|
||||
mt9p031->code = info->code;
|
||||
|
||||
mt9p031->regulators[0].supply = "vdd";
|
||||
mt9p031->regulators[1].supply = "vdd_io";
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue