u-boot/drivers
Hai Pham 0ac2cca3a4 mmc: Introduce mmc_send_stop_transmission()
If a tuning command times out, the card could still be processing it,
which will cause problems for recovery. The eMMC specification section
6.6 Data transfer mode (cont’d) claims that CMD12 can be used to stop
CMD21:
"
The relationship between the various data transfer modes is summarized (see Figure 27):
- All data read commands can be aborted any time by the stop command (CMD12).
  The data transfer will terminate and the Device will return to the Transfer State.
  The read commands are: ... send tuning block (CMD21) ....
"
Add a function that does that.

Based on Linux commit [1] and [2].

[1] e711f0309109 ("mmc: mmc: Introduce mmc_abort_tuning()")
[2] 21adc2e45f4e ("mmc: Improve function name when aborting a tuning
cmd")

Reviewed-by: Takeshi Kihara <takeshi.kihara.df@renesas.com>
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
[Marek: Update commit message, quote relevant part of the specification.
        Rename to mmc_send_stop_transmission().
	Remove tuning opcode check, this is controller driver specific.
	Deduplicate part of mmc_read_blocks() using this function.]
Reviewed-by:  Peng Fan <peng.fan@nxp.com>
2023-07-18 09:17:16 +09:00
..
adc dm: adc: add iMX93 ADC support 2023-07-13 11:29:40 +02:00
ata drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
axi axi: fix definition of axi_sandbox_get_emul() 2023-06-01 12:32:03 -04:00
bios_emulator bios_emulator: Drop VIDEO_IO_OFFSET 2023-07-17 17:08:44 +08:00
block spl: blk: Support loading images from fs 2023-06-19 17:19:44 -04:00
bootcount global: Move remaining CONFIG_SYS_* to CFG_SYS_* 2022-12-05 16:06:08 -05:00
bus bus: Optionally include TI sysc driver in SPL/TPL 2022-12-02 08:39:00 -05:00
button dm: button: add support for linux_code in button-gpio.c driver 2023-02-10 12:50:01 -05:00
cache drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
clk clk: scmi: claim the dependency on CONFIG_CLK 2023-07-14 15:21:07 -04:00
core fdt: Allow more general use of livetree 2023-07-14 12:54:51 -04:00
cpu imx9: add i.MX93 variants support 2023-05-21 16:54:41 +02:00
crypto Correct SPL uses of HW_WATCHDOG 2023-02-10 07:41:39 -05:00
ddr ddr: imx9: update the rank setting for multi fsp support 2023-05-21 16:54:41 +02:00
demo demo: migrate uclass to livetree 2021-10-05 08:50:15 -04:00
dfu dfu: mtd: remove direct call of mtdparts_init function 2023-06-16 11:01:16 +02:00
dma dma: ti: k3-udma: Fix channel hang on teardown 2023-03-22 12:51:15 -04:00
extcon extcon: add MAX14526 MUIC support 2023-05-02 14:23:58 -04:00
fastboot fastboot: Only call the bootm command if it is enabled 2023-05-31 17:23:01 -04:00
firmware firmware: scmi: return a right errno for SCMI status code 2023-07-14 15:21:07 -04:00
fpga fpga: zynqmppl: fix fpga loads command for unencrypted use case 2023-03-09 13:15:00 +01:00
fuzz sandbox: Implement fuzzing engine driver 2022-06-23 12:58:19 -04:00
fwu-mdata FWU: Add FWU metadata access driver for MTD storage regions 2023-06-09 13:52:40 -04:00
gpio x86: Convert some debug statements to use logging 2023-07-17 17:23:14 +08:00
hwspinlock treewide: invaild -> invalid 2022-01-13 07:57:49 -05:00
i2c Merge tag v2023.07-rc4 into next 2023-06-12 14:55:33 -04:00
input input: Flush the keyboard buffer before resetting it 2023-05-11 10:25:29 +08:00
iommu iommu: Implement mapping IOMMUs for PCI devices 2023-01-27 14:47:58 -05:00
led drivers: led: bcm6753: do not use null label to find the top 2023-07-14 15:21:08 -04:00
mailbox mailbox: zynqmp: Enable ipi mailbox driver for Versal NET 2022-09-26 14:23:29 +02:00
memory memory: atmel-ebi: add Atmel EBI (External Bus Interface) driver 2022-12-08 18:06:27 +02:00
mfd mfd: syscon: atmel-smc: Add new helpers to ease SMC regs manipulation 2022-12-08 18:06:27 +02:00
misc x86: Record the start and end of the tables 2023-07-17 17:23:08 +08:00
mmc mmc: Introduce mmc_send_stop_transmission() 2023-07-18 09:17:16 +09:00
mtd Merge https://gitlab.denx.de/u-boot/custodians/u-boot-spi 2023-07-13 20:39:10 -04:00
mux Correct SPL uses of MULTIPLEXER 2023-03-02 17:45:58 -05:00
net net: ti: am65-cpsw-nuss: Use dedicated port mode control registers 2023-07-14 15:21:07 -04:00
nvme nvme: Provide more useful debugging messages 2023-07-17 17:12:26 +08:00
pch x86: Convert some debug statements to use logging 2023-07-17 17:23:14 +08:00
pci pci: Mask the ROM address in case it is already enabled 2023-07-17 17:12:26 +08:00
pci_endpoint dm: define LOG_CATEGORY for all uclass 2021-07-06 10:38:03 -06:00
phy Prepare v2023.07-rc6 2023-07-05 11:28:55 -04:00
pinctrl pinctrl: nuvoton: fix reset reason error for poweron 2023-07-14 15:21:07 -04:00
power imx: mach: correct SCU API usage 2023-07-13 11:29:40 +02:00
pwm drivers: use dev_read_addr_ptr when cast to pointer 2023-05-06 17:28:18 +08:00
qe global: Finish CONFIG -> CFG migration 2023-01-20 12:27:24 -05:00
ram ram: starfive: Read memory size information from EEPROM 2023-07-12 13:21:40 +08:00
reboot-mode reboot-mode: Add NVMEM reboot mode 2023-01-11 11:54:50 -05:00
remoteproc remoteproc: ti_k3_arm64: Change the startup of arm64 core 2023-04-24 13:18:48 -04:00
reset reset: rockchip: implement rk3588 lookup table 2023-05-17 17:36:18 +08:00
rng rockchip: rng: add trngv1 for rk3588 2023-04-21 15:16:01 +08:00
rtc drivers: rtc: add max313xx series rtc driver 2023-03-30 15:09:59 -04:00
scsi bootstd: Use bootdev instead of bootdevice 2023-07-16 23:13:17 +08:00
serial serial: pl01x: Modify pending callback to test if transmit FIFO is empty 2023-07-11 14:40:04 +02:00
smem smem: msm: add missing <linux/sizes.h> 2022-10-12 08:56:24 -04:00
soc soc: soc_ti_k3: fix revision array bounds checks 2023-04-25 15:31:27 -04:00
sound test: test sandbox sound driver more rigorously 2022-12-05 17:43:21 +01:00
spi spi: npcm_pspi: use ACTIVE_LOW flag for cs gpio and set default max_hz 2023-07-13 14:16:59 +05:30
spmi spmi: msm: add arbiter version 5 support 2021-10-31 08:46:44 -04:00
sysinfo sysinfo: gpio: fix loop over DT "revisions" array 2023-03-30 15:09:59 -04:00
sysreset sysreset: Change Kconfig GPIO dependency 2023-07-07 16:47:15 -04:00
tee drivers: tee: sandbox: Fix SCP03 control emulator 2023-04-28 11:30:17 -06:00
thermal imx: move imx8 sci header file to include/firmware/imx 2023-05-21 16:54:32 +02:00
timer riscv: Rename SiFive CLINT to RISC-V ALINT 2023-07-12 13:21:40 +08:00
tpm tpm: sandbox: Change the return code when device is already open 2023-02-28 09:44:25 +02:00
ufs ufs: Use 'TASK_TAG' to construct the ucd_req_ptr->header.dword_0 2023-07-14 15:21:08 -04:00
usb bootstd: Use bootdev instead of bootdevice 2023-07-16 23:13:17 +08:00
video Merge https://source.denx.de/u-boot/custodians/u-boot-x86 2023-07-17 10:38:28 -04:00
virtio virtio: Ensure PCI is set up first 2023-04-26 08:43:04 -04:00
w1 dm: treewide: Do not use the return value of simple uclass iterator 2022-10-29 07:36:33 -06:00
w1-eeprom dm: define LOG_CATEGORY for all uclass 2021-07-06 10:38:03 -06:00
watchdog watchdog: ulp_wdog: guard reset_cpu with condition check 2023-05-21 16:54:40 +02:00
xen xen: Limit execution to EL1 only 2023-04-25 15:31:28 -04:00
Kconfig bios_emulator: Add Kconfig and adjust Makefile for SPL 2023-07-17 17:08:44 +08:00
Makefile bios_emulator: Add Kconfig and adjust Makefile for SPL 2023-07-17 17:08:44 +08:00