Module Name: src Committed By: jmcneill Date: Sat Jun 24 23:25:01 UTC 2017
Modified Files: src/sys/dev/sdmmc: sdmmc_mem.c sdmmcvar.h Log Message: Revert part of previous; the SD card spec recommends not to issue a DISCARD command to the file system area. To generate a diff of this commit: cvs rdiff -u -r1.59 -r1.60 src/sys/dev/sdmmc/sdmmc_mem.c cvs rdiff -u -r1.26 -r1.27 src/sys/dev/sdmmc/sdmmcvar.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.
Modified files: Index: src/sys/dev/sdmmc/sdmmc_mem.c diff -u src/sys/dev/sdmmc/sdmmc_mem.c:1.59 src/sys/dev/sdmmc/sdmmc_mem.c:1.60 --- src/sys/dev/sdmmc/sdmmc_mem.c:1.59 Sat Jun 24 23:07:35 2017 +++ src/sys/dev/sdmmc/sdmmc_mem.c Sat Jun 24 23:25:01 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: sdmmc_mem.c,v 1.59 2017/06/24 23:07:35 jmcneill Exp $ */ +/* $NetBSD: sdmmc_mem.c,v 1.60 2017/06/24 23:25:01 jmcneill Exp $ */ /* $OpenBSD: sdmmc_mem.c,v 1.10 2009/01/09 10:55:22 jsg Exp $ */ /* @@ -45,7 +45,7 @@ /* Routines for SD/MMC memory cards. */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: sdmmc_mem.c,v 1.59 2017/06/24 23:07:35 jmcneill Exp $"); +__KERNEL_RCSID(0, "$NetBSD: sdmmc_mem.c,v 1.60 2017/06/24 23:25:01 jmcneill Exp $"); #ifdef _KERNEL_OPT #include "opt_sdmmc.h" @@ -1373,7 +1373,6 @@ sdmmc_mem_decode_ssr(struct sdmmc_softc const int uhs_speed_grade = SSR_UHS_SPEED_GRADE(ssr); const int video_speed_class = SSR_VIDEO_SPEED_CLASS(ssr); const int app_perf_class = SSR_APP_PERF_CLASS(ssr); - const int discard_support = SSR_DISCARD_SUPPORT(ssr); switch (speed_class) { case SSR_SPEED_CLASS_0: speed_class_val = 0; break; @@ -1406,16 +1405,8 @@ sdmmc_mem_decode_ssr(struct sdmmc_softc printf(", V%d", video_speed_class); if (app_perf_class) printf(", A%d", app_perf_class); - if (discard_support) - printf(", DISCARD"); printf("\n"); - /* - * Set function flags - */ - if (discard_support) - SET(sf->flags, SFF_DISCARD); - return 0; } @@ -2186,8 +2177,6 @@ sdmmc_mem_discard(struct sdmmc_function /* Start the erase operation */ memset(&cmd, 0, sizeof(cmd)); cmd.c_opcode = MMC_ERASE; - if (ISSET(sf->flags, SFF_DISCARD)) - cmd.c_arg = SD_ERASE_DISCARD; cmd.c_flags = SCF_CMD_AC | SCF_RSP_R1B; error = sdmmc_mmc_command(sc, &cmd); if (error) Index: src/sys/dev/sdmmc/sdmmcvar.h diff -u src/sys/dev/sdmmc/sdmmcvar.h:1.26 src/sys/dev/sdmmc/sdmmcvar.h:1.27 --- src/sys/dev/sdmmc/sdmmcvar.h:1.26 Sat Jun 24 23:07:35 2017 +++ src/sys/dev/sdmmc/sdmmcvar.h Sat Jun 24 23:25:01 2017 @@ -1,4 +1,4 @@ -/* $NetBSD: sdmmcvar.h,v 1.26 2017/06/24 23:07:35 jmcneill Exp $ */ +/* $NetBSD: sdmmcvar.h,v 1.27 2017/06/24 23:25:01 jmcneill Exp $ */ /* $OpenBSD: sdmmcvar.h,v 1.13 2009/01/09 10:55:22 jsg Exp $ */ /* @@ -185,7 +185,6 @@ struct sdmmc_function { int flags; #define SFF_ERROR 0x0001 /* function is poo; ignore it */ #define SFF_SDHC 0x0002 /* SD High Capacity card */ -#define SFF_DISCARD 0x0004 /* SD card supports discard erase */ SIMPLEQ_ENTRY(sdmmc_function) sf_list; /* SD card I/O function members */ int number; /* I/O function number or -1 */