Age | Commit message (Collapse) | Author |
|
See 1e45860f541497d73162305d48b638d9b87e1ae3 "ARM: 7366/3: amba: Remove AMBA level regulator support"
for more precision.
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
|
|
ST-Ericsson ID: 371953
Signed-off-by: Bengt Jonsson <bengt.g.jonsson@stericsson.com>
|
|
Do not use polling to detect non removable cards.
ST-Ericsson ID: 372618
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I18797e5f85d83213bbf520277576425bed4c68f2
Signed-off-by: Fredrik Soderstedt <fredrik.soderstedt@stericsson.com>
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/51859
|
|
Due to timing issues for command direction signaling when
using a levelshifter, we limit the frequency to 25 MHz while
sending commands. The frequency is just limited during the
command send/response, then it is restored to it's original
value.
ST-Ericsson ID: 355531
ST-Ericsson Linux next: -
ST-Ericsson FOSS-OUT ID: Trivial
Change-Id: I15d06e3c331a4db717a904937ce6ce60972d185e
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
Reviewed-on: http://gerrit.lud.stericsson.com/gerrit/51785
|
|
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>
|
|
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
|
|
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>
|
|
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
|
|
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>
|
|
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>
|
|
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>
|
|
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
|
|
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
|
|
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>
|
|
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
|
|
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>
|
|
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
|
|
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
|
|
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
|
|
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>
|
|
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>
|
|
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
|
|
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>
|
|
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>
|
|
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
|
|
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
|
|
Signed-off-by: Hanumath Prasad <hanumath.prasad@stericsson.com>
Signed-off-by: Philippe Langlais <philippe.langlais@stericsson.com>
|
|
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>
|
|
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
|
|
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
|
|
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>
|
|
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
|
|
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)>
|
|
For data writes smaller <= 8 bytes (only SDIO case), HW flow control was
disabled but never re-enabled again. This meant that a following large read
request would randomly give buffer overrun errors.
Moreover HW flow control is not needed for transfers that fits in the
FIFO of PL18x. Thus it is disabled for write operations <= the FIFO size.
Signed-off-by: Ulf Hansson <(address hidden)>
Signed-off-by: Stefan Nilsson XK <(address hidden)>
|
|
For the ux500v2 variant of the PL18x block, non power of two block
sizes are supported. This will make it possible to decrease data
overhead for SDIO transfers.
Signed-off-by: Stefan Nilsson XK <(address hidden)>
Signed-off-by: Ulf Hansson <(address hidden)>
|
|
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
mach-ux500: Add SDIO WLAN support on sdi1
Fixing sdi0 access on snowball
MMC_CAP_SD_HIGHSPEED is not supported on snowball resulting on
initialisation errors.
Signed-off-by: Mathieu Poirier <mathieu.poirier@linaro.org>
mach-ux500: sdio/wlan: Initialized SDIO after all others SDI, because it blocks SDI thread till CW1200/WLAN is up
Temporary workaround, a better way in SDIO card detection must be found
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
mach-ux500: Add SDIO VDD handler for GPIO config
It seems as PL18X does not drive all pins in a correct way when the block
is powered but not initialized. Since CW1200 is sensitive to this (it samples
the DAT2 signal level on bootup to choose between SPI and SDIO mode), it must
be assured that the pins are in a correct state at all times.
This is done by adding a VDD handler for SDI1 which reconfigures all the pins
to GPIO pins with pullups when PL18X is not in an initialized state.
ST-Ericsson ID: 327586
ST-Ericsson FOSS-OUT ID: Trivial
Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>
mach-ux500: Enable DMA for sdi1
ST-Ericsson ID: 329007
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
mach-ux500: mmc: Fix for MMC working on u5500 and DMA support.
Configuring DMA support on u5500 for MMC.
ST Ericsson ID:WP257117
Signed-off-by: seshagh <seshagiri.holi@stericsson.com>
mach-ux500: sdi0: Enable 8 bit mode for MMC
Enable 8-bit mode in platform data for EMMC driver
in U4500.
ST-Ericsson Id: ER 332947
Signed-off-by: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com>
mach-ux500: Use pm_runtime for sdi[x] for GPIOs + board-mop500-pins.c alignment
Setup GPIO pins for sdi0, sdi1, sdi2 and sdi4 to be controlled
by pm_runtime. GPIO pins for card detect and levelshifter is not
included.
ST-Ericsson ID: ER334765
ST-Ericsson FOSS-OUT ID: Trivial
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
mach-ux500:sdi3: Added platform data for SDIO support
Added platform data for SDIO support on U4500 board
Needs rework for power saving part (MMC_CAP_DISABLE, wakeup_handler not present)
ST-Ericsson Id: AP 337858
Signed-off-by: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com>
mach-ux500:u5500: Fixup vdd_handler for sdi1
Levelshifter was not enabled at POWER_ON, this is corrected.
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
mach-ux500:u5500: set vsel of levelshifter to 2.9V
configure the vsel to get 2.9V output for the levelshifter
ST-Ericsson ID: ER 339616
Signed-off-by: Hanumath Prasad <hanumath.prasad@stericsson.com>
mach-ux500: Fix build problems temporary
Very temporary fixes to make it build until we have proper
fixes for this issues.
Signed-off-by: Robert Marklund <robert.marklund@stericsson.com>
mach-ux500: mmc: Fix board merge & cleanup
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
mach-ux500: Suppress ../../ for external include
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
ARM: ux500: sdi: Remove u8500 v1 support
ST-Ericsson Linux next: Not tested, ask SSM for ER
ST-Ericsson ID: 342987
ST-Ericsson FOSS-OUT ID: Trivial
Signed-off-by: Jonas Aaberg <jonas.aberg@stericsson.com>
mach-ux500: Solved rebase conflict for sd/mmc
U8500:
From commit 69a86710 by Philippe Langlais, corrections done for
MCI defines.
From commit 2e7233f2 by Philippe Langlais, corrections done for
SDIO_CMD53 workaround.
U5500:
From commit be4f9997 by Philippe Langlais, corrections done for
SDIO_CMD53 workaround.
u5500:SD/MMC migrate to kernel3.0
SD/MMC platform data migrate to kernel3.0
ST-Ericsson ID: 352334
ST-Ericsson Linux next: NA
ST-Ericsson FOSS-OUT ID: NA
Signed-off-by: Naveen Kumar Gaddipati <naveen.gaddipati@stericsson.com>
mach-ux500:u8500: Clean up sdi[n] configurations
This makes an inital clean up of the mmc/sd/sdio devices
for kernel 3.0.
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>
mach-ux500:u5500: Clean up sdi[n] configurations
This makes an initial clean up of the mmc/sd/sdio devices
for kernel 3.0.
Signed-off-by: Stefan Nilsson XK <stefan.xk.nilsson@stericsson.com>
ux500: u8500: Change DMA configuration for SD-card
This patch is a mixture of two earlier patches:
By Sebastian Rasmussen:
ux500: Use other logical DMA channel for SD-card
Previously PoP eMMC SDI has been in the same event group as
SD-card SDI, which means that they have been sharing the
same physical DMA channels. Moreover one of those channels
was reserved for other purposes, causing transfers for each
interface to compete for the same physical DMA channel. In
addition there appears to be a HW issue that causes data to
be lost in the middle of DMA transfers, which ended up with
DMAC and MMCI not agreeing on how much data was still to be
transferred, thereby resulting in a hang and eventually in
a crash.
This patch moves SD-card DMA transfers to another event
group which means that it no longer competes for the same
physical DMA channel. This results in that no data is lost
in the transfers and no hang is observed.
By Rabin Vincent:
ux500: mop500: force SD/MMC and MSP2 TX onto different channels
SD/MMC with event line 1 can be in channel 0 or 1. Force both Rx
and Tx onto channel 0. Both will anyway not used at the same time,
and with this change channel 1 will be available for MSP2 Tx
without sharing.
Signed-off-by: Ulf Hansson <ulf.hansson@stericsson.com>
mach-ux500: Re-introduce specific mmc init for Snowball boards
Signed-off-by: Philippe Langlais <philippe.langlais@linaro.org>
fix board-mop500-sdi
|
|
Signed-off-by: Mian Yousaf Kaukab <mian.yousaf.kaukab@stericsson.com>
fs/partitions: Adapt blkdevparts to new interface of kernel 2.6.35
moved into block/partitions for 3.3
Signed-off-by: Philippe Langlais <philippe.langlais@stericsson.com>
|
|
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6
Pull PA-RISC fixes from James Bottomley:
"This is a set of three bug fixes that gets parisc running again on
systems with PA1.1 processors.
Two fix regressions introduced in 2.6.39 and one fixes a prefetch bug
that only affects PA7300LC processors. We also have another pending
fix to do with the sectional arrangement of vmlinux.lds, but there's a
query on it during testing on one particular system type, so I'll hold
off sending it in for now."
* tag 'parisc-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/jejb/parisc-2.6:
[PARISC] fix panic on prefetch(NULL) on PA7300LC
[PARISC] fix crash in flush_icache_page_asm on PA1.1
[PARISC] fix PA1.1 oops on boot
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
Pull x86 linker bug workarounds from Peter Anvin.
GNU ld-2.22.52.0.[12] (*) has an unfortunate bug where it incorrectly
turns certain relocation entries absolute. Section-relative symbols
that are part of otherwise empty sections are silently changed them to
absolute. We rely on section-relative symbols staying section-relative,
and actually have several sections in the linker script solely for this
purpose.
See for example
http://sourceware.org/bugzilla/show_bug.cgi?id=14052
We could just black-list the buggy linker, but it appears that it got
shipped in at least F17, and possibly other distros too, so it's sadly
not some rare unusual case.
This backports the workaround from the x86/trampoline branch, and as
Peter says: "This is not a minimal fix, not at all, but it is a tested
code base."
* 'x86/ld-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
x86, relocs: When printing an error, say relative or absolute
x86, relocs: Workaround for binutils 2.22.52.0.1 section bug
x86, realmode: 16-bit real-mode code support for relocs tool
(*) That's a manly release numbering system. Stupid, sure. But manly.
|
|
Pull block layer fixes from Jens Axboe:
"A few small, but important fixes. Most of them are marked for stable
as well
- Fix failure to release a semaphore on error path in mtip32xx.
- Fix crashable condition in bio_get_nr_vecs().
- Don't mark end-of-disk buffers as mapped, limit it to i_size.
- Fix for build problem with CONFIG_BLOCK=n on arm at least.
- Fix for a buffer overlow on UUID partition printing.
- Trivial removal of unused variables in dac960."
* 'for-linus' of git://git.kernel.dk/linux-block:
block: fix buffer overflow when printing partition UUIDs
Fix blkdev.h build errors when BLOCK=n
bio allocation failure due to bio_get_nr_vecs()
block: don't mark buffers beyond end of disk as mapped
mtip32xx: release the semaphore on an error path
dac960: Remove unused variables from DAC960_CreateProcEntries()
|
|
Pull one more networking bug-fix from David Miller:
"One last straggler.
Eric Dumazet's pktgen unload oops fix was not entirely complete, but
all the cases should be handled properly now.... fingers crossed."
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
pktgen: fix module unload for good
|
|
Occasionally, testing memcg's move_charge_at_immigrate on rc7 shows
a flurry of hundreds of warnings at kernel/res_counter.c:96, where
res_counter_uncharge_locked() does WARN_ON(counter->usage < val).
The first trace of each flurry implicates __mem_cgroup_cancel_charge()
of mc.precharge, and an audit of mc.precharge handling points to
mem_cgroup_move_charge_pte_range()'s THP handling in commit 12724850e806
("memcg: avoid THP split in task migration").
Checking !mc.precharge is good everywhere else, when a single page is to
be charged; but here the "mc.precharge -= HPAGE_PMD_NR" likely to
follow, is liable to result in underflow (a lot can change since the
precharge was estimated).
Simply check against HPAGE_PMD_NR: there's probably a better
alternative, trying precharge for more, splitting if unsuccessful; but
this one-liner is safer for now - no kernel/res_counter.c:96 warnings
seen in 26 hours.
Signed-off-by: Hugh Dickins <hughd@google.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
|
|
When the relocs tool throws an error, let the error message say if it
is an absolute or relative symbol. This should make it a lot more
clear what action the programmer needs to take and should help us find
the reason if additional symbol bugs show up.
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Cc: <stable@vger.kernel.org>
|
|
GNU ld 2.22.52.0.1 has a bug that it blindly changes symbols from
section-relative to absolute if they are in a section of zero length.
This turns the symbols __init_begin and __init_end into absolute
symbols. Let the relocs program know that those should be treated as
relative symbols.
Reported-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Cc: H.J. Lu <hjl.tools@gmail.com>
Cc: <stable@vger.kernel.org>
Cc: Jarkko Sakkinen <jarkko.sakkinen@intel.com>
|
|
A new option is added to the relocs tool called '--realmode'.
This option causes the generation of 16-bit segment relocations
and 32-bit linear relocations for the real-mode code. When
the real-mode code is moved to the low-memory during kernel
initialization, these relocation entries can be used to
relocate the code properly.
In the assembly code 16-bit segment relocations must be relative
to the 'real_mode_seg' absolute symbol. Linear relocations must be
relative to a symbol prefixed with 'pa_'.
16-bit segment relocation is used to load cs:ip in 16-bit code.
Linear relocations are used in the 32-bit code for relocatable
data references. They are declared in the linker script of the
real-mode code.
The relocs tool is moved to arch/x86/tools/relocs.c, and added new
target archscripts that can be used to build scripts needed building
an architecture. be compiled before building the arch/x86 tree.
[ hpa: accelerating this because it detects invalid absolute
relocations, a serious bug in binutils 2.22.52.0.x which currently
produces bad kernels. ]
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Link: http://lkml.kernel.org/r/1336501366-28617-2-git-send-email-jarkko.sakkinen@intel.com
Signed-off-by: Jarkko Sakkinen <jarkko.sakkinen@intel.com>
Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
Cc: <stable@vger.kernel.org>
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm
Pull a dm fix from Alasdair G Kergon:
"A fix to the thin provisioning userspace interface."
* tag 'dm-3.4-fixes-2' of git://git.kernel.org/pub/scm/linux/kernel/git/agk/linux-dm:
dm thin: fix table output when pool target disables discard passdown internally
|
|
When the thin pool target clears the discard_passdown parameter
internally, it incorrectly changes the table line reported to userspace.
This breaks dumb string comparisons on these table lines in generic
userspace device-mapper library code and leads to tables being reloaded
repeatedly when nothing is actually meant to be changing.
This patch corrects this by no longer changing the table line when
discard passdown was disabled.
We can still tell when discard passdown is overridden by looking for the
message "Discard unsupported by data device (sdX): Disabling discard passdown."
This automatic detection is also moved from the 'load' to the 'resume'
so that it is re-evaluated should the properties of underlying devices
change.
Signed-off-by: Mike Snitzer <snitzer@redhat.com>
Acked-by: Joe Thornber <ejt@redhat.com>
Signed-off-by: Alasdair G Kergon <agk@redhat.com>
|
|
Pull one more md bugfix from NeilBrown:
"Fix bug in recent fix to RAID10.
Without this patch, recovery will crash"
* tag 'md-3.4-fixes' of git://neil.brown.name/md:
md/raid10: fix transcription error in calc_sectors conversion.
|
|
git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile
Pull tile tree bugfix from Chris Metcalf:
"This fixes a security vulnerability (and correctness bug) in tilegx"
* 'stable' of git://git.kernel.org/pub/scm/linux/kernel/git/cmetcalf/linux-tile:
tilegx: enable SYSCALL_WRAPPERS support
|