On Mon, 2008-10-13 at 11:31 -0500, Scott Wood wrote:
On Mon, Oct 13, 2008 at 02:01:55PM +0200, Joakim Tjernlund wrote:
quoted
Secondly i2c, I have this in my platform driver:
static struct i2c_board_info __initdata tmcu_i2c_devices[] = {
{ I2C_BOARD_INFO("rtc-ds1307", 0x68),
.type = "ds1337",
},
};
int __init tmcu_i2c_board_devs(void)
{
int ret;
ret = i2c_register_board_info(0, tmcu_i2c_devices,
ARRAY_SIZE(tmcu_i2c_devices));
return ret;
}
arch_initcall(tmcu_i2c_board_devs);
i2c-mpc.c now registers as a dynamically-numbered bus; you need to either
use the device tree, or call i2c_new_device().
-Scott
Thanks, but is this really so? Reading include/linux/i2c.h makes me
wonder if not the i2c_register_board_info() should still work.
Calling i2c_new_device() from an initcall() procedure does not
seem easy/possible, you need the adapter to do that. Maybe I just
missing something obvious?
Jocke