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 */