*/
#include <config.h>
-#include <common.h>
#include <api_public.h>
#include <part.h>
#include <scsi.h>
+#include <linux/types.h>
#if defined(CONFIG_CMD_USB) && defined(CONFIG_USB_STORAGE)
#include <usb.h>
#define errf(fmt, args...) do { printf("ERROR @ %s(): ", __func__); printf(fmt, ##args); } while (0)
-
#define ENUM_IDE 0
#define ENUM_USB 1
#define ENUM_SCSI 2
static struct stor_spec specs[ENUM_MAX] = { { 0, 0, 0, 0, NULL }, };
-#ifndef CONFIG_SYS_MMC_MAX_DEVICE
-#define CONFIG_SYS_MMC_MAX_DEVICE 1
-#endif
-
void dev_stor_init(void)
{
#if defined(CONFIG_IDE)
specs[ENUM_SATA].type = DEV_TYP_STOR | DT_STOR_SATA;
specs[ENUM_SATA].name = "sata";
#endif
-#if defined(CONFIG_SCSI)
- specs[ENUM_SCSI].max_dev = SCSI_MAX_DEVICE;
- specs[ENUM_SCSI].enum_started = 0;
- specs[ENUM_SCSI].enum_ended = 0;
- specs[ENUM_SCSI].type = DEV_TYP_STOR | DT_STOR_SCSI;
- specs[ENUM_SCSI].name = "scsi";
-#endif
#if defined(CONFIG_CMD_USB) && defined(CONFIG_USB_STORAGE)
specs[ENUM_USB].max_dev = USB_MAX_STOR_DEV;
specs[ENUM_USB].enum_started = 0;
return found;
}
-
/* returns: ENUM_IDE, ENUM_USB etc. based on struct blk_desc */
static int dev_stor_type(struct blk_desc *dd)
return ENUM_MAX;
}
-
/* returns: 0/1 whether cookie points to some device in this group */
static int dev_is_stor(int type, struct device_info *di)
return (dev_stor_type(di->cookie) == type) ? 1 : 0;
}
-
static int dev_enum_stor(int type, struct device_info *di)
{
int found = 0, more = 0;
return 0;
}
-
int dev_open_stor(void *cookie)
{
int type = dev_stor_type(cookie);
return API_ENODEV;
}
-
int dev_close_stor(void *cookie)
{
/*
return 0;
}
-
lbasize_t dev_read_stor(void *cookie, void *buf, lbasize_t len, lbastart_t start)
{
int type;
#endif /* defined(CONFIG_BLK) */
}
-
lbasize_t dev_write_stor(void *cookie, void *buf, lbasize_t len, lbastart_t start)
{
struct blk_desc *dd = (struct blk_desc *)cookie;