Subject: Re: arch_initcall time

From: Olof Johansson <[email-masked]>
Date: Mon, 18 Feb 2008 12:42:40 -0600

On Mon, Feb 18, 2008 at 11:32:14AM -0700, Grant Likely wrote:
> On Feb 18, 2008 11:31 AM, Grant Likely <[email-masked]> wrote:
> > On Feb 18, 2008 11:28 AM, Sean MacLennan <[email-masked]> wrote:
> > > I need to call i2c_register_board_info for the new i2c style ad7414
> > > driver. This needs to be called at arch initcall time. Currently I just
> > > do this:
> > >
> > > static int __init warp_arch_init(void)
> > > {
> > >         i2c_register_board_info(0, warp_i2c_info, ARRAY_SIZE(warp_i2c_info));
> > >         return 0;
> > > }
> > > arch_initcall(warp_arch_init);
> >
> > Yes, this is the right thing to do, but use machine_arch_initcall()
> > instead so that it doesn't get called if it is not your board.
> 
> That being said, I believe there is infrastructure to handle the
> creation of your i2c board info from the device tree.  Your i2c board
> info should not be hard coded.

Jon Smirl's patches? Not yet, unfortunately. It didn't make .25, but
maybe for .26.

(I will need to do it specifically on my platform, like fsl_soc already
does, as a stopgap until then).

-Olof