\r
Copyright (c) 2011-2015, ARM Limited. All rights reserved.\r
\r
- This program and the accompanying materials\r
- are licensed and made available under the terms and conditions of the BSD License\r
- which accompanies this distribution. The full text of the license may be found at\r
- http://opensource.org/licenses/bsd-license.php\r
-\r
- THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
- WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
+ SPDX-License-Identifier: BSD-2-Clause-Patent\r
\r
**/\r
\r
#define EMMC_CMD6_ARG_VALUE(x) (((x) & 0xFF) << 8)\r
#define EMMC_CMD6_ARG_CMD_SET(x) (((x) & 0x7) << 0)\r
\r
+#define SWITCH_CMD_DATA_LENGTH 64\r
+#define SD_HIGH_SPEED_SUPPORTED 0x20000\r
+#define SD_DEFAULT_SPEED 25000000\r
+#define SD_HIGH_SPEED 50000000\r
+#define SWITCH_CMD_SUCCESS_MASK 0x0f000000\r
+\r
+#define SD_CARD_CAPACITY 0x00000002\r
+\r
+#define BUSWIDTH_4 4\r
+\r
typedef enum {\r
UNKNOWN_CARD,\r
MMC_CARD, //MMC card\r
UINT8 MIN_PERF_W_8_52; // Minimum write performance for 8bit at 52MHz [210:210]\r
UINT8 RESERVED_18; // Reserved [211:211]\r
UINT32 SECTOR_COUNT; // Sector count [215:212]\r
- UINT8 SLEEP_NOTIFICATION_TIME; // Sleep notification timout [216:216]\r
+ UINT8 SLEEP_NOTIFICATION_TIME; // Sleep notification timeout [216:216]\r
UINT8 S_A_TIMEOUT; // Sleep/awake timeout [217:217]\r
UINT8 PRODUCTION_STATE_AWARENESS_TIMEOUT; // Production state awareness timeout [218:218]\r
UINT8 S_C_VCCQ; // Sleep current (VCCQ) [219:219]\r
OCR OCRData;\r
CID CIDData;\r
CSD CSDData;\r
- ECSD ECSDData; // MMC V4 extended card specific\r
+ ECSD *ECSDData; // MMC V4 extended card specific\r
} CARD_INFO;\r
\r
typedef struct _MMC_HOST_INSTANCE {\r