lkml.org 
[lkml]   [2014]   [Apr]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: How to pass I2C platform_data under ACPI
On Thu, Apr 03, 2014 at 08:10:40AM +0000, Pallala, Ramakrishna wrote:
> Hi All,
>
> I am trying to enable a i2c client driver under ACPI. The device is being enumerated behind adapter device and I am getting IRQ resource as well.
>
> The problem I have now is, how do I pass the platform data to driver?
>
> struct i2c_board_info {
> char type[I2C_NAME_SIZE];
> unsigned short flags;
> unsigned short addr;
> void *platform_data; ===========> how can I initialize this filed.
> struct dev_archdata *archdata;
> struct device_node *of_node;
> struct acpi_dev_node acpi_node;
> int irq;
> };
>
> In non ACPI environment I used to initialize the platform_data under
> board or platforms files. Under ACPI how do I do that?

If you can't extract that information from ACPI namespace, then one option
is to pass platform data along with the device ACPI ID:

static const struct acpi_device_id my_acpi_match[] = {
{ "MYID0001", (kernel_ulong_t)&my_platform_data }
...
{ },
};

static struct i2c_driver i2c_hid_driver = {
.driver = {
...
.acpi_match_table = ACPI_PTR(my_acpi_match),
},
...


\
 
 \ /
  Last update: 2014-04-04 12:41    [W:0.472 / U:0.332 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site