Hi Jonathan, On Tue, Feb 18, 2014 at 11:40 AM, Jonathan Cameron <jic23@xxxxxxxxxx> wrote: > On 14/02/14 14:25, Marek Belisko wrote: >> >> Signed-off-by: Marek Belisko <marek@xxxxxxxxxxxxx> > > I wonder how this got missed. However, for those data elements to be > useful, you will > need to read them somewhere in the driver I think.... (if there is any magic > that puts this in the relevant i2c locations then point it out to me!) There is a table called hmc5843_chip_info_tbl which contains entries for all models which this driver can handle. And magic is that correct model variant is set probe function: line: idata->variant = &hmc5843_chip_info_tbl[id->driver_data]; (id->driver_data contains model value). > >> --- >> drivers/staging/iio/magnetometer/hmc5843.c | 4 +++- >> 1 file changed, 3 insertions(+), 1 deletion(-) >> >> diff --git a/drivers/staging/iio/magnetometer/hmc5843.c >> b/drivers/staging/iio/magnetometer/hmc5843.c >> index d4f4dd9..f595fdc 100644 >> --- a/drivers/staging/iio/magnetometer/hmc5843.c >> +++ b/drivers/staging/iio/magnetometer/hmc5843.c >> @@ -630,7 +630,9 @@ static const struct i2c_device_id hmc5843_id[] = { >> MODULE_DEVICE_TABLE(i2c, hmc5843_id); >> >> static const struct of_device_id hmc5843_of_match[] = { >> - { .compatible = "honeywell,hmc5843" }, >> + { .compatible = "honeywell,hmc5843", .data = (void *)HMC5843_ID }, >> + { .compatible = "honeywell,hmc5883", .data = (void *)HMC5883_ID }, >> + { .compatible = "honeywell,hmc5883l", .data = (void *)HMC5883L_ID >> }, >> {} >> }; >> MODULE_DEVICE_TABLE(of, hmc5843_of_match); >> > BR, marek -- as simple and primitive as possible ------------------------------------------------- Marek Belisko - OPEN-NANDRA Freelance Developer Ruska Nova Ves 219 | Presov, 08005 Slovak Republic Tel: +421 915 052 184 skype: marekwhite twitter: #opennandra web: http://open-nandra.com _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel