[PATCH v2] i2c: change the id to let the i2c-gpio work
From: ludovic.desroches <hidden>
Date: 2012-10-15 06:42:14
Also in:
linux-i2c
Le 10/15/2012 04:09 AM, Bo Shen a ?crit :
Hi Joachim Eastwood, On 10/13/2012 1:42, Joachim Eastwood wrote:quoted
Hi Bo Shen, On Fri, Oct 12, 2012 at 11:42 AM, Bo Shen [off-list ref] wrote:quoted
The i2c-gpio driver will turn the platform device ID to busnum. When using platfrom device ID as -1, it means dynamically assigned the busnum. When writing code, we need to make sure the busnum, and call i2c_register_board_info(int busnum, ...) to register device if using -1, we do not know the value of busnum. In order to solve this issue, set the platform device ID as a fix number Here using 0 to match the busnum used in i2c_regsiter_board_info().I have been bitten by this myself on RM9200.quoted
Signed-off-by: Bo Shen <redacted> --- Change since v1 Make the commit message more clear --- arch/arm/mach-at91/at91sam9260_devices.c | 2 +-This pattern exist in at91rm9200_devices.c, at91sam9261_devices.c, at91sam9263_devices.c and at91sam9rl_devices.c you might want to fix them as well.Thanks for your information. After I test these boards, I will send patches to fix them, while not in this patch.quoted
I assume we have the same problem if CONFIG_I2C_AT91 is set? See further down in at91sam9260_devices.c we have another: ".id = -1,"Maybe Nikolaus Voss will deal with this case.
Yes the problem is the same, I have encountered it and solved it in the same way but I was thinking there was a better way to correct it than removing dynamic id assignment. Since setting the id to a fix value is acceptable this change can be done also when using i2c-at91.
quoted
regards Joachim Eastwoodquoted
1 file changed, 1 insertion(+), 1 deletion(-)diff --git a/arch/arm/mach-at91/at91sam9260_devices.cb/arch/arm/mach-at91/at91sam9260_devices.c index 0f24cfb..805ef95 100644--- a/arch/arm/mach-at91/at91sam9260_devices.c +++ b/arch/arm/mach-at91/at91sam9260_devices.c@@ -389,7 +389,7 @@ static struct i2c_gpio_platform_data pdata = { static struct platform_device at91sam9260_twi_device = { .name = "i2c-gpio", - .id = -1, + .id = 0, .dev.platform_data = &pdata, }; --1.7.9.5 _______________________________________________ linux-arm-kernel mailing list linux-arm-kernel at lists.infradead.org http://lists.infradead.org/mailman/listinfo/linux-arm-kernel-- To unsubscribe from this list: send the line "unsubscribe linux-i2c" in the body of a message to majordomo at vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html