aboutsummaryrefslogtreecommitdiff
path: root/drivers/mmc
AgeCommit message (Collapse)AuthorFilesLines
2013-02-21Merge tag 'driver-core-3.9-rc1' of ↵Linus Torvalds5-24/+19
git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core Pull driver core patches from Greg Kroah-Hartman: "Here is the big driver core merge for 3.9-rc1 There are two major series here, both of which touch lots of drivers all over the kernel, and will cause you some merge conflicts: - add a new function called devm_ioremap_resource() to properly be able to check return values. - remove CONFIG_EXPERIMENTAL Other than those patches, there's not much here, some minor fixes and updates" Fix up trivial conflicts * tag 'driver-core-3.9-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core: (221 commits) base: memory: fix soft/hard_offline_page permissions drivercore: Fix ordering between deferred_probe and exiting initcalls backlight: fix class_find_device() arguments TTY: mark tty_get_device call with the proper const values driver-core: constify data for class_find_device() firmware: Ignore abort check when no user-helper is used firmware: Reduce ifdef CONFIG_FW_LOADER_USER_HELPER firmware: Make user-mode helper optional firmware: Refactoring for splitting user-mode helper code Driver core: treat unregistered bus_types as having no devices watchdog: Convert to devm_ioremap_resource() thermal: Convert to devm_ioremap_resource() spi: Convert to devm_ioremap_resource() power: Convert to devm_ioremap_resource() mtd: Convert to devm_ioremap_resource() mmc: Convert to devm_ioremap_resource() mfd: Convert to devm_ioremap_resource() media: Convert to devm_ioremap_resource() iommu: Convert to devm_ioremap_resource() drm: Convert to devm_ioremap_resource() ...
2013-02-20Merge branches 'fixes' and 'mmci' into for-linusRussell King2-126/+183
2013-02-14mfd: rtsx: Fix issue that booting OS with SD card insertedWei WANG1-0/+18
Realtek card reader supports both SD and MS card. According to the settings of rtsx MFD driver, SD host will be probed before MS host. If we boot/reboot Linux with SD card inserted, the resetting flow of SD card will succeed, and the following resetting flow of MS is sure to fail. Then MS upper-level driver will ask rtsx driver to turn power off. This request leads to the result that the following SD commands fail and SD card can't be accessed again. In this commit, Realtek's SD and MS host driver will check whether the card that upper driver requesting is the one existing in the slot. If not, Realtek's host driver will refuse the operation to make sure the exlusive accessing at the same time. Signed-off-by: Wei WANG <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-02-11mmc: mvsdio: implement a Device Tree bindingThomas Petazzoni1-15/+49
This patch adds a simple Device Tree binding for the mvsdio driver, as well as the necessary documentation for it. Compatibility with non-DT platforms is preserved, by keeping the platform_data based initialization. We introduce a small difference between non-DT and DT platforms: DT platforms are required to provide a clocks = <...> property, which the driver uses to get the frequency of the clock that goes to the SDIO IP. The behaviour on non-DT platforms is kept unchanged: a clock reference is not mandatory, but the clock frequency must be passed in the "clock" field of the mvsdio_platform_data structure. Signed-off-by: Thomas Petazzoni <[email protected]> Signed-off-by: Andrew Lunn <[email protected]> Tested-by: Stefan Peter <[email protected]> Tested-by: Florian Fainelli <[email protected]> Signed-off-by: Jason Cooper <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: mvsdio: use slot-gpio for card detect gpioThomas Petazzoni1-30/+9
The MMC core subsystem provides in drivers/mmc/core/slot-gpio.c a nice set of helper functions to simplify the management of the card detect GPIO in MMC host drivers. This patch migrates the mvsdio driver to using those helpers, which will make the ->probe() code simpler, and therefore ease the process of adding a Device Tree binding for this driver. Signed-off-by: Thomas Petazzoni <[email protected]> Signed-off-by: Andrew Lunn <[email protected]> Tested-by: Stefan Peter <[email protected]> Tested-by: Florian Fainelli <[email protected]> Signed-off-by: Jason Cooper <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: mvsdio: use slot-gpio infrastructure for write protect gpioThomas Petazzoni1-25/+5
The MMC core subsystem provides in drivers/mmc/core/slot-gpio.c a nice set of helper functions to simplify the management of the write protect GPIO in MMC host drivers. This patch migrates the mvsdio driver to using those helpers, which will make the ->probe() code simpler, and therefore ease the process of adding a Device Tree binding for this driver. Signed-off-by: Thomas Petazzoni <[email protected]> Signed-off-by: Andrew Lunn <[email protected]> Tested-by: Stefan Peter <[email protected]> Tested-by: Florian Fainelli <[email protected]> Signed-off-by: Jason Cooper <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdhci-esdhc-imx: remove ESDHC_CD_GPIO handling from IO accessoryShawn Guo1-17/+0
With commit 9444e07 (mmc: remove unncessary mmc_gpio_free_cd() call from slot-gpio users) in place, the ESDHC_CD_GPIO handling in IO accessories becomes unnecessary. Remove it. Signed-off-by: Shawn Guo <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdhci: introduce sdhci_update_clock helper to re-enable clockAndy Shevchenko1-14/+13
There are three places where same piece of code is used. Let's split it to a separate function. Signed-off-by: Andy Shevchenko <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdhci-pxav3: add IRQ wake up supportKevin Liu1-0/+7
[cjb: The MMP3 architecture requires a registered interrupt to retire wfi when waking from suspend.] Signed-off-by: Jialing Fu <[email protected]> Signed-off-by: Kevin Liu <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdhci: add IRQ wake up supportKevin Liu1-18/+42
Don't disable SD Host IRQ during suspend if it is wake up source. Enable wakeup event during suspend. Signed-off-by: Jialing Fu <[email protected]> Signed-off-by: Kevin Liu <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdhci: disable interrupt before free_irqKevin Liu1-0/+3
Current code missed disabling interrupts before free irq which is shared. Notice below comments for function free_irq (kernel/irq/manage.c): On a shared IRQ the caller must ensure the interrupt is disabled on the card it drives before calling this function. Original code has below issue during suspend/resume when multiple SD hosts share the same IRQ: 1. Assume there are two hosts (host1 for emmc while host2 for sd) share the same mmc irq. 2. When system suspend, host2 will be suspended before host1. So the sequence is below: step1: irq handler for host2 removed -> step2: irq handler for host1 removed and irq disabled -> ... system suspended ... ... system resumed ... step3: irq enabled and the irq handler for host1 restored -> step4: irq handler for host2 restored 3. So there is the buggy time slot that the irq is enabled but the irq handler for host2 is removed. Then host2 interrupt can be triggered but can't be handled at that moment. Signed-off-by: Jialing Fu <[email protected]> Signed-off-by: Kevin Liu <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: add BCM2835 driverStephen Warren3-0/+239
Add a very simple driver for the BCM2835 SoC, which is used in the Raspberry Pi board. Signed-off-by: Stephen Warren <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: fix async request mechanism for sequential read scenariosKonstantin Dorfman6-18/+160
When current request is running on the bus and if next request fetched by mmcqd is NULL, mmc context (mmcqd thread) gets blocked until the current request completes. This means that if new request comes in while the mmcqd thread is blocked, this new request can not be prepared in parallel to current ongoing request. This may result in delaying the new request execution and increase it's latency. This change allows to wake up the MMC thread on new request arrival. Now once the MMC thread is woken up, a new request can be fetched and prepared in parallel to the current running request which means this new request can be started immediately after the current running request completes. With this change read throughput is improved by 16%. Signed-off-by: Konstantin Dorfman <[email protected]> Reviewed-by: Seungwon Jeon <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: queue: exclude asynchronous transfer for special requestSeungwon Jeon1-0/+10
Unlike normal r/w request, special requests(discard, flush) is finished with a one-time issue_fn. Request change to mqrq_prev makes unnecessary call. Signed-off-by: Seungwon Jeon <[email protected]> Reviewed-by: Konstantin Dorfman <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: simplify IRQ processingGuennadi Liakhovetski1-46/+19
The classical way to process IRQs is read out the status, ack all triggered IRQs, possibly mask them, then process them. Follow this simple procesure instead of the current complex custom algorithm. Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: report all errorsTeppei Kamijou1-8/+23
Make error reporting in the driver more verbose. This patch is based on an earlier work by Teppei Kamijou, but we try to not add any new error messages to the log in the normal case to avoid confusing the user, and also add a few more dev_dbg() calls. Signed-off-by: Teppei Kamijou <[email protected]> Signed-off-by: Shinya Kuribayashi <[email protected]> [[email protected]: avoid producing new errors in normal case] Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: fix I/O errorsGuennadi Liakhovetski1-1/+3
The INT_BUFWEN IRQ often arrives with other bits set too. If they are not cleared, an additional IRQ can be triggered, sometimes also after the MMC request has already been completed. This leads to block I/O errors. Earlier Teppei Kamijou also observed these additional interrupts and proposed to explicitly wait for them. This patch chooses an alternative approach of clearing all active bits immediately, when processing the main interrupt. Reported-by: Teppei Kamijou <[email protected]> Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: reset DMA completion immediately before starting DMAGuennadi Liakhovetski1-2/+6
DMA completion can be signalled from the DMA callback and from the error handler. If both are called, the completion struct can enter an inconsistent state. To prevent this move completion initialisation immediately before activating DMA. Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: reset error code for any opcodeGuennadi Liakhovetski1-1/+1
If a command execution has produced an error, it has to be reset as a part of the error handling. Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: fix a race, causing an Oops on SMPGuennadi Liakhovetski1-3/+36
Oopses have been observed on SMP in the sh-mmcif IRQ thread, when the two IRQ threads run simultaneously on two CPUs. Also take care to guard the timeout work and the DMA completion callback from possible NULL-pointer dereferences and races. Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: (cosmetic) simplify boolean return blocksGuennadi Liakhovetski1-7/+2
Use "return condition" instead of "if (condition) return true; return false" in functions, returning bool. Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: Terminate DMA transactions when detecting timeout or errorTeppei Kamijou1-14/+17
If a DMA transaction fails, terminate all outstanding DMA transfers and unmap buffers. Signed-off-by: Teppei Kamijou <[email protected]> Signed-off-by: Shinya Kuribayashi <[email protected]> [[email protected]: forward-port, add dma_unmap_sg() in error cases] Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: fix missing and consolidate IO completion timeoutsGuennadi Liakhovetski1-23/+22
Read block and write block operations are currently missing completion timeouts. Add missing timeouts and consolidate them at one location. Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: Avoid unnecessary mmc_delay() at mmc_card_sleepawake()Teppei Kamijou1-1/+3
SH/R-Mobile MMCIF host controller can wait while the card signals busy. Set MMC_CAP_WAIT_WHILE_BUSY to inform an upper layer (core/mmc_ops.c) not to insert unnecessary mmc_delay(). Signed-off-by: Teppei Kamijou <[email protected]> Signed-off-by: Shinya Kuribayashi <[email protected]> Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: Use msecs_to_jiffies() for host->timeoutTeppei Kamijou1-1/+1
Timeout period should be properly normalized using msecs_to_jiffies(). Signed-off-by: Teppei Kamijou <[email protected]> Signed-off-by: Shinya Kuribayashi <[email protected]> Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: Add support for eMMC Dual Data RateTeppei Kamijou1-0/+14
Some MMCIF implementations support the Dual Data Rate. With this patch, platforms can set the MMC_CAP_UHS_DDR50 capability flag in MMCIF platform data. This will let the MMC core to actually use the DDR mode. Signed-off-by: Teppei Kamijou <[email protected]> Signed-off-by: Shinya Kuribayashi <[email protected]> Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: add support for bundled MMCIF IRQsShinya Kuribayashi1-9/+16
On newer SoCs like R-Mobile U2, MMCIF interrupts are bundled. Signed-off-by: Shinya Kuribayashi <[email protected]> Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: ensure run-time suspend call is processed before suspendTeppei Kamijou1-1/+1
With this post-v2.6.35 change applied: commit a0a1a5fd4fb15ec61117c759fe9f5c16c53d9e9c Author: Tejun Heo <[email protected]> Date: Tue Jun 29 10:07:12 2010 +0200 workqueue: reimplement workqueue freeze using max_active freeze_workqueues_begin() was introduced and workqueue now gets frozen before device drivers suspend operations. We have to ensure that run-time PM suspend operation completes before system-wide suspend is started. Signed-off-by: Teppei Kamijou <[email protected]> Signed-off-by: Shinya Kuribayashi <[email protected]> Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sh_mmcif: force to fail CMD52 immediatelyTeppei Kamijou1-0/+1
mmc_rescan() sends CMD52 (SD_IO_RW_DIRECT) to reset SDIO card during card detection. CMD52 should be ignored by SD/eMMC cards, but we can also abort it in the driver immediately, since MMCIF doesn't support SDIO cards anyway. Signed-off-by: Teppei Kamijou <[email protected]> Signed-off-by: Shinya Kuribayashi <[email protected]> Signed-off-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdhci-esdhc-imx: use slot-gpio helpers for CD and WPShawn Guo1-40/+16
Use slot-gpio helpers to save some code in the driver. Signed-off-by: Shawn Guo <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: remove unncessary mmc_gpio_free_cd() call from slot-gpio usersShawn Guo3-19/+0
Since slot-gpio uses devm_* managed functions in mmc_gpio_request_cd() now, we can remove those mmc_gpio_free_cd() call from host drivers' .probe() error path and .remove(). Signed-off-by: Shawn Guo <[email protected]> Acked-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: slot-gpio: use devm_* managed functions to ease usersShawn Guo1-6/+51
Use devm_* managed functions, so that slot-gpio users do not have to call mmc_gpio_free_ro/cd to free up resources requested in mmc_gpio_request_ro/cd. Signed-off-by: Shawn Guo <[email protected]> Acked-by: Guennadi Liakhovetski <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdhci: query card presence from cd-gpio before asking SDHCIShawn Guo1-13/+16
Call mmc_gpio_get_cd() to query card presence from cd-gpio before asking SDHCI. The rationale behind this change is that flag SDHCI_QUIRK_BROKEN_CARD_DETECTION is designed for SDHCI controller to tell that SDHCI_PRESENT_STATE is broken, and it should be used for this case only. So when cd-gpio is being used, the controller should set the flag to tell that SDHCI_PRESENT_STATE is not available. However, the existing code will skip checking cd-gpio as long as flag SDHCI_QUIRK_BROKEN_CARD_DETECTION is set. Change the querying order between cd-gpio and SDHCI to support the rationale above. Signed-off-by: Shawn Guo <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdio: print correct UHS mode during card detectionSubhash Jadavani1-0/+5
When SDIO3.0 card is detected, incorrect bus speed mode is printed as part of card detection print in kernel logs. This change fixes it so that user won't be confused by looking at incorrect card detection message in logs. Signed-off-by: Subhash Jadavani <[email protected]> Tested-by: Jackey Shen <[email protected]> Acked-by: Ulf Hansson <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdio: Fix SDIO 3.0 UHS-I initialization sequenceSujit Reddy Thumma1-11/+11
According to UHS-I initialization sequence for SDIO 3.0 cards, the host must set bit[24] (S18R) of OCR register during OCR handshake to know whether the SDIO card is capable of doing 1.8V I/O. Signed-off-by: Sujit Reddy Thumma <[email protected]> Signed-off-by: Subhash Jadavani <[email protected]> Reviewed-by: Johan Rudholm <[email protected]> Reviewed-by: Ulf Hansson <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-11mmc: sdio: fix resume failure due to lack of CMD52 resetSubhash Jadavani1-2/+4
If SDIO keep power flag (MMC_PM_KEEP_POWER) is not set, card would be reinitialized during resume but as we are not resetting (CMD52 reset) the SDIO card during this reinitialization, card may fail to respond back to subsequent commands (CMD5 etc...). This change resets the card before the reinitialization of card during resume. Signed-off-by: Subhash Jadavani <[email protected]> Acked-by: Ulf Hansson <[email protected]> Signed-off-by: Chris Ball <[email protected]>
2013-02-08drivers/misc/cb710: add missing GENERIC_HARDIRQS dependencyHeiko Carstens1-1/+1
CB710_CORE (drivers/misc/cb710/core.c) calls devm_request_irq() and therefore needs a GENERIC_HARDIRQS dependency to prevent a link error on s390. Cc: Arnd Bergmann <[email protected]> Signed-off-by: Heiko Carstens <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2013-01-28Merge tag 'mfd-for-linus-3.8-1' of ↵Linus Torvalds1-25/+5
git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6 Pull MFD fixes from Samuel Ortiz: "This is the first pull request for MFD fixes for 3.8 We have some build failure fixes (twl4030, vexpress, abx500 and tps65910), some actual runtime oops and lockup fixes (rtsx, da9052), and some more hypothetical NULL pointers dereferences fixes for pcf50633 and max776xx. Then we also have additional rtsx fixes for a correct switch output voltage and clock divider correctness for rtl8411 (rtsx driver), and irqdomain fix for db8550-prcmu, and some more cosmetic fixes for arizona and wm5102." * tag 'mfd-for-linus-3.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo/mfd-2.6: mfd: rtsx: Fix oops when rtsx_pci_sdmmc is not probed mfd: wm5102: Fix definition of WM5102_MAX_REGISTER mfd: twl4030: Don't warn about uninitialized return code mfd: da9052/53 lockup fix mfd: rtsx: Add clock divider hook mmc: rtsx: Call MFD hook to switch output voltage mfd: rtsx: Add output voltage switch hook mfd: Fix compile errors and warnings when !CONFIG_AB8500_BM mfd: vexpress: Export global functions to fix build error mfd: arizona: Check errors from regcache_sync() mfd: tc3589x: Use simple irqdomain mfd: pcf50633: Init pcf->dev before using it mfd: max77693: Init max77693->dev before using it mfd: max77686: Init max77686->dev before using it mfd: db8500-prcmu: Fix irqdomain usage mfd: tps65910: Select REGMAP_IRQ in Kconfig to fix build error mfd: arizona: Disable control interface reporting for WM5102 and WM5110
2013-01-28ARM: 7630/1: mmc: mmci: Fixup and cleanup code for DMA handlingUlf Hansson1-82/+105
The cookie is now used to indicate if dma_unmap_sg shall be done in post_request. At DMA errors, the DMA job is immediately not only terminated but also unmapped. To indicate that this has been done the cookie is reset to zero. post_request will thus only do dma_umap_sg for requests which has a cookie not set to zero. Some corresponding duplicated code could then be removed and moreover some corrections at DMA errors for terminating the same DMA job twice has also been fixed. Signed-off-by: Ulf Hansson <[email protected]> Signed-off-by: Per Forlin <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Russell King <[email protected]>
2013-01-28ARM: 7631/1: mmc: mmci: Add new VE MMCI variantPawel Moll2-0/+15
The Versatile Express IOFPGA as shipped on VECD 5.0 (bitfiles v108/208 and v116/216) contains a modified version of the PL180 MMCI, with PeriphID Configuration value changed to 0x2. This version adds an optional "hardware flow control" feature. When enabled MMC card clock will be automatically disabled when FIFO is about to over/underflow and re-enabled once the host retrieved some data. This makes the controller immune to over/underrun errors caused by big interrupt handling latencies. This patch adds relevant device variant in the driver. Signed-off-by: Pawel Moll <[email protected]> Reviewed-by: Linus Walleij <[email protected]> Acked-by: Ulf Hansson <[email protected]> Signed-off-by: Russell King <[email protected]>
2013-01-27mmc: rtsx: Call MFD hook to switch output voltageWei WANG1-25/+5
Different card reader has different method to switch output voltage, so we have to use the callback function provided by MFD driver to switch output pad voltage. Signed-off-by: Wei WANG <[email protected]> Signed-off-by: Samuel Ortiz <[email protected]>
2013-01-25Merge 3.8-rc5 into driver-core-nextGreg Kroah-Hartman1-62/+30
This resolves a gpio driver merge issue pointed out in linux-next. Signed-off-by: Greg Kroah-Hartman <[email protected]>
2013-01-25Merge 3.8-rc5 into tty-nextGreg Kroah-Hartman1-62/+30
This resolves a number of tty driver merge issues found in linux-next Signed-off-by: Greg Kroah-Hartman <[email protected]>
2013-01-25mmc: Convert to devm_ioremap_resource()Thierry Reding3-10/+10
Convert all uses of devm_request_and_ioremap() to the newly introduced devm_ioremap_resource() which provides more consistent error handling. devm_ioremap_resource() provides its own error messages so all explicit error messages can be removed from the failure code paths. Signed-off-by: Thierry Reding <[email protected]> Cc: Chris Ball <[email protected]> Cc: Ben Dooks <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2013-01-23Merge tag 'mvebu_fixes_for_v3.8-rc5' of ↵Olof Johansson1-62/+30
git://git.infradead.org/users/jcooper/linux into fixes From Jason Cooper: mvebu fixes for v3.8-rc5 - fix memory leak in mvebu/clk-cpu.c - use devm_ to correct/simplify error paths in mvsdio - add missing #interrupt-cells property in kirkwood * tag 'mvebu_fixes_for_v3.8-rc5' of git://git.infradead.org/users/jcooper/linux: ARM: kirkwood: fix missing #interrupt-cells property mmc: mvsdio: use devm_ API to simplify/correct error paths. clk: mvebu/clk-cpu.c: fix memory leakage
2013-01-23ARM: 7623/1: mmc: mmci: Fixup clock gating when freq is 0 for ST-variantsUlf Hansson1-0/+13
In the ST Micro variant, the MMCICLOCK register must not be used to gate the clock. Instead use MMCIPOWER register and by clearing the PWR_ON bit to do this. Signed-off-by: Johan Rudholm <[email protected]> Signed-off-by: Ulf Hansson <[email protected]> Signed-off-by: Russell King <[email protected]>
2013-01-23ARM: 7622/1: mmc: mmci: Gate the clock in runtime suspend to save powerUlf Hansson1-0/+29
The amba bus is already performing same actions but for the apb_pclk. So here we just make sure the clock to card is gated as well to save more power. At runtime resume we will thus restore the clock again. Signed-off-by: Ulf Hansson <[email protected]> Acked-by: Kevin Liu <[email protected]> Signed-off-by: Russell King <[email protected]>
2013-01-23mmc: mvsdio: use devm_ API to simplify/correct error paths.Andrew Lunn1-62/+30
There are a number of bugs in the error paths of this driver. Make use of devm_ functions to simplify the cleanup on error. Based on a patch by Russell King. Signed-off-by: Andrew Lunn <[email protected]> Signed-off-by: Jason Cooper <[email protected]>
2013-01-18tty: Added a CONFIG_TTY option to allow removal of TTYJoe Millenbach1-0/+1
The option allows you to remove TTY and compile without errors. This saves space on systems that won't support TTY interfaces anyway. bloat-o-meter output is below. The bulk of this patch consists of Kconfig changes adding "depends on TTY" to various serial devices and similar drivers that require the TTY layer. Ideally, these dependencies would occur on a common intermediate symbol such as SERIO, but most drivers "select SERIO" rather than "depends on SERIO", and "select" does not respect dependencies. bloat-o-meter output comparing our previous minimal to new minimal by removing TTY. The list is filtered to not show removed entries with awk '$3 != "-"' as the list was very long. add/remove: 0/226 grow/shrink: 2/14 up/down: 6/-35356 (-35350) function old new delta chr_dev_init 166 170 +4 allow_signal 80 82 +2 static.__warned 143 142 -1 disallow_signal 63 62 -1 __set_special_pids 95 94 -1 unregister_console 126 121 -5 start_kernel 546 541 -5 register_console 593 588 -5 copy_from_user 45 40 -5 sys_setsid 128 120 -8 sys_vhangup 32 19 -13 do_exit 1543 1526 -17 bitmap_zero 60 40 -20 arch_local_irq_save 137 117 -20 release_task 674 652 -22 static.spin_unlock_irqrestore 308 260 -48 Signed-off-by: Joe Millenbach <[email protected]> Reviewed-by: Jamey Sharp <[email protected]> Reviewed-by: Josh Triplett <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>
2013-01-15TTY: switch tty_flip_buffer_pushJiri Slaby1-10/+4
Now, we start converting tty buffer functions to actually use tty_port. This will allow us to get rid of the need of tty in many call sites. Only tty_port will needed and hence no more tty_port_tty_get in those paths. Now, the one where most of tty_port_tty_get gets removed: tty_flip_buffer_push. IOW we also closed all the races in drivers not using tty_port_tty_get at all yet. Also we move tty_flip_buffer_push declaration from include/linux/tty.h to include/linux/tty_flip.h to all others while we are changing it anyway. Signed-off-by: Jiri Slaby <[email protected]> Signed-off-by: Greg Kroah-Hartman <[email protected]>