summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* mmc: core: Detect card removal on I/O errorUlf Hansson2012-03-272-3/+22
| | | | | | | | | | | | | | | | | To prevent I/O as soon as possible at card removal, a new detect work is re-scheduled without a delay to let a rescan remove the card device as soon as possible. Additionally, MMC_CAP2_DETECT_ON_ERR can now be used to handle "slowly" removed cards that a scheduled detect work did not detect as removed. To prevent further I/O requests for these lingering removed cards, check if card has been removed and then schedule a detect work to properly remove it. Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-by: Namjae Jeon <linkinjeon@gmail.com> Acked-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: dw_mmc: Regression fix for non-IDMAC DMASeungwon Jeon2012-03-271-16/+9
| | | | | | | | | | | | | | 3ec7699d3bb1b0ee7 ("mmc: dw_mmc: Add support for pre_req and post_req") broke non-IDMAC DMA, because dw_mci_pre_dma_transfer() is valid only if using internal DMA. In case of using other DMA it returns -ENOSYS. It prevents the DMA operations. This patch makes dw_mci_pre_dma_transfer() effective in all DMA cases again. Reported-by: James Hogan <james@albanarts.com> Signed-off-by: Seungwon Jeon <tgih.jun@samsung.com> Reviewed-by: Namjae Jeon <linkinjeon@gmail.com> Acked-by: James Hogan <james.hogan@imgtec.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: dw_mmc: fix compile error when CONFIG_MMC_DW_IDMAC is disabledJaehoon Chung2012-03-271-1/+1
| | | | | | | | | | | | | | | When disable CONFIG_MMC_DW_IDMAC, can see the compiler error. Because in dw_mci_post_req(), called the dw_mci_get_dma_dir(). But that function is in #ifdef CONFIG_MMC_DW_IDMAC. I think that function is generic function. Not need the CONFIG_MMC_DW_IDMAC. Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Seungwon Jeon <tgih.jun@samsung.com> Acked-by: James Hogan <james.hogan@imgtec.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* ARM: OMAP: hsmmc: add max_freq fieldDaniel Mack2012-03-273-2/+9
| | | | | | | | | | External circuitry like level shifters may limit the maximum operation speed of the hsmmc controller. Add a field to struct omap2_hsmmc_info so boards can adjust the setting on demand. Signed-off-by: Daniel Mack <zonque@gmail.com> Acked-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: atmel-mci: fix typoLudovic Desroches2012-03-271-1/+1
| | | | | | Signed-off-by: Ludovic Desroches <ludovic.desroches@atmel.com> Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: dw_mmc: shift with slot-id for CLKENA registerJaehoon Chung2012-03-251-2/+2
| | | | | | | | | | In CLKENA register, can support 16-SD card clocks. If support correctly, must shift with slot-id. Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Will Newton <will.newton@imgtec.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: esdhc: Workaround for data crc error on p1010rdbJerry Huang2012-03-251-2/+17
| | | | | | | | | | | | SD card read was failing (data crc error) on some cards at maximum possible frequency on P1010 (CCB frequency set to 400MHz). Some clock deviations are also observed at this frequency. Hence reduced the mmc clock freq. Signed-off-by: Priyanka Jain <Priyanka.Jain@freescale.com> Singed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com> Acked-by: Anton Vorontsov <cbouatmailru@gmail.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: core: add a debug message for SET_BLOCK_COUNTJaehoon Chung2012-03-251-0/+6
| | | | | | | | | | | This patch is added just debug message. Almost features need to use the CMD23. But we didn't see the debug message for sbc. If sbc's message can see, should be help for debugging. (We can check whether use the cmd23 or not.) Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: dw_mmc: Add support for pre_req and post_reqSeungwon Jeon2012-03-251-27/+102
| | | | | | | | | | This patch implements pre_req and post_req in dw_mmc to support asynchronous mmc request. Signed-off-by: Seungwon Jeon <tgih.jun@samsung.com> Acked-by: Jaehoon Chung <jh80.chung@samsung.com> Acked-by: Will Newton <will.newton@imgtec.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: sdhci-tegra: Explicitly support Tegra30Stephen Warren2012-03-251-13/+87
| | | | | | | | | | | | | | | | | Tegra30 differs from Tegra20 in a number of ways. This patch implements a minimal set of differences in order to get the Cardhu board's SD slot and eMMC working. Given the diffs between the mainline sdhci-tegra.c and our downstream versions, I expect we'll eventually need to add many more differences, hence the seemingly heavy-weight addition of the soc_data structure. * Tegra30 doesn't need to override register access to SDHCI_HOST_VERSION or SDHCI_INT_ENABLE. * Tegra30 needs quirk SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK. Signed-off-by: Stephen Warren <swarren@nvidia.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: esdhc: Implement power management for ESDHCJerry Huang2012-03-251-0/+18
| | | | | | | | | | | For FSL ESDHC controllers, when entering sleep the controller will power off, therefore the registers will lose their values, and the driver should save the value of registers during suspend and write them back during resume. Signed-off-by: Jerry Huang <Chang-Ming.Huang@freescale.com> Signed-off-by: Jiang Yutang <b14898@freescale.com> Acked-by: Anton Vorontsov <cbouatmailru@gmail.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: sdhci: Add platform suspend/resume hooks.Chris Ball2012-03-252-0/+8
| | | | | | | Some platforms require saving/restoring registers across suspend/resume; this hook allows them to do that inside their driver. Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: dw_mmc: Override blk_settings with platdata on IDMACJaehoon Chung2012-03-251-8/+8
| | | | | | | | | | | When use the IDMAC, we can also want to use the pdata->blk-setting. So if pdata->blk-setting is unset, use the default value. if not, use the pdata->blk-setting. Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Will Newton <will.newton@imgtec.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: Support of PCI mode in the dw_mmc driverShashidhar Hiremath2012-03-257-104/+385
| | | | | | | | | | | | Support of PCI mode for the dw_mmc driver. This Patch adds the support for the scenario where the Synopsys Designware IP is present on the PCI bus. The patch adds the minimal modifications necessary for the driver to work on PCI platform. Also added separate files for PCI and PLATFORM modes of operation. Signed-off-by: Shashidhar Hiremath <shashidharh@vayavyalabs.com> Acked-by: James Hogan <james.hogan@imgtec.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: dw_mmc: add support for eMMC Power Off Notify featureJaehoon Chung2012-03-251-0/+5
| | | | | | | | | | | This patch adds the capability of power off notify for dw-mmc controller. In order to use Girish's patch: mmc: core: Add Power Off Notify Feature eMMC 4.5 Signed-off-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com> Acked-by: Will Newton <will.newton@imgtec.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* mmc: MMC-4.5 Data Tag SupportSaugata Das2012-03-254-5/+35
| | | | | | | | | | MMC-4.5 data tag feature will be used to store the file system meta-data in the tagged region of eMMC. This will improve the write and subsequent read transfer time for the meta data. Signed-off-by: Saugata Das <saugata.das@linaro.org> Tested-by: Venkatraman S <svenkatr@ti.com> Signed-off-by: Chris Ball <cjb@laptop.org>
* Merge branch 'for-linus' of ↵Linus Torvalds2012-03-21186-4141/+5360
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs Pull vfs pile 1 from Al Viro: "This is _not_ all; in particular, Miklos' and Jan's stuff is not there yet." * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs: (64 commits) ext4: initialization of ext4_li_mtx needs to be done earlier debugfs-related mode_t whack-a-mole hfsplus: add an ioctl to bless files hfsplus: change finder_info to u32 hfsplus: initialise userflags qnx4: new helper - try_extent() qnx4: get rid of qnx4_bread/qnx4_getblk take removal of PF_FORKNOEXEC to flush_old_exec() trim includes in inode.c um: uml_dup_mmap() relies on ->mmap_sem being held, but activate_mm() doesn't hold it um: embed ->stub_pages[] into mmu_context gadgetfs: list_for_each_safe() misuse ocfs2: fix leaks on failure exits in module_init ecryptfs: make register_filesystem() the last potential failure exit ntfs: forgets to unregister sysctls on register_filesystem() failure logfs: missing cleanup on register_filesystem() failure jfs: mising cleanup on register_filesystem() failure make configfs_pin_fs() return root dentry on success configfs: configfs_create_dir() has parent dentry in dentry->d_parent configfs: sanitize configfs_create() ...
| * ext4: initialization of ext4_li_mtx needs to be done earlierAl Viro2012-03-201-2/+3
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * debugfs-related mode_t whack-a-moleAl Viro2012-03-206-7/+7
| | | | | | | | | | | | all of those should be umode_t... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * hfsplus: add an ioctl to bless filesMatthew Garrett2012-03-203-0/+40
| | | | | | | | | | | | | | | | | | | | | | | | Making an hfsplus partition bootable requires the ability to "bless" a file by putting its inode number in the volume header. Doing this from userspace on a mounted filesystem is impractical since the kernel will write back the original values on unmount. Add an ioctl to allow userspace to update the volume header information based on the target file. Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * hfsplus: change finder_info to u32Matthew Garrett2012-03-201-1/+1
| | | | | | | | | | | | | | | | | | | | The finder_info block in the hfsplus volume header is currently defined as an array of 8 bit values, but TN1150 defines it as being an array of 32 bit values. Fix for convenience. Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * hfsplus: initialise userflagsMatthew Garrett2012-03-201-0/+2
| | | | | | | | | | | | | | | | | | | | The userflags field was being written to the filesystem without being initialised. Make sure it's clear, since otherwise files end up with garbage attributes. Signed-off-by: Matthew Garrett <mjg@redhat.com> Signed-off-by: Christoph Hellwig <hch@lst.de> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * qnx4: new helper - try_extent()Al Viro2012-03-201-8/+15
| | | | | | | | | | | | | | checking if an extent is the one we are looking for is done twice in qnx4_block_map(); gather that code into a helper function. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * qnx4: get rid of qnx4_bread/qnx4_getblkAl Viro2012-03-203-36/+3
| | | | | | | | | | | | | | | | pointless, since the only caller will want the physical block number anyway; might as well call qnx4_block_map() and use sb_bread() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * take removal of PF_FORKNOEXEC to flush_old_exec()Al Viro2012-03-207-10/+1
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * trim includes in inode.cAl Viro2012-03-201-11/+1
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * um: uml_dup_mmap() relies on ->mmap_sem being held, but activate_mm() ↵Al Viro2012-03-202-3/+10
| | | | | | | | | | | | | | | | doesn't hold it ... while calling uml_dup_mmap() Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * um: embed ->stub_pages[] into mmu_contextAl Viro2012-03-202-19/+6
| | | | | | | | | | | | seriously, kmalloc() for two-element array of pointers? Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * gadgetfs: list_for_each_safe() misuseAl Viro2012-03-201-6/+3
| | | | | | | | | | | | | | really weirdly spelled "while the list is non-empty, pick its first element, remove it from the list and free it" kind of loop... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * ocfs2: fix leaks on failure exits in module_initAl Viro2012-03-201-19/+21
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * ecryptfs: make register_filesystem() the last potential failure exitAl Viro2012-03-201-8/+8
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * ntfs: forgets to unregister sysctls on register_filesystem() failureAl Viro2012-03-201-0/+2
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * logfs: missing cleanup on register_filesystem() failureAl Viro2012-03-201-1/+4
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * jfs: mising cleanup on register_filesystem() failureAl Viro2012-03-201-1/+7
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * make configfs_pin_fs() return root dentry on successAl Viro2012-03-203-13/+11
| | | | | | | | | | | | ... and make configfs_mnt static Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * configfs: configfs_create_dir() has parent dentry in dentry->d_parentAl Viro2012-03-201-15/+5
| | | | | | | | | | | | no need to play sick games with parent item, internal mount, etc. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * configfs: sanitize configfs_create()Al Viro2012-03-201-28/+27
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * configfs: kill configfs_sbAl Viro2012-03-205-25/+26
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * configfs: don't bother with checks for mkdir/rmdir/unlink/symlink in rootAl Viro2012-03-204-15/+7
| | | | | | | | | | | | | | just give root directory separate inode_operations without all those methods... Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * __register_binfmt() made voidAl Viro2012-03-2012-23/+27
| | | | | | | | | | | | Just don't pass NULL to it - nobody does, anyway. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * autofs: set things up *before* registering fs typeAl Viro2012-03-201-3/+3
| | | | | | | | | | | | | | it's not a serious race, but we really want misc device before anybody gets to mount this sucker. Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * anon_inodes: move allocation of anon_inode into ->mount()Al Viro2012-03-201-53/+56
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * 9p: make register_filesystem() the last failure exitAl Viro2012-03-201-8/+8
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * usbfs: kill racy detection of simple_pin_fs()Al Viro2012-03-201-9/+1
| | | | | | | | | | | | can check MS_KERNMOUNT in flags now Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * make simple_pin_fs() pass MS_KERNMOUNT - it's a kernel-internal oneAl Viro2012-03-201-1/+1
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * ibmasmfs: make register_filesystem the last failure exitAl Viro2012-03-201-6/+5
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * spufs: make register_filesystem the last potential failure exitAl Viro2012-03-201-5/+5
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * kill reiserfs_fs_{i,sb}.hAl Viro2012-03-203-619/+597
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * move private bits of reiserfs_fs.h to fs/reiserfs/reiserfs.hAl Viro2012-03-2029-2362/+2354
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
| * kill pointless includes of reiserfs_fs_{i,sb}.hAl Viro2012-03-205-6/+0
| | | | | | | | Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
OpenPOWER on IntegriCloud