Loading...
Searching...
No Matches
diskio.h
Go to the documentation of this file.
1/*
2 * Copyright 2010 ChaN
3 * Copyright 2016 INRIA
4 *
5 * This file is subject to the terms and conditions of the GNU Lesser
6 * General Public License v2.1. See the file LICENSE in the top level
7 * directory for more details.
8 */
9
10#pragma once
11
24#include <stdint.h>
25
26#ifdef __cplusplus
27extern "C" {
28#endif
29
30/* These functions are defined in asmfunc.S */
31
39void copy_al2un(unsigned char *dst, const unsigned long *src, int count);
40
48void copy_un2al(unsigned long *dst, const unsigned char *src, int count);
49
58
67
77#define CTRL_SYNC 0
78#define GET_SECTOR_COUNT 1
79#define GET_SECTOR_SIZE 2
80#define GET_BLOCK_SIZE 3
81#define CTRL_ERASE_SECTOR 4
88#define CTRL_POWER 5
89#define CTRL_LOCK 6
90#define CTRL_EJECT 7
97#define MMC_GET_TYPE 10
98#define MMC_GET_CSD 11
99#define MMC_GET_CID 12
100#define MMC_GET_OCR 13
101#define MMC_GET_SDSTAT 14
113
121
132diskio_result_t mci_read(unsigned char *buff, unsigned long sector, unsigned char count);
133
143diskio_result_t mci_write(const unsigned char *buff, unsigned long sector, unsigned char count);
144
154diskio_result_t mci_ioctl(unsigned char ctrl, void *buff);
155
156#ifdef __cplusplus
157}
158#endif
159
diskio_sta_t mci_initialize(void)
Initialize media control interface (MCI)
diskio_sta_t mci_status(void)
Get the status of the media control interface (MCI)
diskio_result_t mci_write(const unsigned char *buff, unsigned long sector, unsigned char count)
Write sectors over the media control interface (MCI)
diskio_result_t mci_ioctl(unsigned char ctrl, void *buff)
IOCTL functions for the media control interface (MCI)
diskio_result_t mci_read(unsigned char *buff, unsigned long sector, unsigned char count)
Read sectors over the media control interface (MCI)
void copy_un2al(unsigned long *dst, const unsigned char *src, int count)
Copy unaligned to aligned.
diskio_result_t
Results of Disk Functions.
Definition diskio.h:51
void copy_al2un(unsigned char *dst, const unsigned long *src, int count)
Copy aligned to unaligned.
diskio_sta_t
Disk Status Bits.
Definition diskio.h:62
@ DISKIO_RES_NOTRDY
3: Not Ready
Definition diskio.h:55
@ DISKIO_RES_ERROR
1: R/W Error
Definition diskio.h:53
@ DISKIO_RES_PARERR
4: Invalid Parameter
Definition diskio.h:56
@ DISKIO_RES_WRPRT
2: Write Protected
Definition diskio.h:54
@ DISKIO_RES_OK
0: Successful
Definition diskio.h:52
@ DISKIO_STA_PROTECT
Write protected.
Definition diskio.h:65
@ DISKIO_STA_NODISK
No medium in the drive.
Definition diskio.h:64
@ DISKIO_STA_NOINIT
Drive not initialized.
Definition diskio.h:63