1. 11 Dec, 2009 2 commits
  2. 04 Dec, 2009 2 commits
  3. 30 Oct, 2009 7 commits
  4. 14 Oct, 2009 1 commit
  5. 01 Oct, 2009 4 commits
  6. 23 Sep, 2009 1 commit
    • Daniel Glöckner's avatar
      gpiolib: allow poll() on value · ff77c352
      Daniel Glöckner authored
      
      
      Many gpio chips allow to generate interrupts when the value of a pin
      changes.  This patch gives usermode application the opportunity to make
      use of this feature by calling poll(2) on the /sys/class/gpio/gpioN/value
      sysfs file.  The edge to trigger can be set in the edge file in the same
      directory.  Possible values are "none", "rising", "falling", and "both".
      
      Using level triggers is not possible with current sysfs since nothing
      changes the GPIO value (and the IRQ keeps triggering).  Edge triggering
      will "just work".  Note that if there was an event between read() and
      poll(), the poll() returns immediately.
      
      Also note that this version only supports true GPIO interrupts.  Some
      later patch might be able to synthesize this behavior by timer-driven
      polling; some systems seem to need that.
      
      [dbrownell@users.sourceforge.net: align ids to 16 bit ids; whitespace]
      Signed-off-by: default avatarDaniel Glöckner <dg@emlix.com>
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      ff77c352
  7. 09 Sep, 2009 1 commit
  8. 28 Aug, 2009 5 commits
  9. 01 Aug, 2009 1 commit
  10. 18 Jun, 2009 1 commit
    • Rodolfo Giometti's avatar
      LinuxPPS: core support · eae9d2ba
      Rodolfo Giometti authored
      
      
      This patch adds the kernel side of the PPS support currently named
      "LinuxPPS".
      
      PPS means "pulse per second" and a PPS source is just a device which
      provides a high precision signal each second so that an application can
      use it to adjust system clock time.
      
      Common use is the combination of the NTPD as userland program with a GPS
      receiver as PPS source to obtain a wallclock-time with sub-millisecond
      synchronisation to UTC.
      
      To obtain this goal the userland programs shoud use the PPS API
      specification (RFC 2783 - Pulse-Per-Second API for UNIX-like Operating
      Systems, Version 1.0) which in part is implemented by this patch.  It
      provides a set of chars devices, one per PPS source, which can be used to
      get the time signal.  The RFC's functions can be implemented by accessing
      to these char devices.
      Signed-off-by: default avatarRodolfo Giometti <giometti@linux.it>
      Cc: David Woodhouse <dwmw2@infradead.org>
      Cc: Greg KH <greg@kroah.com>
      Cc: Randy Dunlap <randy.dunlap@oracle.com>
      Cc: Kay Sievers <kay.sievers@vrfy.org>
      Acked-by: default avatarAlan Cox <alan@lxorguk.ukuu.org.uk>
      Cc: Michael Kerrisk <mtk.manpages@googlemail.com>
      Cc: Christoph Hellwig <hch@infradead.org>
      Cc: Roman Zippel <zippel@linux-m68k.org>
      Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
      eae9d2ba
  11. 16 Jun, 2009 1 commit
  12. 13 Jun, 2009 1 commit
    • Andreas Dilger's avatar
      ext4: teach the inode allocator to use a goal inode number · 11013911
      Andreas Dilger authored
      
      
      Enhance the inode allocator to take a goal inode number as a
      paremeter; if it is specified, it takes precedence over Orlov or
      parent directory inode allocation algorithms.
      
      The extents migration function uses the goal inode number so that the
      extent trees allocated the migration function use the correct flex_bg.
      In the future, the goal inode functionality will also be used to
      allocate an adjacent inode for the extended attributes.
      
      Also, for testing purposes the goal inode number can be specified via
      /sys/fs/{dev}/inode_goal.  This can be useful for testing inode
      allocation beyond 2^32 blocks on very large filesystems.
      Signed-off-by: default avatarAndreas Dilger <adilger@sun.com>
      Signed-off-by: default avatar"Theodore Ts'o" <tytso@mit.edu>
      11013911
  13. 02 Jun, 2009 1 commit
    • Andrew Patterson's avatar
      cciss: add cciss driver sysfs entries · 7fe06326
      Andrew Patterson authored
      
      
      Add sysfs entries to the cciss driver needed for the dm/multipath tools.
      
      A file for vendor, model, rev, and unique_id is added for each logical
      drive under directory /sys/bus/pci/devices/<dev>/ccissX/cXdY.  Where X =
      the controller (or host) number and Y is the logical drive number.
      
      A link from /sys/bus/pci/devices/<dev>/ccissX/cXdY/block:cciss!cXdY to
      /sys/block/cciss!cXdY/device is also created.  A bus is created in
      /sys/bus/cciss.  A link is created from the pci ccissX entry to
      /sys/bus/cciss/devices/ccissX.  Please consider this for inclusion.
      Signed-off-by: default avatarMike Miller <mike.miller@hp.com>
      Cc: Stephen M. Cameron <scameron@beardog.cca.cpqcorp.net>
      Signed-off-by: default avatarJens Axboe <jens.axboe@oracle.com>
      7fe06326
  14. 29 May, 2009 1 commit
  15. 22 May, 2009 1 commit
    • Martin K. Petersen's avatar
      block: Export I/O topology for block devices and partitions · c72758f3
      Martin K. Petersen authored
      
      
      To support devices with physical block sizes bigger than 512 bytes we
      need to ensure proper alignment.  This patch adds support for exposing
      I/O topology characteristics as devices are stacked.
      
        logical_block_size is the smallest unit the device can address.
      
        physical_block_size indicates the smallest I/O the device can write
        without incurring a read-modify-write penalty.
      
        The io_min parameter is the smallest preferred I/O size reported by
        the device.  In many cases this is the same as the physical block
        size.  However, the io_min parameter can be scaled up when stacking
        (RAID5 chunk size > physical block size).
      
        The io_opt characteristic indicates the optimal I/O size reported by
        the device.  This is usually the stripe width for arrays.
      
        The alignment_offset parameter indicates the number of bytes the start
        of the device/partition is offset from the device's natural alignment.
        Partition tools and MD/DM utilities can use this to pad their offsets
        so filesystems start on proper boundaries.
      Signed-off-by: default avatarMartin K. Petersen <martin.petersen@oracle.com>
      Signed-off-by: default avatarJens Axboe <jens.axboe@oracle.com>
      c72758f3
  16. 28 Apr, 2009 1 commit
  17. 21 Apr, 2009 1 commit
  18. 13 Apr, 2009 1 commit
  19. 10 Apr, 2009 1 commit
  20. 31 Mar, 2009 1 commit
    • David Brownell's avatar
      regulator: add get_status() · 853116a1
      David Brownell authored
      
      
      Based on previous LKML discussions:
      
       * Update docs for regulator sysfs class attributes to highlight
         the fact that all current attributes are intended to be control
         inputs, including notably "state" and "opmode" which previously
         implied otherwise.
      
       * Define a new regulator driver get_status() method, which is the
         first method reporting regulator outputs instead of inputs.
         It can report on/off and error status; or instead of simply
         "on", report the actual operating mode.
      
      For the moment, this is a sysfs-only interface, not accessible to
      regulator clients.  Such clients can use the current notification
      interfaces to detect errors, if the regulator reports them.
      Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: default avatarLiam Girdwood <lrg@slimlogic.co.uk>
      853116a1
  21. 20 Mar, 2009 5 commits