#
f7f3e7da |
| 06-Mar-2019 |
Ulf Hansson <ulf.hansson@linaro.org> |
mmc: mmci: Drop qcom specific header file
It seems a bit silly to have a header file to share only the qcom_variant_init() function. So, let's just drop it and move the declaration of the function i
mmc: mmci: Drop qcom specific header file
It seems a bit silly to have a header file to share only the qcom_variant_init() function. So, let's just drop it and move the declaration of the function into the common mmci.h instead.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Acked-by: Linus Walleij <linus.walleij@linaro.org>
show more ...
|
#
ea27c95a |
| 06-Mar-2019 |
Ulf Hansson <ulf.hansson@linaro.org> |
mmc: mmci: Re-work code starting DMA for the qcom variant
Having mmci_dmae_start() to invoke the shared function, dml_start_xfer(), explicitly for the qcom variant isn't very nice. Let's clean up th
mmc: mmci: Re-work code starting DMA for the qcom variant
Having mmci_dmae_start() to invoke the shared function, dml_start_xfer(), explicitly for the qcom variant isn't very nice. Let's clean up this code by moving the qcom specific parts into the qcom ->dma_start() callback and then drop dml_start_xfer() altogether.
Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Acked-by: Linus Walleij <linus.walleij@linaro.org>
show more ...
|
Revision tags: v4.19.27, v5.0, v4.19.26, v4.19.25, v4.19.24, v4.19.23, v4.19.22, v4.19.21, v4.19.20, v4.19.19 |
|
#
e9968c6f |
| 29-Jan-2019 |
Ulf Hansson <ulf.hansson@linaro.org> |
mmc: mmci: Send a CMD12 to clear the DPSM at errors
The current approach with sending a CMD12 (STOP_TRANSMISSION) to complete a data transfer request, either because of using the open-ended transmis
mmc: mmci: Send a CMD12 to clear the DPSM at errors
The current approach with sending a CMD12 (STOP_TRANSMISSION) to complete a data transfer request, either because of using the open-ended transmission type or because of receiving an error during a pre-defined data transfer, isn't sufficient for the STM32 sdmmc variant. More precisely, this variant needs to clear the DPSM ("Data Path State Machine") by sending a CMD12, for all failing ADTC commands.
Support this, by adding a struct mmc_command inside the struct mmci_host and initialize it to a CMD12 during ->probe(). Let's also add checks for the new conditions, to enable mmci_data_irq() and mmci_cmd_irq() to postpone the calls to mmci_request_end(), but instead send the CMD12.
Cc: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org> Tested-by: Ludovic Barre <ludovic.barre@st.com>
show more ...
|
#
a2b760a6 |
| 05-Feb-2019 |
Linus Walleij <linus.walleij@linaro.org> |
mmc: slot-gpio: Remove override_active_level on WP
The argument "override_active_level" made it possible to enforce a specific polarity on the write-protect GPIO line. All callers in the kernel pass
mmc: slot-gpio: Remove override_active_level on WP
The argument "override_active_level" made it possible to enforce a specific polarity on the write-protect GPIO line. All callers in the kernel pass "false" to this call after I have converted all drivers to use GPIO machine descriptors, so remove the argument and clean out this.
This kind of polarity inversion should be handled by the GPIO descriptor inside the GPIO library if needed.
This rids us of one instance of the kludgy calls into the gpiod_get_raw_value() API.
Signed-off-by: Linus Walleij <linus.walleij@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
Revision tags: v4.19.18, v4.19.17, v4.19.16, v4.19.15, v4.19.14, v4.19.13, v4.19.12, v4.19.11, v4.19.10, v4.19.9, v4.19.8 |
|
#
c8073e52 |
| 06-Dec-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add variant property to set command stop bit
On cmd12 (STOP_TRANSMISSION), STM32 sdmmc variant needs to set cmdstop bit in command register. The CPSM ("Command Path State Machine") treats
mmc: mmci: add variant property to set command stop bit
On cmd12 (STOP_TRANSMISSION), STM32 sdmmc variant needs to set cmdstop bit in command register. The CPSM ("Command Path State Machine") treats the command as a Stop Transmission command and signals abort to the DPSM ("Data Path State Machine").
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
Revision tags: v4.19.7, v4.19.6, v4.19.5, v4.19.4, v4.18.20, v4.19.3, v4.18.19, v4.19.2, v4.18.18 |
|
#
09b4f706 |
| 07-Nov-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: send stop command if sbc error issue
Refer to "4.15 set block count command" of sd specification: Host needs to issue CMD12 if any error is detected in the CMD18 and CMD25 operations.
In
mmc: mmci: send stop command if sbc error issue
Refer to "4.15 set block count command" of sd specification: Host needs to issue CMD12 if any error is detected in the CMD18 and CMD25 operations.
In sbc case, the data->stop is fill by framework.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Tested-by: Ulf Hansson <ulf.hansson@linaro.org> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
Revision tags: v4.18.17, v4.19.1, v4.19, v4.18.16, v4.18.15, v4.18.14, v4.18.13 |
|
#
46b723dd |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add stm32 sdmmc variant
This patch adds a stm32 sdmmc variant, rev 1.1. Introduces a new Manufacturer id "0x53, ascii 'S' to define new stm32 sdmmc family with clean range of amba revisio
mmc: mmci: add stm32 sdmmc variant
This patch adds a stm32 sdmmc variant, rev 1.1. Introduces a new Manufacturer id "0x53, ascii 'S' to define new stm32 sdmmc family with clean range of amba revision/configurations bits (corresponding to sdmmc_ver register with major/minor fields). Add 2 variants properties: -dma_lli, to enable link list support. -stm32_idmabsize_mask, defines the range of SDMMC_IDMABSIZER register which specify the number bytes per buffer.
DT properties for sdmmc: -Indicate signal directions (only one property for d0dir, d123dir, cmd_dir) -Select command and data phase relation. -Select "clock in" from an external driver.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
00e930d8 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add clock divider for stm32 sdmmc
The STM32 sdmmc variant has a different clock divider.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linar
mmc: mmci: add clock divider for stm32 sdmmc
The STM32 sdmmc variant has a different clock divider.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
15878e58 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add optional reset property
This patch adds a optional reset management. STM32 sdmmc variant needs to reset hardware block during the power cycle procedure (for re-initialization).
Signe
mmc: mmci: add optional reset property
This patch adds a optional reset management. STM32 sdmmc variant needs to reset hardware block during the power cycle procedure (for re-initialization).
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
b79220b3 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add variant property to not read datacnt
This patch adds a boolean property to not read datacnt register. Needed to support the STM32 sdmmc variant. MMCIDATACNT register should be read on
mmc: mmci: add variant property to not read datacnt
This patch adds a boolean property to not read datacnt register. Needed to support the STM32 sdmmc variant. MMCIDATACNT register should be read only after the data transfer is completed. When reading after an error event the read data count value may be different from the real number of data bytes transferred.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
d2141547 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add variant property to write datactrl before command
This patch adds a boolean property to allow to write datactrl before to send command, whatever the command type (read or write). Need
mmc: mmci: add variant property to write datactrl before command
This patch adds a boolean property to allow to write datactrl before to send command, whatever the command type (read or write). Needed to support the STM32 sdmmc variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
59db5e2d |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add variant property to define irq pio mask
This patch allows to define specific pio mask for variants. Needed to support the STM32 sdmmc variant which has some bits with different meanin
mmc: mmci: add variant property to define irq pio mask
This patch allows to define specific pio mask for variants. Needed to support the STM32 sdmmc variant which has some bits with different meaning (bits: 21,20,13,12,9)
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
9b279941 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add variant property to define dpsm bit
This patch adds datactrl variant property to define dpsm enable bit. Needed to support the STM32 variant (STM32 has no dpsm enable bit).
Signed-of
mmc: mmci: add variant property to define dpsm bit
This patch adds datactrl variant property to define dpsm enable bit. Needed to support the STM32 variant (STM32 has no dpsm enable bit).
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
0f244804 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add variant properties to define cpsm & cmdresp bits
This patch adds command variant properties to define cpsm enable bit and responses. Needed to support the STM32 variant (shift of cpsm
mmc: mmci: add variant properties to define cpsm & cmdresp bits
This patch adds command variant properties to define cpsm enable bit and responses. Needed to support the STM32 variant (shift of cpsm bit, specific definition of commands response).
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
daf9713c |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: expand startbiterr to irqmask and error check
All variants don't pretend to have a startbiterr. -While data error check, if status register return an error (like MCI_DATACRCFAIL) we must
mmc: mmci: expand startbiterr to irqmask and error check
All variants don't pretend to have a startbiterr. -While data error check, if status register return an error (like MCI_DATACRCFAIL) we must avoid to check MCI_STARTBITERR (if not desired). -expand start_err to MCI_IRQENABLE to avoid to set this bit by default.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
c931d495 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add datactrl block size variant property
This patch allows to define a datactrl block size by variant, requested by STM32 sdmmc variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.co
mmc: mmci: add datactrl block size variant property
This patch allows to define a datactrl block size by variant, requested by STM32 sdmmc variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
cd3ee8c5 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add set_clk/pwrreg callbacks
This patch adds set_clkreg and set_pwrreg callbacks at mmci_host_ops to allow to call specific variant. extends visibility of mmci_write_clk/pwrreg functions
mmc: mmci: add set_clk/pwrreg callbacks
This patch adds set_clkreg and set_pwrreg callbacks at mmci_host_ops to allow to call specific variant. extends visibility of mmci_write_clk/pwrreg functions to be used into specific file variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
e0da1721 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add validate_data callback
This patch adds validate_data callback at mmci_host_ops to check specific constraints of variant. Move mmci_validate_data function to regroup mmci_host_ops inte
mmc: mmci: add validate_data callback
This patch adds validate_data callback at mmci_host_ops to check specific constraints of variant. Move mmci_validate_data function to regroup mmci_host_ops interfaces.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
cfccc6ac |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add dma_error callback
This patch adds dma_error callback at mmci_host_ops to allow to call specific variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hanss
mmc: mmci: add dma_error callback
This patch adds dma_error callback at mmci_host_ops to allow to call specific variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
5a9f10c3 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add dma_finalize callback
This patch adds dma_finalize callback at mmci_host_ops to allow to call specific variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf
mmc: mmci: add dma_finalize callback
This patch adds dma_finalize callback at mmci_host_ops to allow to call specific variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
135ea30e |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add dma_start callback
This patch adds dma_start callback to mmci_host_ops. Create a generic mmci_dma_start function which regroup common action between variant.
Signed-off-by: Ludovic B
mmc: mmci: add dma_start callback
This patch adds dma_start callback to mmci_host_ops. Create a generic mmci_dma_start function which regroup common action between variant.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
02769968 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add get_next_data callback
This patch adds get_next_data callback to mmci_host_ops. Generic mmci_get_next_data factorizes next_cookie check and the host ops call.
Signed-off-by: Ludovic
mmc: mmci: add get_next_data callback
This patch adds get_next_data callback to mmci_host_ops. Generic mmci_get_next_data factorizes next_cookie check and the host ops call.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
47983510 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: add prepare/unprepare_data callbacks
This patch adds prepare/unprepare callbacks to mmci_host_ops. Like this mmci_pre/post_request can be generic, mmci_prepare_data and mmci_unprepare_dat
mmc: mmci: add prepare/unprepare_data callbacks
This patch adds prepare/unprepare callbacks to mmci_host_ops. Like this mmci_pre/post_request can be generic, mmci_prepare_data and mmci_unprepare_data provide common next_cookie management.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
ad7b8918 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: merge prepare data functions
This patch merges the prepare data functions. This allows to define a single access to prepare data service. This prepares integration for mmci host ops.
Sig
mmc: mmci: merge prepare data functions
This patch merges the prepare data functions. This allows to define a single access to prepare data service. This prepares integration for mmci host ops.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|
#
a813f2a2 |
| 08-Oct-2018 |
Ludovic Barre <ludovic.barre@st.com> |
mmc: mmci: introduce dma_priv pointer to mmci_host
-Introduces dma_priv pointer to define specific needs for each dma engine. This patch is needed to prepare sdmmc variant with internal dma which no
mmc: mmci: introduce dma_priv pointer to mmci_host
-Introduces dma_priv pointer to define specific needs for each dma engine. This patch is needed to prepare sdmmc variant with internal dma which not use dmaengine API. -Moves next cookie to mmci host structure to share same cookie management between all variants.
Signed-off-by: Ludovic Barre <ludovic.barre@st.com> Signed-off-by: Ulf Hansson <ulf.hansson@linaro.org>
show more ...
|