022-nas100d_i2c_gpio_driver_support.patch 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. diff --git a/arch/arm/mach-ixp4xx/nas100d-setup.c b/arch/arm/mach-ixp4xx/nas100d-setup.c
  2. index 78a1741..54d884f 100644
  3. --- a/arch/arm/mach-ixp4xx/nas100d-setup.c
  4. +++ b/arch/arm/mach-ixp4xx/nas100d-setup.c
  5. @@ -16,6 +16,7 @@
  6. #include <linux/serial.h>
  7. #include <linux/serial_8250.h>
  8. #include <linux/leds.h>
  9. +#include <linux/i2c-gpio.h>
  10. #include <asm/mach-types.h>
  11. #include <asm/mach/arch.h>
  12. @@ -68,16 +69,17 @@ static struct platform_device nas100d_leds = {
  13. };
  14. #endif
  15. -static struct ixp4xx_i2c_pins nas100d_i2c_gpio_pins = {
  16. +static struct i2c_gpio_platform_data nas100d_i2c_gpio_data = {
  17. .sda_pin = NAS100D_SDA_PIN,
  18. .scl_pin = NAS100D_SCL_PIN,
  19. };
  20. -static struct platform_device nas100d_i2c_controller = {
  21. - .name = "IXP4XX-I2C",
  22. +static struct platform_device nas100d_i2c_gpio = {
  23. + .name = "i2c-gpio",
  24. .id = 0,
  25. - .dev.platform_data = &nas100d_i2c_gpio_pins,
  26. - .num_resources = 0,
  27. + .dev = {
  28. + .platform_data = &nas100d_i2c_gpio_data,
  29. + },
  30. };
  31. static struct resource nas100d_uart_resources[] = {
  32. @@ -124,7 +126,7 @@ static struct platform_device nas100d_uart = {
  33. };
  34. static struct platform_device *nas100d_devices[] __initdata = {
  35. - &nas100d_i2c_controller,
  36. + &nas100d_i2c_gpio,
  37. &nas100d_flash,
  38. #ifdef CONFIG_LEDS_IXP4XX
  39. &nas100d_leds,