Linux I2C development
 help / color / mirror / Atom feed
From: "Wen Wang" <sickdoctor-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
To: Wolfram Sang <w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
Cc: i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org
Subject: Re: Question about i2c new style modle
Date: Sun, 12 Oct 2008 19:52:08 +0800	[thread overview]
Message-ID: <56458e0810120452n2def8400n883ad46d0440e779@mail.gmail.com> (raw)
In-Reply-To: <20081012075715.GA26683-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>


[-- Attachment #1.1: Type: text/plain, Size: 1350 bytes --]

 Hi Wolfram,

Thank you for your quick response, really appreciate.

You're saying "You supply i2c_board_info in your board init code and when
the
i2c adapter is initialized", but I'm quite sure there won't be a such
static i2c_board_info in the board init code.

And I'm just wonder if there is a dynamic detect method to go?

Here is my proposed code, can you please help to correct it if I'm wrong?

static const unsigned short normal_i2c[] = { DEVICE_ADDRESS, I2C_CLIENT_END
};
I2C_CLIENT_INSMOD(foo);

static int foo_detect(struct i2c_client *client, int kind,
                             struct i2c_board_info *info)
{
         /* Things here */
         return 0;
}

static int foo_probe(struct i2c_client *client,
                            const struct i2c_device_id *id)
{
          /* Things here */
         return 0;
}

static int foo_remove(struct i2c_client *client)
{
         /* Things here */
         return 0;
}

static const struct i2c_device_id foo_id[] = {
         { "foo", 0 },
         { }
};

static struct i2c_driver foo_driver = {
         .driver = {
                 .name = "foo",
         },
         .probe  = foo_probe,
         .remove  = foo_remove,
         .id_table = foo_id,
         .class  = I2C_CLASS_CAM_DIGITAL,
         .detect  = foo_detect,
         .address_data = &addr_data,
};

Best Regards
Wen

[-- Attachment #1.2: Type: text/html, Size: 3016 bytes --]

[-- Attachment #2: Type: text/plain, Size: 157 bytes --]

_______________________________________________
i2c mailing list
i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org
http://lists.lm-sensors.org/mailman/listinfo/i2c

  parent reply	other threads:[~2008-10-12 11:52 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2008-10-12  6:35 Question about i2c new style modle Wen Wang
     [not found] ` <56458e0810112335r529622dei4c6891465c6fdf88-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-10-12  7:57   ` Wolfram Sang
     [not found]     ` <20081012075715.GA26683-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2008-10-12 11:52       ` Wen Wang [this message]
     [not found]         ` <56458e0810120452n2def8400n883ad46d0440e779-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2008-10-12 13:00           ` Wolfram Sang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=56458e0810120452n2def8400n883ad46d0440e779@mail.gmail.com \
    --to=sickdoctor-re5jqeeqqe8avxtiumwx3w@public.gmane.org \
    --cc=i2c-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org \
    --cc=w.sang-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox