aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-03-15snowball: removing GPIO161 config for external connectorHEADmasterMathieu J. Poirier
On snwoball V5 and up GPIO161 is routed to PMU_EN of the cg2900 and as such shouldn't be configured to handle an event from the external connector (J23). Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
2012-03-15cg2900: Change the PMU_EN gpio for snowballRobert MARKLUND
Snowball have the GPIO_EN on GPIO161 diffrent from u8500. Change-Id: I6dddb1e3d7b7b80ce046fbd92a7852a3d0a6c59d Signed-off-by: Robert Marklund <robert.marklund@stericsson.com>
2012-03-13config: sound: Fix for audio doesn't work in IK 3.3ramesh.chandrasekaran
Enable CONFIG_STM_MSP_SPI kernel config which initializes MSPs and audio codecs. Signed-off-by: Ramesh Chandrasekaran <ramesh.chandrasekaran@stericsson.com>
2012-03-13sound: Fix for audio doesn't work in IK 3.3ramesh.chandrasekaran
Let all the sound codecs compile only when CONFIG_STM_MSP_SPI config is selected Signed-off-by: Ramesh Chandrasekaran <ramesh.chandrasekaran@stericsson.com>
2012-03-12video: b2r2: Fix kernel headers check problemPhilippe Langlais
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
2012-03-12hwmem: Fix kernel headers check problemPhilippe Langlais
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
2012-03-09DocBook: Fix mrproper rule in Documentation/DocBookPhilippe Langlais
media.xml has been renamed into media_api.xml to avoid delete media directory Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
2012-03-07Revert "fix cache coherence issues with bounce buffers"Philippe Langlais
This reverts commit 32232d89f7d9295579efbf7800f863776433d662.
2012-03-07Merge branch 'storage-mmc' into integration-linux-ux500Philippe Langlais
Conflicts: arch/arm/mach-ux500/board-mop500-sdi.c drivers/mmc/card/block.c drivers/mmc/host/mmci.c drivers/mmc/host/mmci.h
2012-03-07mmc: mmci: optimize pre_req if no previous requestPer Forlin
Don't prepare DMA in the pre_req hook if there is no previous request. Instead, prepare DMA while start command is being issued. ST-Ericsson Linux next: N/A ST-Ericsson ID: 371812 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I0008b79cbe0e87f830365e689795f344aac3014b Signed-off-by: Per Forlin <per.forlin@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/36181 Reviewed-by: QATOOLS Reviewed-by: QABUILD Reviewed-by: Ulf HANSSON <ulf.hansson@stericsson.com>
2012-03-06ARM: u8500: board-sdi: Use SLEEP cmd for sdi4 (eMMC)Ulf Hansson
According to the eMMC spec the card needs to be put in sleep state before the VCC power is cut to the card. Sandisk iNAND will not be able to re-initialized in a resume unless this sequence is followed. ST-Ericsson Linux next: NA ST-Ericsson ID: 417815 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: Id41cc0d2d66d87621889bc5b6b4e98fcaaba2286 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/51463
2012-03-06ARM: mmci: DMA preparations in parellel with cmdPer Forlin
Do DMA preparations after start_command() instead of before. DMA is being prepared while the controller process the read/write cmd. This flow will decrease the start up latency which improves the throughput, especially for small transfers. ST-Ericsson Linux next: N/A ST-Ericsson ID: 371812 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I98db024658cac5fe6ee09e4250c31e53a643bead Signed-off-by: Per Forlin <per.forlin@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/36180 Reviewed-by: QABUILD Reviewed-by: Ulf HANSSON <ulf.hansson@stericsson.com>
2012-03-06mmc: core: Clean up after mmc_pre_req if card was removedUlf Hansson
Make sure mmc_start_req cancel the prepared job, if the request was prevented to be started due to the card has been removed. This bug was introduced in commit: mmc: allow upper layers to know immediately if card has been removed Change-Id: I5e35e668bd3715c62081e725eca8eb073d19e9a6 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/51442 Reviewed-by: Per FORLIN <per.forlin@stericsson.com>
2012-03-06ARM: u8500: SDI: enable ERASE_CAP on sdi2Per Forlin
Tested with iozone and should give around 5-20% increased write performance for continuous writes. Random writes a bit less improvements. Change-Id: Ia48f8084fabeb6b927f4bb0bdf88c39da05c8f58 Signed-off-by: Per Forlin <per.forlin@stericsson.com> Signed-off-by: Johan RUDHOLM <johan.rudholm@stericsson.com> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50692
2012-03-06ARM: u8500: board-sdi: Enable SDR12 and SDR25 for SD-cardUlf Hansson
Enable support for SDR12 and SDR25 for UHS-I cards. This means 1.8V I/O voltage will be used instead of the default 3V. Change-Id: If154c3797549d3cbedccafcc4b3de75dfd035879 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/51101 Reviewed-by: QABUILD Reviewed-by: Per FORLIN <per.forlin@stericsson.com>
2012-03-06ARM: u8500: board-sdi: ios_handler handles voltage switchUlf Hansson
The ios_handler, which is used for SD-cards, is now able to switch voltage level between 3V and 1.8V. This is needed to support UHS-I card which supports 1.8V I/O. Change-Id: I3f2d467a384c6b672064ec1d993c6d8b1acba7e5 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50398 Reviewed-by: QABUILD Reviewed-by: Per FORLIN <per.forlin@stericsson.com>
2012-03-06mmc: mmci: Add support for start_signal_voltage_switchUlf Hansson
This function switches I/O voltage, which is needed to support UHS-I cards with 1.8V I/O. Change-Id: Id33a9c6e15bd4ba598e533bf9115cb7583369706 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50383 Reviewed-by: Per FORLIN <per.forlin@stericsson.com>
2012-03-06mmc: core: Fixup suspend/resume issues for UHS-I cardsUlf Hansson
Even if cards supports 1.8V I/O voltage those should anyway be initialized at 3.3V I/O according to (e)MMC, SD and SDIO specs. Some eMMC and embedded SDIO devices are able to be initialized at 1.8V as well, but it is better to be safe. Do note that initialization in this context means that the card has been completely powered off, otherwise the card will remain at the last I/O voltage level that were negotitiated. Due to the above being taken care of the suspend/resume issues for UHS-I SD-cards has been fixed. Change-Id: Ia906f69d44b5be8374b0b536881190f67757b03e Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50999 Reviewed-by: QABUILD Reviewed-by: Johan RUDHOLM <johan.rudholm@stericsson.com>
2012-03-06mmc: mmci: Fixup post error handling for dmaUlf Hansson
The next pointers for the next dma job needs to be reset when an error occurs. Change-Id: Ieae63ccb97b11c0f6edb7b383c84259082b83760 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/50454 Reviewed-by: Per FORLIN <per.forlin@stericsson.com> Reviewed-by: QABUILD
2012-03-06ARM: u8500: board-sdi: Remove not needed ocr_maskUlf Hansson
For sdi0 and sdi4 there are external regulators connected to the cards ("vmmc"). These will be used to find out the supported ocr_masks. Change-Id: I67b80bc14c78a45866aa4b2d5f07903d2ee414d3 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/49937 Reviewed-by: Jonas ABERG <jonas.aberg@stericsson.com> Reviewed-by: QABUILD
2012-03-06mmc: mmci: Do not finalize dma job at data error irqUlf Hansson
mmci_dma_finalize must not be executed when a data error irq has been received. We do mmci_dma_unmap directly instead and moreover make sure the dma handles are reset as soon as the dma job is done/terminated. Change-Id: Ib4ed3f380f4383cb2a28613552569b950c5204a5 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/49925 Reviewed-by: Per FORLIN <per.forlin@stericsson.com>
2012-03-06mmc: mmci: Cleanup code for DMA handlingUlf Hansson
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 minor corrections at DMA errors for terminating the same DMA job twice has also been fixed. ST-Ericsson Linux next: N/A ST-Ericsson ID: 371812 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I2fedfc906ec861ab431f43c333237adb85f2fa99 Signed-off-by: Per Forlin <per.forlin@stericsson.com> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/47628
2012-03-06mmc: init sysfs attr to fix lockdep warningsRabin Vincent
BUG: key df230ba4 not in .data! ------------[ cut here ]------------ WARNING: at kernel/lockdep.c:2885 sysfs_add_file_mode+0x4c/0xb0() Modules linked in: [<c01a36ac>] (unwind_backtrace+0x0/0xec) from [<c01c90a0>] (warn_slowpath_common+0x4c/0x64) [<c01c90a0>] (warn_slowpath_common+0x4c/0x64) from [<c01c90d0>] (warn_slowpath_null+0x18/0x1c) [<c01c90d0>] (warn_slowpath_null+0x18/0x1c) from [<c02c5ad8>] (sysfs_add_file_mode+0x4c/0xb0) [<c02c5ad8>] (sysfs_add_file_mode+0x4c/0xb0) from [<c04c1df4>] (mmc_add_disk+0xb8/0x154) [<c04c1df4>] (mmc_add_disk+0xb8/0x154) from [<c04c1f78>] (mmc_blk_probe+0xe8/0x138) [<c04c1f78>] (mmc_blk_probe+0xe8/0x138) from [<c04b72d4>] (mmc_bus_probe+0x18/0x1c) [<c04b72d4>] (mmc_bus_probe+0x18/0x1c) from [<c03f2c90>] (really_probe+0x98/0x148) [<c03f2c90>] (really_probe+0x98/0x148) from [<c03f2d88>] (driver_probe_device+0x48/0x60) [<c03f2d88>] (driver_probe_device+0x48/0x60) from [<c03f21e8>] (bus_for_each_drv+0x44/0x74) [<c03f21e8>] (bus_for_each_drv+0x44/0x74) from [<c03f2f08>] (device_attach+0x78/0xa4) [<c03f2f08>] (device_attach+0x78/0xa4) from [<c03f2020>] (bus_probe_device+0x24/0x40) [<c03f2020>] (bus_probe_device+0x24/0x40) from [<c03f0ff0>] (device_add+0x174/0x2b4) [<c03f0ff0>] (device_add+0x174/0x2b4) from [<c04b7500>] (mmc_add_card+0x138/0x188) [<c04b7500>] (mmc_add_card+0x138/0x188) from [<c04b91bc>] (mmc_attach_mmc+0x108/0x178) [<c04b91bc>] (mmc_attach_mmc+0x108/0x178) from [<c04b5c08>] (mmc_rescan_try_freq+0x5c/0x7c) [<c04b5c08>] (mmc_rescan_try_freq+0x5c/0x7c) from [<c04b67ec>] (mmc_rescan+0x1c8/0x20c) [<c04b67ec>] (mmc_rescan+0x1c8/0x20c) from [<c01e250c>] (process_one_work+0x2ac/0x4c8) [<c01e250c>] (process_one_work+0x2ac/0x4c8) from [<c01e29f8>] (worker_thread+0x144/0x234) [<c01e29f8>] (worker_thread+0x144/0x234) from [<c01e8280>] (kthread+0x80/0x88) [<c01e8280>] (kthread+0x80/0x88) from [<c019dc88>] (kernel_thread_exit+0x0/0x8) ---[ end trace 90d62d7618c6b90e ]--- Change-Id: I123e84b08e085d1b562674533417cb43f295095d Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com> ST-Ericsson ID: 413918 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I216974bfa1323d3a390ee8e8acc029c13a9525f5 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/47172 Tested-by: Rabin VINCENT <rabin.vincent@stericsson.com> Reviewed-by: QABUILD Reviewed-by: Johan RUDHOLM <johan.rudholm@stericsson.com> Reviewed-by: Rabin VINCENT <rabin.vincent@stericsson.com>
2012-03-06mmc: mmci: Use ios_handler to save powerUlf Hansson
To disable a levelshifter when we are in an idle state will decrease current consumption. We make use of the ios_handler at runtime suspend and at regular suspend to accomplish this. Of course depending on the used levelshifter the decrease of current differs. For ST6G3244ME the value is up to ~200 uA. Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Change-Id: Ie782d3af7932730c442dcb6c7f12b2f69dcac75e Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44399 Reviewed-by: QABUILD Reviewed-by: QATEST
2012-03-06mmc: mmci: Implement PM runtime callbacks to save powerUlf Hansson
In the runtime_suspend callback we make use of mmci_save to disable the VCORE regulator and the MCLK to decrease current consumption. At runtime resume, we use mmci_restore to re-enable the resourses again. From now on this will mean that especially the mmci_restore function must be fast to execute since otherwise request latency will be introduced. For the ARM Primcell PL180, the MMCIPOWER register is used to control an external power supply to the card. Thus we need to prevent the runtime callbacks from doing save and restore, otherwise the power to card will be cut. This is done by adding a new flag to the variant data. Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Change-Id: Ic6af2f59e57df82acb4be730bb855e1d39c9439b Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44398 Reviewed-by: QABUILD
2012-03-06mmc: mmci: Decrease current consumption in suspendUlf Hansson
To decrease current consumption in suspend state the VCORE regulator, the MCLK and PCLK for the ARM PL18x are now disabled. When resuming the resourses are re-enabled and register values for MMCICLOCK, MMCIPOWER and MMCIMASK0 are restored. Change-Id: I400237bf67fa37861d6fb47c4a2fd493b58c3a60 Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44397 Reviewed-by: QABUILD
2012-03-06mmc: mmci: Fixup use of runtime PM and use autosuspendUlf Hansson
Added use of runtime PM autosuspend feature, with a fixed timeout of 50 ms. This will prevent adding a latency, although very minor, for _every_ request. Moreover the runtime_get_sync is now also used in set_ios and suspend since the runtime resourses are needed here as well. Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Change-Id: Iabf2e109abb8a5a0459d77d813e04d8a2e9289c5 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44396 Reviewed-by: QABUILD
2012-03-06mmc: mmci: Cache MMCICLOCK and MMCIPOWER registerUlf Hansson
Instead of reading a register value everytime we need to apply a new value for it, maintain a cached copy for it. This also means we are able to skip writes that are not needed. Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Change-Id: I57fdb1aff8906334ff42d6d808c526e69a0203a4 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44395 Reviewed-by: Fredrik SODERSTEDT <fredrik.soderstedt@stericsson.com> Reviewed-by: QABUILD Reviewed-by: Johan RUDHOLM <johan.rudholm@stericsson.com>
2012-03-06mmc: mmci: Change from using legacy suspendUlf Hansson
This patch switch from using the legacy suspend/resume to the new way of registering PM callbacks. No functional change is done. Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Change-Id: I13a620c58d1c89f9d012503c40a51e7a79b1d663 Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44394 Reviewed-by: QABUILD
2012-03-06mmc: mmci: Do not release spinlock in request_endUlf Hansson
The patch "mmc: core: move ->request() call from atomic context", is the reason to why this change is possible. This simplifies the error handling code execution path quite a lot and potentially also fixes some error handling hang problems. Tested-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Change-Id: Ibdad8f4d9295b539928556e94c7652d3bdb66ddc Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44393 Reviewed-by: QABUILD
2012-03-06mmc: Add old-style pwr/perm boot part lockingJohan Rudholm
Add backwards-compatible sysfs nodes for locking the boot partitions power and permanently read-only. This is done by writing "pwr_ro" or "perm_ro" to /sys/block/mmcblkXbootY/ro_lock ST-Ericsson ID: 344197 ST-Ericsson FOSS-OUT ID: Trivial ST-Ericsson Linux next: NA Change-Id: Ibe1874bbb3b1b6ce9f7955537b5e083e97f69d11 Signed-off-by: Johan Rudholm <johan.rudholm@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44842 Reviewed-by: Ulf HANSSON <ulf.hansson@stericsson.com>
2012-03-06u5500: sdi: deprecate v1 hardwarePhilippe Langlais
DB5500 v1 is no longer supported and now the code makes the assumption that it runs on hardware revision >= v2. So, lets deprecate all the v1 codes. Signed-off-by: srinidhi kasagar <srinidhi.kasagar@stericsson.com>
2012-03-06ARM: ux500: Use MMC_CAP2_NO_SLEEP_CMD for eMMC devicesUlf Hansson
Prevent mmc core from sending sleep commands during suspend. ST-Ericsson ID: 399692 ST-Ericsson FOSS-OUT ID: NA Change-Id: I7969818579646eea6fc97055ab0b0cf4c324c05d Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/40056 Reviewed-by: Naveen Kumar GADDIPATI <naveen.gaddipati@stericsson.com> Reviewed-by: P.Hanumath PRASAD <hanumath.prasad@stericsson.com> Tested-by: Naveen Kumar GADDIPATI <naveen.gaddipati@stericsson.com> Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/44237
2012-03-06u5500: Move the SD/MMC card to different phy chanNarayanan G
Currently, the eMMC and external SD/MMC card use same physical channels in the same event group. This patch moves the SD/MMC card to use a different eventgroup. There are several cross cases in which both these are used simultaneously. There seems to be an improvement in performace of SD card cross use-cases if these are in different channels. ST-Ericsson ID: 401481 ST-Ericsson FOSS-OUT ID: NA ST-Ericsson Linux next: NA Change-Id: I2661ce31177f0e637200ce7d65f7430b821e3292 Signed-off-by: Narayanan G <narayanan.gopalakrishnan@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/40898 Reviewed-by: QATOOLS Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
2012-03-06mmc: mmci: Fix PIO read for small SDIO packetsStefan Nilsson XK
Corrects a bug in MMCI host driver which silently causes small reads (< 4 bytes as only used in SDIO) from PL-18X to fail. ST-Ericsson Linux next: - ST-Ericsson ID: 401293 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: Ieb14fc792c43429bf396532ed403b1ecc0efcd74 Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com> Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Fredrik Soderstedt <fredrik.soderstedt@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/40802 Reviewed-by: QABUILD
2012-03-06mmc: mmci: Use HWFC when possibleStefan Nilsson XK
HW flow control should not be used for write transfers less then 8 bytes. All other transfers should use HW flow control. ST-Ericsson Linux next: NA ST-Ericsson ID: 398871 ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I51044d26cfc7df033852becbbc6e796396dfb45f Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com> Signed-off-by: Fredrik Soderstedt <fredrik.soderstedt@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/40191 Reviewed-by: QATOOLS Reviewed-by: QABUILD Reviewed-by: Ulf HANSSON <ulf.hansson@stericsson.com>
2012-03-06mmc: Minimize resume-time by deferring resumeUlf Hansson
Typically an sd/mmc card takes around 200 - 1100 ms to initialize when the power to the card has been cut, which is what happens during a suspend/resume sequence. All device's resume time adds up to the total kernel resume time. Some use cases requires the kernel to be resumed fast, to be able to meet deadlines. One use case example is WLAN SOFT_AP, but there are certainly more. This patch schedules a delayed work to do a deferred resume of the mmc host, if the bus holds a card of SD or MMC type. The reason for not supporting SDIO and SDcombo cards at this stage, is because the SDIO API is synchronus, which complicates request locking mechanism when waiting for a deferred resume to be completed. While waiting for a deferred resume to be completed, detect works are prevented from doing a new rescan. If a mmcblk request arrives, the deferred resume will be synced immediately. The deferred resume is scheduled 3000 ms after the resume request arrived. The idea behind this timer value is to let the mmc host being able to accept a new suspend request before it has been deferred resumed and thus not increase the resume to suspend time if not really needed. Change-Id: I7e97e59c8709cf5d8e3c76478771ddf6062a54ec Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/39692
2012-03-06mmc: block: Remove use of mmc_blk_set_blksizeUlf Hansson
According to the specifications for SD and (e)MMC default blocksize (named BLOCKLEN in Spec.) must always be 512 bytes. Since we hardcoded to always use 512 bytes, we do not explicitly have to set it. Future improvements should potentially make it possible to use a greater blocksize than 512 bytes, but until then let's skip this. Change-Id: Id8b844858caef3a28df838d85086593b8b16277d Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/39740 Reviewed-by: QABUILD Reviewed-by: Stefan NILSSON9 <stefan.xk.nilsson@stericsson.com>
2012-03-06sdi: u5500: detect pre-R3A boardsPhilippe Langlais
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
2012-03-06sdi: ux500: Coding style fixesPhilippe Langlais
Fix the most obvious violations of the kernel coding style Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
2012-03-06mach-ux500:u5500: Add missing CONFIG_STE_DMA40 into board-u5500-sdi.cHanumath Prasad
Signed-off-by: Hanumath Prasad <hanumath.prasad@stericsson.com> Signed-off-by: Philippe Langlais <philippe.langlais@stericsson.com>
2012-03-06ARM: ux500: Enable levelshifter at MMC_POWER_ON onlyUlf Hansson
There is no need to enable the levelshifter in the MMC_POWER_UP state. Moreover we are not in a stable state for starting to communicate with the SD-card. Thus we shall not enable the levelshifter in this state. Change-Id: I6fbcb5643513ebf658a2eb198d4a6ac24fbac872 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/36502 Reviewed-by: P.Hanumath PRASAD <hanumath.prasad@stericsson.com> Tested-by: P.Hanumath PRASAD <hanumath.prasad@stericsson.com> Reviewed-by: Stefan NILSSON9 <stefan.xk.nilsson@stericsson.com> Reviewed-by: Srinidhi KASAGAR <srinidhi.kasagar@stericsson.com>
2012-03-06ARM: ux500: Optimize ios_handler for SD-cardUlf Hansson
The ios_handler may be called several times without a changed power_mode, thus make sure the power_mode has changed before we act on it. Change-Id: I72933da44b6930a0ed4b0f0f1e294443dba2b30d Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/36215
2012-03-06ARM: ux500: SDI: enable DMA on all SDI devicesPer Forlin
Enable DMA again now when power save for MMC and DMA is in place. Patch is tested: * suspend and resume successfully in Android. * suspend video playback from sd-card and resume it successfully in Android. ST-Ericsson ID: 370129 ST-Ericsson Linux next: NA ST-Ericsson FOSS-OUT ID: Trivial Change-Id: I4eb9367c3feeb8661e33035d4d3022205b9e924b Signed-off-by: Per Forlin <per.forlin@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/35325 Reviewed-by: Stefan NILSSON9 <stefan.xk.nilsson@stericsson.com> Tested-by: Stefan NILSSON9 <stefan.xk.nilsson@stericsson.com> Reviewed-by: Ulf HANSSON <ulf.hansson@stericsson.com>
2012-03-06mmc: mmci: Support MMC_PM_KEEP_POWERUlf Hansson
Add MMC_PM_KEEP_POWER to pm_caps so SDIO clients are able to use this option to prevent power off in suspend. Change-Id: I36df77e66ca8845ceeffb9d5163d4c1e77821b7d Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/34918
2012-03-06mmc: mmc_test: add 4 byte alignment testsPer Forlin
Add test cases to verify alignment with 4 bytes and 32 bytes for sg element lengths and memory addresses. These tests were added to investigate DMA constraints when transferring buffers that are not aligned with 32 bytes. ST-Ericsson ID: 363565 ST-Ericsson FOSS-OUT ID: Trivial ST-Ericsson Linux next: NA Change-Id: I6363a018647f22e5d69920af2cb30dfe2b2a699e Signed-off-by: Per Forlin <per.forlin@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/34362 Reviewed-by: QATOOLS Reviewed-by: Ulf HANSSON <ulf.hansson@stericsson.com>
2012-03-06MMCI: Increase max_segs from 16 to 128Ulf Hansson
A significant increase (10-20%) in performance throughput for USB mass storage is the reason for incrementing the value. By some reason the USB driver allocates buffers which requires a scattergather list to contain a lot more than 16 elements to get optimal performance. This change sets the maximum elements to 128. Tests with large reads and large writes (100 MiB) show that the throughput increase is significant for write (10% for this test) but not for read. Tests are run on a Linux host with ext4 FS on the gadget mass storage device. The sg-len still exceeds 16 for the read tests but the performance gain is low or nothing. Change-Id: I5f23a470f6d979905f6952b947411cf848f667bb Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Per Forlin <per.forlin@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/16071 Reviewed-by: Sebastian RASMUSSEN <sebastian.rasmussen@stericsson.com> Reviewed-by: Stefan NILSSON9 <stefan.xk.nilsson@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/32160
2012-03-06mmc: mmci: Change vdd_handler to a generic ios handlerUlf Hansson
The purpose of the vdd_handler does not make sense. We remove it and use a more generic approach instead. A new "ios" handler is thus added, the purpose of which e.g. can be to control GPIO pins to a levelshifter. Previously the vdd_handler was also used for making additional changes to the MMCIPOWER register bits. This option is now removed. This patch is based upon a patch from Sebastian Rasmussen. Change-Id: I250c7d243946acd9cc9da2d4d18394db1256cd27 Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com> Signed-off-by: Sebastian Rasmussen <sebastian.rasmussen@stericsson.com> Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/31883
2012-03-06mmci: add constraints on alignment for SDIOUlf Hansson
Buffers must be 4 bytes aligned due to restrictions that the PL18x FIFO accesses must be done in a 4-byte aligned manner. Enable DMA_REQCTL for SDIO to support write of not 32 bytes aligned sg element lengths. In PIO mode any buffer length can be handled as long as the buffer address is 4 byte aligned. Signed-off-by: Ulf Hansson <(address hidden)> Signed-off-by: Per Forlin <(address hidden)> Signed-off-by: Stefan Nilsson XK <(address hidden)>
2012-03-06mmci: Provide option to configure bus signal directionUlf Hansson
The ST Micro variant supports bus signal direction indication. A new member in the variant struct is added for this. Moreover the actual signal direction configuration is board specific, thus the amba mmci platform data is extended with a new member to be able provide mmci with these specific board configurations. This patch is based upon a patch from Sebastian Rasmussen. Signed-off-by: Ulf Hansson <(address hidden)> Signed-off-by: Sebastian Rasmussen <(address hidden)> Acked-by: Linus Walleij <(address hidden)>