Device-Tree (imx6qdl-dheva01.dtsi): Add displays (ID01 & ID02)
DRM: Pixel-clk modification
Devicetree: Add comment for UARTs
cfi2: changed eim timings fpga access
mmc: sdhci: add platfrom get_max_timeout hook

Currently the max_discard_to is simply got by (1 << 27) / host->timeout_clk
which is assumed to be the maximum timeout value, however, some platforms
maximum timeout counter may not be 1 << 27, e.g. i.MX uSDHC is 1 << 28.
Thus 1 << 27 may not be correct for such platforms.

It is also possible that other platforms may have different problems.
To be flexible, we add a get_max_timeout hook to get the correct
maximum timeout value for these platforms.

Signed-off-by: Dong Aisheng <b29396@xxxxxxxxxxxxx>
Reported-by: Ed Sutter <ed.sutter@xxxxxxxxxxxxxxxxxx>
mmc: sdhci-esdhc-imx: fix incorrect max_discard_to for uSDHC

The default sdhci code use the 1 << 27 as the max timeout counter to
to calculate the max_discard_to, however it's not correct for uSDHC
since its the max counter is 1 << 28.
Implement esdhc_get_max_timeout to handle it correctly.

Signed-off-by: Dong Aisheng <b29396@xxxxxxxxxxxxx>
Reported-by: Ed Sutter <ed.sutter@xxxxxxxxxxxxxxxxxx>
mmc: sdhci: add platform set_timeout hook

Currently the common code assume 0xE is the maximum timeout counter
value and use it to write into the timeout counter register.
However, it's fairly possible that the different SoCs may have
different register layout on the timeout counter register.
That means 0xE may not be the correct maximum timeout value, then
the 0xE becomes meaningless.

To be flexible, this patch provides another approach for platforms
to set the correct timeout on their way.

Signed-off-by: Dong Aisheng <b29396@xxxxxxxxxxxxx>
mmc: sdhci-esdhc-imx: set the correct max timeout value for uSDHC

The default sdhci driver write 0xE into timeout counter register to
set the maximum timeout. The value is not correct for uSDHC since the
max counter value for uSDHC is 0xF.
Instead of using common timeout code in sdhci, we implement esdhc_set_timeout
to handle the difference between eSDHC and uSDHC.

Signed-off-by: Dong Aisheng <b29396@xxxxxxxxxxxxx>
mmc: sdhci: calculate max_discard_to dynamically for SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK

For host controllers using SDHCI_QUIRK_DATA_TIMEOUT_USES_SDCLK, since the card
clock is changed dynamically for different cards, it does not make sense
to use the maximum host clock to calculate max_discard_to which may lead
the max_discard_to to be much smaller than its capbility and affect the card
discard performance a lot.
e.g. the host clock is 200Mhz, but the card is working on 50Mhz. Then the
max_discard_to is only 1/4 of its real capbility.

In this patch, it uses the actual_clock to calculate the max_discard_to
dynamically as long as a new clock speed is set.

Tested with a high speed SDHC card shows:
Originally:
mmc1: new high speed SDHC card at address aaaa
mmc1: calculated max. discard sectors 49152 for timeout 1355 ms
Now:
mmc1: new high speed SDHC card at address aaaa
mmc1: calculated max. discard sectors 712704 for timeout 5422 ms
The max_discard_sectors will increase a lot which will also improve discard
performance a lot.

The one known limitation of this approach is that it does not cover the special
case for user changes the clock via sysfs, since the max_discard_to is only
initialised for one time during the mmc queue init.

Signed-off-by: Dong Aisheng <b29396@xxxxxxxxxxxxx>
mmc: sdhci-esdhc-imx: use actual_clock to calculate timeout

The timeout clock for uSDHC is SDCLK, so it's reasonable to use
the actual_clock to calculate the max timeout.

Signed-off-by: Dong Aisheng <b29396@xxxxxxxxxxxxx>
Device Tree (imx6qdl-dhcom): Change eMMC device to status "okay"
imx6_dhcom_defconfig: Add support for USB Serial FTDI chips
mmc: set /dev/mmcblkX via device-tree aliases