1. 23 11月, 2009 1 次提交
    • C
      omap: GPIO module enable/disable · 058af1ea
      Charulatha V 提交于
      This patch disables a GPIO module when all pins of a GPIO
      module are inactive (clock gating forced at module level) and
      enables the module when any gpio in the module is requested.
      
      The module is enabled only when "mod_usage" indicates that no GPIO
      in that  module is currently active and the GPIO being requested
      is the 1st one to be active in that module.
      
      Each module would be disabled in omap_gpio_free() API when all
      GPIOs in a particular module becomes inactive. The module is
      re-enabled in omap_gpio_request() API when a GPIO is requested
      from the module that was previously disabled.
      
      Since individual GPIO's bookkeeping is added in this patch
      via "mod_usage", the same is used in omap_set_gpio_debounce()
      & omap_set_gpio_debounce_time() APIs to ensure that the gpio being
      used is actually "requested" prior to being used (Nishant Menon's
      <nm@ti.comSuggestion)
      
      GPIO module level details are specific to hardware and hence
      introducing this patch in low level layer (plat-omap/gpio.c)
      Signed-off-by: NCharulatha V <charu@ti.com>
      Acked-by: NNishanth Menon <nm@ti.com>
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      058af1ea
  2. 19 11月, 2009 1 次提交
  3. 12 11月, 2009 1 次提交
  4. 20 10月, 2009 1 次提交
  5. 08 10月, 2009 3 次提交
  6. 25 9月, 2009 1 次提交
  7. 29 8月, 2009 3 次提交
  8. 06 8月, 2009 1 次提交
  9. 05 8月, 2009 1 次提交
  10. 28 7月, 2009 1 次提交
  11. 22 7月, 2009 1 次提交
  12. 23 6月, 2009 1 次提交
  13. 29 5月, 2009 1 次提交
  14. 16 5月, 2009 1 次提交
  15. 24 4月, 2009 2 次提交
  16. 24 3月, 2009 1 次提交
  17. 15 1月, 2009 1 次提交
    • T
      ARM: OMAP: Fix gpio.c compile on 15xx with CONFIG_DEBUGFS · 3a26e331
      Tony Lindgren 提交于
      There are no wakeup registers on 15xx, and suspend_wakeup
      does not exist in the struct gpio_bank.
      
      Without this fix we'll get "arch/arm/plat-omap/gpio.c:1792:
      error: 'struct gpio_bank' has no member named 'suspend_wakeup'"
      as noted by Russell King.
      
      Note that the ifdefs will be cleaned up once the omap gpio
      code gets split into omap1 and omap2 specific parts.
      Signed-off-by: NTony Lindgren <tony@atomide.com>
      
      
      3a26e331
  18. 11 12月, 2008 7 次提交
  19. 27 11月, 2008 1 次提交
  20. 09 10月, 2008 1 次提交
  21. 06 9月, 2008 2 次提交
  22. 03 9月, 2008 1 次提交
  23. 07 8月, 2008 2 次提交
  24. 27 7月, 2008 1 次提交
  25. 26 7月, 2008 1 次提交
    • D
      gpio: sysfs interface · d8f388d8
      David Brownell 提交于
      This adds a simple sysfs interface for GPIOs.
      
          /sys/class/gpio
          	/export ... asks the kernel to export a GPIO to userspace
          	/unexport ... to return a GPIO to the kernel
              /gpioN ... for each exported GPIO #N
      	    /value ... always readable, writes fail for input GPIOs
      	    /direction ... r/w as: in, out (default low); write high, low
      	/gpiochipN ... for each gpiochip; #N is its first GPIO
      	    /base ... (r/o) same as N
      	    /label ... (r/o) descriptive, not necessarily unique
      	    /ngpio ... (r/o) number of GPIOs; numbered N .. N+(ngpio - 1)
      
      GPIOs claimed by kernel code may be exported by its owner using a new
      gpio_export() call, which should be most useful for driver debugging.
      Such exports may optionally be done without a "direction" attribute.
      
      Userspace may ask to take over a GPIO by writing to a sysfs control file,
      helping to cope with incomplete board support or other "one-off"
      requirements that don't merit full kernel support:
      
        echo 23 > /sys/class/gpio/export
      	... will gpio_request(23, "sysfs") and gpio_export(23);
      	use /sys/class/gpio/gpio-23/direction to (re)configure it,
      	when that GPIO can be used as both input and output.
        echo 23 > /sys/class/gpio/unexport
      	... will gpio_free(23), when it was exported as above
      
      The extra D-space footprint is a few hundred bytes, except for the sysfs
      resources associated with each exported GPIO.  The additional I-space
      footprint is about two thirds of the current size of gpiolib (!).  Since
      no /dev node creation is involved, no "udev" support is needed.
      
      Related changes:
      
        * This adds a device pointer to "struct gpio_chip".  When GPIO
          providers initialize that, sysfs gpio class devices become children of
          that device instead of being "virtual" devices.
      
        * The (few) gpio_chip providers which have such a device node have
          been updated.
      
        * Some gpio_chip drivers also needed to update their module "owner"
          field ...  for which missing kerneldoc was added.
      
        * Some gpio_chips don't support input GPIOs.  Those GPIOs are now
          flagged appropriately when the chip is registered.
      
      Based on previous patches, and discussion both on and off LKML.
      
      A Documentation/ABI/testing/sysfs-gpio update is ready to submit once this
      merges to mainline.
      
      [akpm@linux-foundation.org: a few maintenance build fixes]
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Cc: Guennadi Liakhovetski <g.liakhovetski@pengutronix.de>
      Cc: Greg KH <greg@kroah.com>
      Cc: Kay Sievers <kay.sievers@vrfy.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      d8f388d8
  26. 15 4月, 2008 2 次提交