1. 27 Aug, 2009 1 commit
    • Anton Vorontsov's avatar
      RTC core won't allow wakeup alarms to be set if RTC devices' parent (i.e. · bf104f71
      Anton Vorontsov authored
      i2c_client or spi_device) isn't wakeup capable.
      
      For I2C devices there is I2C_CLIENT_WAKE flag exists that we can pass via
      board info, and if set, I2C core will initialize wakeup capability.  For
      SPI devices there is no such flag at all.
      
      I believe that it's not platform code responsibility to allow or disallow
      wakeups, instead, drivers themselves should set the capability if a device
      can trigger wakeups.
      
      That's what drivers/base/power/sysfs.c says:
      
       * It is the responsibility of device drivers to enable (or disable)
       * wakeup signaling as part of changing device power states, respecting
       * the policy choices provided through the driver model.
      
      I2C and SPI RTC devices send wakeup events via interrupt lines, so we
      should set the wakeup capability if IRQ is routed.
      
      Ideally we should also check irq for wakeup capability before setting
      device's capability, i.e.
      
      	if (can_irq_wake(irq))
      		device_set_wakeup_capable(&client->dev, 1);
      
      But there is no can_irq_wake() call exist, and it is not that trivial to
      implement it for all interrupts controllers and complex/cascaded setups.
      
      drivers/base/power/sysfs.c also covers these cases:
      
       * Devices may not be able to generate wakeup events from all power
       * states.  Also, the events may be ignored in some configurations;
       * for example, they might need help from other devices that aren't
       * active
      
      So there is no guarantee that wakeup will actually work, and so I think
      there is no point in being pedantic wrt checking IRQ wakeup capability.
      Signed-off-by: default avatarAnton Vorontsov <avorontsov@ru.mvista.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: Jean Delvare <khali@linux-fr.org>
      Cc: Alessandro Zummo <a.zummo@towertech.it>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      bf104f71
  2. 02 Sep, 2009 1 commit
  3. 04 Aug, 2009 1 commit
  4. 03 Aug, 2009 1 commit
  5. 18 Aug, 2009 1 commit
  6. 29 Jun, 2009 1 commit
  7. 24 Aug, 2009 2 commits
  8. 05 Sep, 2009 1 commit
  9. 01 Jul, 2009 1 commit
  10. 29 Jun, 2009 2 commits
  11. 26 Jun, 2009 1 commit
  12. 24 Aug, 2009 1 commit
  13. 29 Jun, 2009 1 commit
  14. 26 Jun, 2009 1 commit
  15. 24 Aug, 2009 1 commit
  16. 14 Jul, 2009 1 commit
  17. 26 Jun, 2009 2 commits
  18. 25 Jul, 2009 1 commit
  19. 21 Jul, 2009 1 commit
  20. 02 Sep, 2009 5 commits
  21. 14 Aug, 2009 5 commits
  22. 24 Aug, 2009 2 commits
  23. 31 Jul, 2009 3 commits
  24. 08 Sep, 2009 1 commit
    • Anton Vorontsov's avatar
      Convert the m25p80 driver so that now it uses .id_table for device · 37b89bfa
      Anton Vorontsov authored
      matching, making it properly detect devices on OpenFirmware platforms
      (prior to this patch the driver misdetected non-JEDEC chips, seeing all
      chips as "m25p80").
      
      Also, now jedec_probe() only does jedec probing, nothing else.  If it is
      not able to detect a chip, NULL is returned and the driver fall backs to
      the information specified by the platform (platform_data, or exact ID).
      Signed-off-by: default avatarAnton Vorontsov <avorontsov@ru.mvista.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Cc: Jean Delvare <khali@linux-fr.org>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      37b89bfa
  25. 31 Jul, 2009 1 commit
    • Anton Vorontsov's avatar
      With this patch spi drivers can use standard spi_driver.id_table and · c50b748f
      Anton Vorontsov authored
      MODULE_DEVICE_TABLE() mechanisms to bind against the devices.  Just like
      we do with I2C drivers.
      
      This is useful when a single driver supports several variants of devices
      but it is not possible to detect them in run-time (like non-JEDEC chips
      probing in drivers/mtd/devices/m25p80.c), and when platform_data usage is
      overkill.
      
      This patch also makes life a lot easier on OpenFirmware platforms, since
      with OF we extensively use proper device IDs in modaliases.
      Signed-off-by: default avatarAnton Vorontsov <avorontsov@ru.mvista.com>
      Cc: David Brownell <dbrownell@users.sourceforge.net>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Grant Likely <grant.likely@secretlab.ca>
      Cc: Jean Delvare <khali@linux-fr.org>
      Cc: Ben Dooks <ben-linux@fluff.org>
      Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      c50b748f
  26. 24 Jun, 2009 1 commit