On Wed, 4 Jul 2018, Andy Shevchenko wrote:
On Tue, Jul 3, 2018 at 8:41 AM, Nikolaus Voss
<nikolaus.voss@xxxxxxxxxxxxxxxxxxxxx> wrote:
Use device_get_match_data API to simplify access to driver data.
..._data()
But. You actually don't use it below.
It is used, see below.
Let acpi_device_id table entries point to the same driver data as
of_device_id table entries and uniquify access to driver data by using
device_get_match_data API.
#include <linux/acpi.h>
#include <linux/i2c.h>
#include <linux/iio/iio.h>
+#include <linux/of_device.h>
(linux/property.h)
+ match = of_device_get_match_data(&client->dev);
+ if (!match)
+ match = acpi_device_get_match_data(&client->dev);
What I meant is to simply call
match = device_get_match_data(...);
Ok, this works, thank you. I will prepare a new patch version.
This is where the match data is used:
+ if (match)
+ strlcpy(client->name, match, sizeof(client->name));
In this driver, match data is used to map DT compatible strings/ ACPI CIDs
to the key strings (.._ACCEL_DEV_NAME) which are used to identify the
actual device (and are also used in i2c_device_id table).
Niko
--
To unsubscribe from this list: send the line "unsubscribe linux-iio" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html