Home
last modified time | relevance | path

Searched full:mmc (Results 1 – 25 of 1283) sorted by relevance

12345678910>>...52

/linux/drivers/net/ethernet/stmicro/stmmac/
H A Dmmc_core.c14 #include "mmc.h"
18 #define MMC_CNTRL 0x00 /* MMC Control */
19 #define MMC_RX_INTR 0x04 /* MMC RX Interrupt */
20 #define MMC_TX_INTR 0x08 /* MMC TX Interrupt */
21 #define MMC_RX_INTR_MASK 0x0c /* MMC Interrupt Mask */
22 #define MMC_TX_INTR_MASK 0x10 /* MMC Interrupt Mask */
25 /* MMC TX counter registers */
58 /* MMC RX counter registers */
137 /* XGMAC MMC Registers */
243 pr_debug("stmmac: MMC ctrl register (offset 0x%x): 0x%08x\n", in dwmac_mmc_ctrl()
[all …]
/linux/drivers/mmc/host/
H A Dmeson-mx-sdhc-mmc.c3 * Amlogic Meson6/Meson8/Meson8b/Meson8m2 SDHC MMC host controller driver.
21 #include <linux/mmc/host.h>
22 #include <linux/mmc/mmc.h>
23 #include <linux/mmc/sdio.h>
24 #include <linux/mmc/slot-gpio.h>
38 void (*init_hw)(struct mmc_host *mmc);
39 void (*set_pdma)(struct mmc_host *mmc);
40 void (*wait_before_send)(struct mmc_host *mmc);
45 struct mmc_host *mmc; member
80 static void meson_mx_sdhc_clear_fifo(struct mmc_host *mmc) in meson_mx_sdhc_clear_fifo() argument
[all …]
H A Dmmc_hsq.c4 * MMC software queue support based on command queue interfaces
10 #include <linux/mmc/card.h>
11 #include <linux/mmc/host.h>
19 struct mmc_host *mmc = hsq->mmc; in mmc_hsq_retry_handler() local
21 mmc->ops->request(mmc, hsq->mrq); in mmc_hsq_retry_handler()
26 struct mmc_host *mmc = hsq->mmc; in mmc_hsq_modify_threshold() local
30 mmc->hsq_depth = HSQ_NORMAL_DEPTH; in mmc_hsq_modify_threshold()
37 mmc->hsq_depth = HSQ_PERFORMANCE_DEPTH; in mmc_hsq_modify_threshold()
45 struct mmc_host *mmc = hsq->mmc; in mmc_hsq_pump_requests() local
72 if (mmc->ops->request_atomic) in mmc_hsq_pump_requests()
[all …]
H A Dcqhci-core.c16 #include <linux/mmc/mmc.h>
17 #include <linux/mmc/host.h>
18 #include <linux/mmc/card.h>
55 return cq_host->trans_desc_len * cq_host->mmc->max_segs * tag; in get_trans_desc_offset()
84 if (tag == DCMD_SLOT && (cq_host->mmc->caps2 & MMC_CAP2_CQE_DCMD)) { in setup_trans_desc()
111 pr_err("%s: " DRV_NAME ": " f, mmc_hostname(mmc), ## x)
115 struct mmc_host *mmc = cq_host->mmc; in cqhci_dumpregs() local
154 cq_host->ops->dumpregs(mmc); in cqhci_dumpregs()
208 cq_host->data_size = get_trans_desc_offset(cq_host, cq_host->mmc->cqe_qdepth); in cqhci_host_alloc_tdl()
211 mmc_hostname(cq_host->mmc), cq_host->desc_size, cq_host->data_size, in cqhci_host_alloc_tdl()
[all …]
H A Dmeson-mx-sdio.c3 * meson-mx-sdio.c - Meson6, Meson8 and Meson8b SDIO/MMC Host Controller
25 #include <linux/mmc/host.h>
26 #include <linux/mmc/mmc.h>
27 #include <linux/mmc/sdio.h>
28 #include <linux/mmc/slot-gpio.h>
118 struct mmc_host *mmc; member
125 static void meson_mx_mmc_mask_bits(struct mmc_host *mmc, char reg, u32 mask, in meson_mx_mmc_mask_bits() argument
128 struct meson_mx_mmc_host *host = mmc_priv(mmc); in meson_mx_mmc_mask_bits()
155 static void meson_mx_mmc_start_cmd(struct mmc_host *mmc, in meson_mx_mmc_start_cmd() argument
158 struct meson_mx_mmc_host *host = mmc_priv(mmc); in meson_mx_mmc_start_cmd()
[all …]
H A Dpxamci.c3 * linux/drivers/mmc/host/pxa.c - PXA MMCI driver
26 #include <linux/mmc/host.h>
27 #include <linux/mmc/slot-gpio.h>
37 #include <linux/platform_data/mmc-pxamci.h>
50 struct mmc_host *mmc; member
78 struct mmc_host *mmc = host->mmc; in pxamci_init_ocr() local
81 ret = mmc_regulator_get_supply(mmc); in pxamci_init_ocr()
85 if (IS_ERR(mmc->supply.vmmc)) { in pxamci_init_ocr()
87 mmc->ocr_avail = host->pdata ? in pxamci_init_ocr()
99 struct mmc_host *mmc = host->mmc; in pxamci_set_power() local
[all …]
H A Dmxcmmc.c3 * linux/drivers/mmc/host/mxcmmc.c - Freescale i.MX MMCI driver
25 #include <linux/mmc/host.h>
26 #include <linux/mmc/card.h>
35 #include <linux/mmc/slot-gpio.h>
39 #include <linux/platform_data/mmc-mxcmmc.h>
43 #define DRIVER_NAME "mxc-mmc"
120 struct mmc_host *mmc; member
161 .compatible = "fsl,imx21-mmc",
164 .compatible = "fsl,imx31-mmc",
221 if (!IS_ERR(host->mmc->supply.vmmc)) { in mxcmci_set_power()
[all …]
H A Dlitex_mmc.c23 #include <linux/mmc/host.h>
24 #include <linux/mmc/mmc.h>
25 #include <linux/mmc/sd.h>
77 struct mmc_host *mmc; member
126 struct device *dev = mmc_dev(host->mmc); in litex_mmc_send_cmd()
235 static int litex_mmc_get_cd(struct mmc_host *mmc) in litex_mmc_get_cd() argument
237 struct litex_mmc_host *host = mmc_priv(mmc); in litex_mmc_get_cd()
240 if (!mmc_card_is_removable(mmc)) in litex_mmc_get_cd()
255 struct mmc_host *mmc = arg; in litex_mmc_interrupt() local
256 struct litex_mmc_host *host = mmc_priv(mmc); in litex_mmc_interrupt()
[all …]
H A Djz4740_mmc.c6 * JZ4740 SD/MMC controller driver
18 #include <linux/mmc/host.h>
19 #include <linux/mmc/slot-gpio.h>
131 * The MMC core allows to prepare a mmc_request while another mmc_request
150 struct mmc_host *mmc; member
230 struct device *dev = mmc_dev(host->mmc); in jz4740_mmc_acquire_dma_channels()
241 host->dma_tx = dma_request_chan(mmc_dev(host->mmc), "tx"); in jz4740_mmc_acquire_dma_channels()
243 dev_err(mmc_dev(host->mmc), "Failed to get dma_tx channel\n"); in jz4740_mmc_acquire_dma_channels()
247 host->dma_rx = dma_request_chan(mmc_dev(host->mmc), "rx"); in jz4740_mmc_acquire_dma_channels()
249 dev_err(mmc_dev(host->mmc), "Failed to get dma_rx channel\n"); in jz4740_mmc_acquire_dma_channels()
[all …]
H A Dloongson2-mmc.c3 * Loongson-2K MMC/SDIO controller driver
17 #include <linux/mmc/core.h>
18 #include <linux/mmc/host.h>
19 #include <linux/mmc/mmc.h>
20 #include <linux/mmc/sd.h>
21 #include <linux/mmc/sdio.h>
22 #include <linux/mmc/slot-gpio.h>
325 static void loongson2_mmc_send_request(struct mmc_host *mmc) in loongson2_mmc_send_request() argument
328 struct loongson2_mmc_host *host = mmc_priv(mmc); in loongson2_mmc_send_request()
337 mmc_request_done(mmc, mrq); in loongson2_mmc_send_request()
[all …]
H A Dcavium.c2 * Shared part of driver for MMC/SDHC controller on Cavium OCTEON and
22 #include <linux/mmc/mmc.h>
23 #include <linux/mmc/slot-gpio.h>
32 "MMC Buffer",
33 "MMC Command",
34 "MMC DMA",
35 "MMC Command Error",
36 "MMC DMA Error",
37 "MMC Switch",
38 "MMC Switch Error",
[all …]
H A Domap.c3 * linux/drivers/mmc/host/omap.c
23 #include <linux/mmc/host.h>
24 #include <linux/mmc/card.h>
25 #include <linux/mmc/mmc.h>
30 #include <linux/platform_data/mmc-omap.h>
115 struct mmc_host *mmc; member
127 struct mmc_host * mmc; member
129 unsigned char id; /* 16xx chips have 2 MMC blocks */
209 while (host->mmc != NULL) { in mmc_omap_select_slot()
211 wait_event(host->slot_wq, host->mmc == NULL); in mmc_omap_select_slot()
[all …]
H A Dsdricoh_cs.c25 #include <linux/mmc/host.h>
26 #include <linux/mmc/mmc.h>
77 /* mmc privdata */
80 struct mmc_host *mmc; /* MMC structure */ member
254 static void sdricoh_request(struct mmc_host *mmc, struct mmc_request *mrq) in sdricoh_request() argument
256 struct sdricoh_host *host = mmc_priv(mmc); in sdricoh_request()
331 mmc_request_done(mmc, mrq); in sdricoh_request()
335 static void sdricoh_set_ios(struct mmc_host *mmc, struct mmc_ios *ios) in sdricoh_set_ios() argument
337 struct sdricoh_host *host = mmc_priv(mmc); in sdricoh_set_ios()
356 static int sdricoh_get_ro(struct mmc_host *mmc) in sdricoh_get_ro() argument
[all …]
H A Drtsx_pci_sdmmc.c2 /* Realtek PCI-Express SD/MMC Card Interface driver
17 #include <linux/mmc/host.h>
18 #include <linux/mmc/mmc.h>
19 #include <linux/mmc/sd.h>
20 #include <linux/mmc/sdio.h>
21 #include <linux/mmc/card.h>
29 struct mmc_host *mmc; member
49 static int sdmmc_init_sd_express(struct mmc_host *mmc, struct mmc_ios *ios);
180 static void sdmmc_pre_req(struct mmc_host *mmc, struct mmc_request *mrq) in sdmmc_pre_req() argument
182 struct realtek_pci_sdmmc *host = mmc_priv(mmc); in sdmmc_pre_req()
[all …]
H A Dusdhi6rol0.c16 #include <linux/mmc/host.h>
17 #include <linux/mmc/mmc.h>
18 #include <linux/mmc/sd.h>
19 #include <linux/mmc/sdio.h>
159 struct mmc_host *mmc; member
212 dev_vdbg(mmc_dev(host->mmc), "%s(0x%p + 0x%x) = 0x%x\n", __func__, in usdhi6_write()
219 dev_vdbg(mmc_dev(host->mmc), "%s(0x%p + 0x%x) = 0x%x\n", __func__, in usdhi6_write16()
226 dev_vdbg(mmc_dev(host->mmc), "%s(0x%p + 0x%x) = 0x%x\n", __func__, in usdhi6_read()
234 dev_vdbg(mmc_dev(host->mmc), "%s(0x%p + 0x%x) = 0x%x\n", __func__, in usdhi6_read16()
286 dev_dbg(mmc_dev(host->mmc), in usdhi6_error_code()
[all …]
H A Dmmci_stm32_sdmmc.c10 #include <linux/mmc/host.h>
11 #include <linux/mmc/card.h>
85 struct device *dev = mmc_dev(host->mmc); in sdmmc_idma_validate_data()
98 dev_dbg(mmc_dev(host->mmc), in sdmmc_idma_validate_data()
106 dev_dbg(mmc_dev(host->mmc), in sdmmc_idma_validate_data()
117 host->mmc->max_req_size, in sdmmc_idma_validate_data()
147 n_elem = dma_map_sg(mmc_dev(host->mmc), in _sdmmc_idma_prep_data()
153 dev_err(mmc_dev(host->mmc), "dma_map_sg failed\n"); in _sdmmc_idma_prep_data()
183 dma_unmap_sg(mmc_dev(host->mmc), data->sg, data->sg_len, in sdmmc_idma_unprep_data()
191 struct device *dev = mmc_dev(host->mmc); in sdmmc_idma_setup()
[all …]
H A Dmoxart-mmc.c2 * MOXA ART MMC host driver.
25 #include <linux/mmc/host.h>
26 #include <linux/mmc/sd.h>
132 struct mmc_host *mmc; member
198 dev_err(mmc_dev(host->mmc), "timed out waiting for status\n"); in moxart_wait_for_status()
288 dev_err(mmc_dev(host->mmc), "dma_map_sg returned zero length\n"); in moxart_transfer_dma()
393 static void moxart_request(struct mmc_host *mmc, struct mmc_request *mrq) in moxart_request() argument
395 struct moxart_host *host = mmc_priv(mmc); in moxart_request()
438 dev_err(mmc_dev(host->mmc), "card removed\n"); in moxart_request()
458 mmc_request_done(host->mmc, mrq); in moxart_request()
[all …]
/linux/Documentation/devicetree/bindings/mmc/
H A Dmtk-sd.yaml4 $id: http://devicetree.org/schemas/mmc/mtk-sd.yaml#
17 - mediatek,mt2701-mmc
18 - mediatek,mt2712-mmc
19 - mediatek,mt6779-mmc
20 - mediatek,mt6795-mmc
21 - mediatek,mt7620-mmc
22 - mediatek,mt7622-mmc
23 - mediatek,mt7986-mmc
24 - mediatek,mt7988-mmc
25 - mediatek,mt8135-mmc
[all …]
H A Dsdhci-st.txt1 * STMicroelectronics sdhci-st MMC/SD controller
4 Documentation/devicetree/bindings/mmc/mmc.txt and the properties
9 to set the internal glue logic used for configuring the MMC
13 - clock-names: Should be "mmc" and "icn". (NB: The latter is not compulsory)
18 - interrupts: One mmc interrupt should be described here.
31 - reg-names: Should be "mmc" and "top-mmc-delay". "top-mmc-delay" is optional
36 See: Documentation/devicetree/bindings/mmc/mmc.txt.
39 See: Documentation/devicetree/bindings/mmc/mmc.txt.
43 See: Documentation/devicetree/bindings/mmc/mmc.txt.
52 See: Documentation/devicetree/bindings/mmc/mmc.txt.
[all …]
H A Dcavium-mmc.txt1 * Cavium Octeon & ThunderX MMC controller
3 The highspeed MMC host controller on Caviums SoCs provides an interface
4 for MMC and SD types of memory cards.
11 cavium,octeon-6130-mmc
12 cavium,octeon-7890-mmc
13 cavium,thunder-8190-mmc
14 cavium,thunder-8390-mmc
15 mmc-slot
16 - reg : mmc controller base registers
20 - for cd, bus-width and additional generic mmc parameters
[all …]
H A Dingenic,mmc.yaml4 $id: http://devicetree.org/schemas/mmc/ingenic,mmc.yaml#
7 title: Ingenic SoCs MMC Controller
13 - $ref: mmc-controller.yaml#
19 - ingenic,jz4740-mmc
20 - ingenic,jz4725b-mmc
21 - ingenic,jz4760-mmc
22 - ingenic,jz4775-mmc
23 - ingenic,jz4780-mmc
24 - ingenic,x1000-mmc
26 - const: ingenic,jz4770-mmc
[all …]
H A Dloongson,ls2k0500-mmc.yaml4 $id: http://devicetree.org/schemas/mmc/loongson,ls2k0500-mmc.yaml#
10 The MMC host controller on the Loongson-2K0500/2K1000 (using an externally
12 The two MMC host controllers on the Loongson-2K2000 are similar,
20 - $ref: mmc-controller.yaml#
25 - loongson,ls2k0500-mmc
26 - loongson,ls2k1000-mmc
27 - loongson,ls2k2000-mmc
32 - description: Loongson-2K MMC controller registers.
33 - description: APB DMA config register for Loongson-2K MMC controller.
60 - loongson,ls2k0500-mmc
[all …]
H A Dowl-mmc.yaml4 $id: http://devicetree.org/schemas/mmc/owl-mmc.yaml#
7 title: Actions Semi Owl SoCs SD/MMC/SDIO controller
10 - $ref: mmc-controller.yaml
18 - const: actions,owl-mmc
21 - actions,s500-mmc
22 - actions,s700-mmc
23 - const: actions,owl-mmc
41 const: mmc
56 mmc0: mmc@e0330000 {
57 compatible = "actions,owl-mmc";
[all …]
/linux/drivers/staging/greybus/
H A Dsdio.c3 * SD/MMC Greybus driver.
10 #include <linux/mmc/core.h>
11 #include <linux/mmc/host.h>
12 #include <linux/mmc/mmc.h>
22 struct mmc_host *mmc; member
86 host->mmc->caps = caps; in _gb_sdio_set_host_caps()
87 host->mmc->caps2 = caps2 | MMC_CAP2_CORE_RUNTIME_PM; in _gb_sdio_set_host_caps()
118 struct mmc_host *mmc = host->mmc; in gb_sdio_get_caps() local
141 mmc->max_blk_size = rounddown_pow_of_two(blksz); in gb_sdio_get_caps()
142 mmc->max_blk_count = le16_to_cpu(response.max_blk_count); in gb_sdio_get_caps()
[all …]
/linux/Documentation/driver-api/mmc/
H A Dmmc-async-req.rst2 MMC Asynchronous Request
13 transfer, the DMA preparation overhead would not affect the MMC performance.
15 The intention of non-blocking (asynchronous) MMC requests is to minimize the
16 time between when an MMC request ends and another MMC request begins.
18 Using mmc_wait_for_req(), the MMC controller is idle while dma_map_sg and
19 dma_unmap_sg are processing. Using non-blocking MMC requests makes it
21 MMC request.
23 MMC block driver
26 The mmc_blk_issue_rw_rq() in the MMC block driver is made non-blocking.
30 a request and how fast the memory is. The faster the MMC/SD is the
[all …]

12345678910>>...52