1. 24 7月, 2012 14 次提交
  2. 23 7月, 2012 26 次提交
    • L
      Merge tag 'mmc-merge-for-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc · a6be1fcb
      Linus Torvalds 提交于
      Pull MMC updates from Chris Ball:
       "MMC highlights for 3.6:
      
        Core:
         - Rename cd-gpio to slot-gpio and extend it to support more slot GPIO
           functions, such as write-protect.
         - Add a function to get regulators (Vdd and Vccq) for a host.
      
        Drivers:
         - sdhci-pxav2, sdhci-pxav3: Add device tree support.
         - sdhi: Add device tree support.
         - sh_mmcif: Add support for regulators, device tree, slot-gpio.
         - tmio: Add regulator support, use slot-gpio."
      
      * tag 'mmc-merge-for-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/cjb/mmc: (62 commits)
        mmc: sdhci-dove: Prepare for common clock framework
        mmc: sdhci-dove: Add SDHCI_QUIRK_NO_HISPD_BIT
        mmc: omap_hsmmc: ensure probe returns error upon resource failure
        mmc: mxs-mmc: Add wp-inverted property
        mmc: esdhc: Fix DMA_MASK to not break mx25 DMA access
        mmc: core: reset signal voltage on power up
        mmc: sd: Fix sd current limit setting
        mmc: omap_hsmmc: add clk_prepare and clk_unprepare
        mmc: sdhci: When a UHS switch fails, cycle power if regulator is used
        mmc: atmel-mci: modify CLKDIV displaying in debugfs
        mmc: atmel-mci: fix incorrect setting of host->data to NULL
        mmc: sdhci: poll for card even when card is logically unremovable
        mmc: sdhci: Introduce new flag SDHCI_USING_RETUNING_TIMER
        mmc: sdio: Change pr_warning to pr_warn_ratelimited
        mmc: core: Simplify and fix for SD switch processing
        mmc: sdhci: restore host settings when card is removed
        mmc: sdhci: fix incorrect command used in tuning
        mmc: sdhci-pci: CaFe has broken card detection
        mmc: sdhci: Report failure reasons for all cases in sdhci_add_host()
        mmc: s3cmci: Convert s3cmci driver to gpiolib API
        ...
      a6be1fcb
    • L
      Merge branch 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 5b160bd4
      Linus Torvalds 提交于
      Pull x86/mce changes from Ingo Molnar:
       "This tree improves the AMD thresholding bank code and includes a
        memory fault signal handling fixlet."
      
      * 'x86-mce-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
        x86/mce: Fix siginfo_t->si_addr value for non-recoverable memory faults
        x86, MCE, AMD: Update copyrights and boilerplate
        x86, MCE, AMD: Give proper names to the thresholding banks
        x86, MCE, AMD: Make error_count read only
        x86, MCE, AMD: Cleanup reading of error_count
        x86, MCE, AMD: Print decimal thresholding values
        x86, MCE, AMD: Move shared bank to node descriptor
        x86, MCE, AMD: Remove local_allocate_... wrapper
        x86, MCE, AMD: Remove shared banks sysfs linking
        x86, amd_nb: Export model 0x10 and later PCI id
      5b160bd4
    • S
      mmc: sdhci-dove: Prepare for common clock framework · 30b87c60
      Sebastian Hesselbarth 提交于
      As mach-dove is moving towards common clock framework prepare
      the sdhci driver to grab its clock.
      Signed-off-by: NSebastian Hesselbarth <sebastian.hesselbarth@googlemail.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      30b87c60
    • S
      mmc: sdhci-dove: Add SDHCI_QUIRK_NO_HISPD_BIT · a9ca1d54
      Sebastian Hesselbarth 提交于
      The sdio controller on dove doesn't have a bit to indicate
      high-speed. With the quirk set it fixes accessing high-speed
      sdcards.
      Signed-off-by: NSebastian Hesselbarth <sebastian.hesselbarth@googlemail.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      a9ca1d54
    • K
      mmc: omap_hsmmc: ensure probe returns error upon resource failure · 9c17d08c
      Kevin Hilman 提交于
      If platform_get_resource_by_name() fails, driver probe is aborted an
      should return an error so the driver is not bound to the device.
      
      However, in the current error path of platform_get_resource_by_name(),
      probe returns zero since the return value (ret) is not properly set.
      With a zero return value, the driver core assumes probe was successful
      and will bind the driver to the device.
      
      Fix this by ensuring that probe returns an error code in this failure
      path.
      Signed-off-by: NKevin Hilman <khilman@ti.com>
      Acked-by: NVenkatraman S <svenkatr@ti.com>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      9c17d08c
    • M
      mmc: mxs-mmc: Add wp-inverted property · b6e76f10
      Marek Vasut 提交于
      The write-protect GPIO is inverted on some boards. Handle such case.
      Signed-off-by: NMarek Vasut <marex@denx.de>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      b6e76f10
    • W
      mmc: esdhc: Fix DMA_MASK to not break mx25 DMA access · 9a0985b7
      Wilson Callan 提交于
      Patch to not set reserved bits in i.MX25 PROCTL register.  DMA stops
      working if those bits get set.
      Signed-off-by: NWilson Callan <wilson.callan@savantsystems.com>
      Acked-by: NSascha Hauer <s.hauer@pengutronix.de>
      Signed-off-by: NChris Ball <cjb@laptop.org>
      9a0985b7
    • L
      Merge tag 'pm-for-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm · 7100e505
      Linus Torvalds 提交于
      Pull power management updates from Rafael Wysocki:
      
       - ACPI conversion to PM handling based on struct dev_pm_ops.
       - Conversion of a number of platform drivers to PM handling based on
         struct dev_pm_ops and removal of empty legacy PM callbacks from a
         couple of PCI drivers.
       - Suspend-to-both for in-kernel hibernation from Bojan Smojver.
       - cpuidle fixes and cleanups from ShuoX Liu, Daniel Lezcano and Preeti
         Murthy.
       - cpufreq bug fixes from Jonghwa Lee and Stephen Boyd.
       - Suspend and hibernate fixes from Srivatsa Bhat and Colin Cross.
       - Generic PM domains framework updates.
       - RTC CMOS wakeup signaling update from Paul Fox.
       - sparse warnings fixes from Sachin Kamat.
       - Build warnings fixes for the generic PM domains framework and PM
         sysfs code.
       - sysfs switch for printing device suspend times from Sameer Nanda.
       - Documentation fix from Oskar Schirmer.
      
      * tag 'pm-for-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm: (70 commits)
        cpufreq: Fix sysfs deadlock with concurrent hotplug/frequency switch
        EXYNOS: bugfix on retrieving old_index from freqs.old
        PM / Sleep: call early resume handlers when suspend_noirq fails
        PM / QoS: Use NULL pointer instead of plain integer in qos.c
        PM / QoS: Use NULL pointer instead of plain integer in pm_qos.h
        PM / Sleep: Require CAP_BLOCK_SUSPEND to use wake_lock/wake_unlock
        PM / Sleep: Add missing static storage class specifiers in main.c
        cpuilde / ACPI: remove time from acpi_processor_cx structure
        cpuidle / ACPI: remove usage from acpi_processor_cx structure
        cpuidle / ACPI : remove latency_ticks from acpi_processor_cx structure
        rtc-cmos: report wakeups from interrupt handler
        PM / Sleep: Fix build warning in sysfs.c for CONFIG_PM_SLEEP unset
        PM / Domains: Fix build warning for CONFIG_PM_RUNTIME unset
        olpc-xo15-sci: Use struct dev_pm_ops for power management
        PM / Domains: Replace plain integer with NULL pointer in domain.c file
        PM / Domains: Add missing static storage class specifier in domain.c file
        PM / crypto / ux500: Use struct dev_pm_ops for power management
        PM / IPMI: Remove empty legacy PCI PM callbacks
        tpm_nsc: Use struct dev_pm_ops for power management
        tpm_tis: Use struct dev_pm_ops for power management
        ...
      7100e505
    • L
      Merge branch 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending · cb47c183
      Linus Torvalds 提交于
      Pull target updates from Nicholas Bellinger:
       "There have been lots of work in a number of areas this past round.
        The highlights include:
      
         - Break out target_core_cdb.c emulation into SPC/SBC ops (hch)
         - Add a parse_cdb method to target backend drivers (hch)
         - Move sync_cache + write_same + unmap into spc_ops (hch)
         - Use target_execute_cmd for WRITEs in iscsi_target + srpt (hch)
         - Offload WRITE I/O backend submission in tcm_qla2xxx + tcm_fc (hch +
           nab)
         - Refactor core_update_device_list_for_node() into enable/disable
           funcs (agrover)
         - Replace the TCM processing thread with a TMR work queue (hch)
         - Fix regression in transport_add_device_to_core_hba from TMR
           conversion (DanC)
         - Remove racy, now-redundant check of sess_tearing_down with qla2xxx
           (roland)
         - Add range checking, fix reading of data len + possible underflow in
           UNMAP (roland)
         - Allow for target_submit_cmd() returning errors + convert fabrics
           (roland + nab)
         - Drop bogus struct file usage for iSCSI/SCTP (viro)"
      
      * 'for-next' of git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending: (54 commits)
        iscsi-target: Drop bogus struct file usage for iSCSI/SCTP
        target: NULL dereference on error path
        target: Allow for target_submit_cmd() returning errors
        target: Check number of unmap descriptors against our limit
        target: Fix possible integer underflow in UNMAP emulation
        target: Fix reading of data length fields for UNMAP commands
        target: Add range checking to UNMAP emulation
        target: Add generation of LOGICAL BLOCK ADDRESS OUT OF RANGE
        target: Make unnecessarily global se_dev_align_max_sectors() static
        target: Remove se_session.sess_wait_list
        qla2xxx: Remove racy, now-redundant check of sess_tearing_down
        target: Check sess_tearing_down in target_get_sess_cmd()
        sbp-target: Consolidate duplicated error path code in sbp_handle_command()
        target: Un-export target_get_sess_cmd()
        qla2xxx: Get rid of redundant qla_tgt_sess.tearing_down
        target: Make core_disable_device_list_for_node use pre-refactoring lock ordering
        target: refactor core_update_device_list_for_node()
        target: Eliminate else using boolean logic
        target: Misc retval cleanups
        target: Remove hba param from core_dev_add_lun
        ...
      cb47c183
    • L
      Merge tag 'regulator-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator · 4d460fd3
      Linus Torvalds 提交于
      Pull regulator updates from Mark Brown:
       "Lots and lots of fixes from Axel and some others here, plus some
        framework enhancements which continue the theme of factoring code out
        of the drivers and into the core.
      
         - Initial framework support for GPIO controlled enable signals,
           saving a bunch of code in drivers.
         - Move fixed regulator enable time and voltage mapping table
           specifications to data.
         - Used some of the recent framework enhancements to make voltage
           change notifications more useful, passing the voltage in as an
           argument to the notification.
         - Fixed the pattern used for finding individual regulators on a
           device to not rely on the node name, supporting the use of multiple
           PMICs of the same type in the system.
         - New drivers for Maxim MAX77686, TI LP872x and LP8788, Samsung
           S2MPS11, and Wolfson Arizona microphone supplies and LDOs."
      
      * tag 'regulator-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regulator: (176 commits)
        regulator: add new lp8788 regulator driver
        regulator: mc13xxx: Remove extern function declaration for mc13xxx_sw_regulator
        regulator: tps65910: set input_supply on desc unconditionally
        regulator: palmas: Fix calcuating selector in palmas_map_voltage_smps
        regulator: lp872x: Simplify implementation of lp872x_find_regulator_init_data()
        regulator: twl: Fix list_voltate for twl6030ldo_ops
        regulator: twl: Convert twl6030ldo_ops to [get|set]_voltage_sel
        regulator: twl: Fix the formula to calculate vsel and voltage for twl6030ldo
        regulator: s5m8767: Properly handle gpio_request failure
        regulator: max8997: Properly handle gpio_request failure
        regulator: tps62360: use devm_* for gpio request
        regulator: tps6586x: add support for input supply
        regulator: tps65217: Add device tree support
        regulator: aat2870: Remove unused min_uV and max_uV from struct aat2870_regulator
        regulator: aat2870: Convert to regulator_list_voltage_table
        regulator: da9052: initialize of_node param for regulator register
        regulator: Add REGULATOR_STATUS_UNDEFINED.
        regulator: Fix a typo in regulator_mode_to_status() core function.
        regulator: s2mps11: Use sec_reg_write rather than sec_reg_update when mask is 0xff
        regulator: s2mps11: Fix wrong setting for config.dev
        ...
      4d460fd3
    • L
      Merge tag 'regmap-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap · 7cd58b0a
      Linus Torvalds 提交于
      Pull regmap updates from Mark Brown:
       "A few fixes plus a few features, the most generally useful thing being
        the register paging support which can be used by quite a few devices:
      
         - Support for wake IRQs in regmap-irq
         - Support for register paging
         - Support for explicitly specified endianness, mostly for MMIO."
      
      * tag 'regmap-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/regmap:
        regmap: Fix incorrect arguments to kzalloc() call
        regmap: Add hook for printk logging for debugging during early init
        regmap: Fix work_buf switching for page update during virtual range access.
        regmap: Add support for register indirect addressing.
        regmap: Move lock out from internal function _regmap_update_bits().
        regmap: mmio: Staticize regmap_mmio_gen_context()
        regmap: Remove warning on stubbed dev_get_regmap()
        regmap: Implement support for wake IRQs
        regmap: Don't try to map non-existant IRQs
        regmap: Constify regmap_irq_chip
        regmap: mmio: request native endian formatting
        regmap: allow busses to request formatting with specific endianness
      7cd58b0a
    • A
      8cae6f71
    • A
      11e62a8f
    • A
      765927b2
    • A
      spufs: shift dget/mntget towards dentry_open() · bf349a44
      Al Viro 提交于
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      bf349a44
    • A
      zoran: don't bother with struct file * in zoran_map · 3b6456d2
      Al Viro 提交于
      all we need it for is file->private_data, which is assign-once, already
      assigned by that point and, incidentally, its value is already in use
      by zoran ->mmap() anyway.  So just store that pointer instead...
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      3b6456d2
    • A
      ecryptfs: don't reinvent the wheels, please - use struct completion · 3b8b4871
      Al Viro 提交于
      ... and keep the sodding requests on stack - they are small enough.
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      3b8b4871
    • A
      don't expose I_NEW inodes via dentry->d_inode · 8fc37ec5
      Al Viro 提交于
      	d_instantiate(dentry, inode);
      	unlock_new_inode(inode);
      
      is a bad idea; do it the other way round...
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      8fc37ec5
    • A
      tidy up namei.c a bit · 32a7991b
      Al Viro 提交于
      locking/unlocking for rcu walk taken to a couple of inline helpers
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      32a7991b
    • A
      unobfuscate follow_up() a bit · 3c0a6163
      Al Viro 提交于
      really convoluted test in there has grown up during struct mount
      introduction; what it checks is that we'd reached the root of
      mount tree.
      3c0a6163
    • E
      ext3: pass custom EOF to generic_file_llseek_size() · de9b9422
      Eric Sandeen 提交于
      Use the new custom EOF argument to generic_file_llseek_size so
      that SEEK_END will go to the max hash value for htree dirs
      in ext3 rather than to i_size_read()
      Signed-off-by: NEric Sandeen <sandeen@redhat.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      de9b9422
    • E
      ext4: use core vfs llseek code for dir seeks · ec7268ce
      Eric Sandeen 提交于
      Use the new functionality in generic_file_llseek_size() to
      accept a custom EOF position, and un-cut-and-paste all the
      vfs llseek code from ext4.
      
      Also fix up comments on ext4_llseek() to reflect reality.
      Signed-off-by: NEric Sandeen <sandeen@redaht.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      ec7268ce
    • E
      vfs: allow custom EOF in generic_file_llseek code · e8b96eb5
      Eric Sandeen 提交于
      For ext3/4 htree directories, using the vfs llseek function with
      SEEK_END goes to i_size like for any other file, but in reality
      we want the maximum possible hash value.  Recent changes
      in ext4 have cut & pasted generic_file_llseek() back into fs/ext4/dir.c,
      but replicating this core code seems like a bad idea, especially
      since the copy has already diverged from the vfs.
      
      This patch updates generic_file_llseek_size to accept
      both a custom maximum offset, and a custom EOF position.  With this
      in place, ext4_dir_llseek can pass in the appropriate maximum hash
      position for both maxsize and eof, and get what it wants.
      
      As far as I know, this does not fix any bugs - nfs in the kernel
      doesn't use SEEK_END, and I don't know of any user who does.  But
      some ext4 folks seem keen on doing the right thing here, and I can't
      really argue.
      
      (Patch also fixes up some comments slightly)
      Signed-off-by: NEric Sandeen <sandeen@redhat.com>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      e8b96eb5
    • J
      vfs: Avoid unnecessary WB_SYNC_NONE writeback during sys_sync and reorder sync passes · 4ea425b6
      Jan Kara 提交于
      wakeup_flusher_threads(0) will queue work doing complete writeback for each
      flusher thread. Thus there is not much point in submitting another work doing
      full inode WB_SYNC_NONE writeback by writeback_inodes_sb().
      
      After this change it does not make sense to call nonblocking ->sync_fs and
      block device flush before calling sync_inodes_sb() because
      wakeup_flusher_threads() is completely asynchronous and thus these functions
      would be called in parallel with inode writeback running which will effectively
      void any work they do. So we move sync_inodes_sb() call before these two
      functions.
      Signed-off-by: NJan Kara <jack@suse.cz>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      4ea425b6
    • J
      vfs: Remove unnecessary flushing of block devices · d0e91b13
      Jan Kara 提交于
      It is not necessary to write block devices twice. The reason why we first did
      flush and then proper sync is that
        for_each_bdev() {
          write_bdev()
          wait_for_completion()
        }
      is much slower than
        for_each_bdev()
          write_bdev()
        for_each_bdev()
          wait_for_completion()
      when there is bigger amount of data. But as is seen in the above, there's no real
      need to scan pages and submit them twice. We just need to separate the submission
      and waiting part. This patch does that.
      Signed-off-by: NJan Kara <jack@suse.cz>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      d0e91b13
    • J
      vfs: Make sys_sync writeout also block device inodes · a8c7176b
      Jan Kara 提交于
      In case block device does not have filesystem mounted on it, sys_sync will just
      ignore it and doesn't writeout its dirty pages. This is because writeback code
      avoids writing inodes from superblock without backing device and
      blockdev_superblock is such a superblock.  Since it's unexpected that sync
      doesn't writeout dirty data for block devices be nice to users and change the
      behavior to do so. So now we iterate over all block devices on blockdev_super
      instead of iterating over all superblocks when syncing block devices.
      Reviewed-by: NChristoph Hellwig <hch@lst.de>
      Signed-off-by: NJan Kara <jack@suse.cz>
      Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
      a8c7176b