diff options
author | Ben Nizette <bn@niasdigital.com> | 2008-02-07 15:28:57 +1100 |
---|---|---|
committer | Haavard Skinnemoen <haavard.skinnemoen@atmel.com> | 2008-04-19 20:40:06 -0400 |
commit | 040b28fc0a69281a46adcebd6b31dd74da4a8d49 (patch) | |
tree | 9ce41af956c245292765f7ea5ece3ac7e9230b9b /arch | |
parent | e573ebb0326f2f4a29ee2bd143bfc88ab0332926 (diff) | |
download | linux-3.10-040b28fc0a69281a46adcebd6b31dd74da4a8d49.tar.gz linux-3.10-040b28fc0a69281a46adcebd6b31dd74da4a8d49.tar.bz2 linux-3.10-040b28fc0a69281a46adcebd6b31dd74da4a8d49.zip |
avr32: pass i2c board info through at32_add_device_twi
New-style I2C drivers require that motherboard-mounted I2C devices are
registered with the I2C core, typically at arch_initcall time. This
can be done nice and neat by passing the struct i2c_board_info[]
through at32_add_device_twi just like we do for the SPI board info.
While we've got the hood up, remove a duplicate declaration of
at32_add_device_twi() in board.h.
[hskinnemoen@atmel.com: add missing i2c_board_info forward-declaration]
Signed-Off-By: Ben Nizette <bn@niasdigital.com>
Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/avr32/mach-at32ap/at32ap700x.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/arch/avr32/mach-at32ap/at32ap700x.c b/arch/avr32/mach-at32ap/at32ap700x.c index cb47afc9fff..6302bfd5851 100644 --- a/arch/avr32/mach-at32ap/at32ap700x.c +++ b/arch/avr32/mach-at32ap/at32ap700x.c @@ -990,7 +990,9 @@ static struct clk atmel_twi0_pclk = { .index = 2, }; -struct platform_device *__init at32_add_device_twi(unsigned int id) +struct platform_device *__init at32_add_device_twi(unsigned int id, + struct i2c_board_info *b, + unsigned int n) { struct platform_device *pdev; @@ -1010,6 +1012,9 @@ struct platform_device *__init at32_add_device_twi(unsigned int id) atmel_twi0_pclk.dev = &pdev->dev; + if (b) + i2c_register_board_info(id, b, n); + platform_device_add(pdev); return pdev; |