Fix bug in using nor flash storage without SD
[SCSI2SD.git] / software / SCSI2SD / src / disk.h
1 //      Copyright (C) 2013 Michael McMaster <michael@codesrc.com>
2 //
3 //      This file is part of SCSI2SD.
4 //
5 //      SCSI2SD is free software: you can redistribute it and/or modify
6 //      it under the terms of the GNU General Public License as published by
7 //      the Free Software Foundation, either version 3 of the License, or
8 //      (at your option) any later version.
9 //
10 //      SCSI2SD is distributed in the hope that it will be useful,
11 //      but WITHOUT ANY WARRANTY; without even the implied warranty of
12 //      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13 //      GNU General Public License for more details.
14 //
15 //      You should have received a copy of the GNU General Public License
16 //      along with SCSI2SD.  If not, see <http://www.gnu.org/licenses/>.
17 #ifndef DISK_H
18 #define DISK_H
19
20 typedef enum
21 {
22         TRANSFER_READ,
23         TRANSFER_WRITE
24 } TRANSFER_DIR;
25
26 typedef struct
27 {
28         int multiBlock; // True if we're using a multi-block SPI transfer.
29         uint32 lba;
30         uint32 blocks;
31
32         uint32 currentBlock;
33 } Transfer;
34
35 extern Transfer transfer;
36
37 void scsiDiskInit(void);
38 void scsiDiskReset(void);
39 void scsiDiskPoll(void);
40 int scsiDiskCommand(void);
41
42 #endif