013-crisdriver-sysfs.patch 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. Index: linux-2.6.25.16/arch/cris/arch-v10/drivers/ds1302.c
  2. ===================================================================
  3. --- linux-2.6.25.16.o/arch/cris/arch-v10/drivers/ds1302.c 2008-10-26 15:54:02.000000000 +0100
  4. +++ linux-2.6.25.16/arch/cris/arch-v10/drivers/ds1302.c 2008-10-26 15:59:37.000000000 +0100
  5. @@ -21,6 +21,7 @@
  6. #include <linux/delay.h>
  7. #include <linux/bcd.h>
  8. #include <linux/capability.h>
  9. +#include <linux/device.h>
  10. #include <asm/uaccess.h>
  11. #include <asm/system.h>
  12. @@ -489,6 +490,10 @@
  13. return 0;
  14. }
  15. +#ifdef CONFIG_SYSFS
  16. +static struct class *rtc_class;
  17. +#endif
  18. +
  19. static int __init ds1302_register(void)
  20. {
  21. ds1302_init();
  22. @@ -497,6 +502,12 @@
  23. ds1302_name, RTC_MAJOR_NR);
  24. return -1;
  25. }
  26. + #ifdef CONFIG_SYSFS
  27. + rtc_class = class_create(THIS_MODULE, "rtc");
  28. + class_device_create(rtc_class, NULL, MKDEV(RTC_MAJOR_NR, 0),
  29. + NULL, "rtc");
  30. + #endif
  31. +
  32. return 0;
  33. }
  34. Index: linux-2.6.25.16/arch/cris/arch-v10/drivers/gpio.c
  35. ===================================================================
  36. --- linux-2.6.25.16.o/arch/cris/arch-v10/drivers/gpio.c 2008-10-26 15:56:28.000000000 +0100
  37. +++ linux-2.6.25.16/arch/cris/arch-v10/drivers/gpio.c 2008-10-26 15:57:41.000000000 +0100
  38. @@ -20,6 +20,7 @@
  39. #include <linux/poll.h>
  40. #include <linux/init.h>
  41. #include <linux/interrupt.h>
  42. +#include <linux/device.h>
  43. #include <asm/etraxgpio.h>
  44. #include <asm/arch/svinto.h>
  45. @@ -768,6 +769,10 @@
  46. /* main driver initialization routine, called from mem.c */
  47. +#ifdef CONFIG_SYSFS
  48. +static struct class *gpio_class;
  49. +#endif
  50. +
  51. static int __init gpio_init(void)
  52. {
  53. int res;
  54. @@ -781,6 +786,13 @@
  55. return res;
  56. }
  57. +#ifdef CONFIG_SYSFS
  58. + gpio_class = class_create(THIS_MODULE, "gpio");
  59. + class_device_create(gpio_class, NULL, MKDEV(GPIO_MAJOR, 0), NULL, "gpioa");
  60. + class_device_create(gpio_class, NULL, MKDEV(GPIO_MAJOR, 1), NULL, "gpiob");
  61. + class_device_create(gpio_class, NULL, MKDEV(GPIO_MAJOR, 2), NULL, "leds");
  62. + class_device_create(gpio_class, NULL, MKDEV(GPIO_MAJOR, 3), NULL, "gpiog");
  63. +#endif
  64. /* Clear all leds */
  65. #if defined (CONFIG_ETRAX_CSP0_LEDS) || defined (CONFIG_ETRAX_PA_LEDS) || defined (CONFIG_ETRAX_PB_LEDS)
  66. CRIS_LED_NETWORK_SET(0);