mirror of
https://github.com/Fishwaldo/u-boot.git
synced 2025-03-21 22:51:37 +00:00
ums: support block devices not MMC devices
The USB Mass Storage function could equally well support a SATA device as support an MMC device. Update struct ums to contain a block device descriptor, not an MMC device descriptor. Cc: Lukasz Majewski <l.majewski@samsung.com> Signed-off-by: Stephen Warren <swarren@nvidia.com> Acked-by: Przemyslaw Marczak <p.marczak@samsung.com>
This commit is contained in:
parent
66b88b07cd
commit
ce19d97401
2 changed files with 6 additions and 5 deletions
|
@ -7,12 +7,13 @@
|
||||||
|
|
||||||
#include <common.h>
|
#include <common.h>
|
||||||
#include <usb_mass_storage.h>
|
#include <usb_mass_storage.h>
|
||||||
|
#include <mmc.h>
|
||||||
#include <part.h>
|
#include <part.h>
|
||||||
|
|
||||||
static int ums_read_sector(struct ums *ums_dev,
|
static int ums_read_sector(struct ums *ums_dev,
|
||||||
ulong start, lbaint_t blkcnt, void *buf)
|
ulong start, lbaint_t blkcnt, void *buf)
|
||||||
{
|
{
|
||||||
block_dev_desc_t *block_dev = &ums_dev->mmc->block_dev;
|
block_dev_desc_t *block_dev = ums_dev->block_dev;
|
||||||
lbaint_t blkstart = start + ums_dev->start_sector;
|
lbaint_t blkstart = start + ums_dev->start_sector;
|
||||||
int dev_num = block_dev->dev;
|
int dev_num = block_dev->dev;
|
||||||
|
|
||||||
|
@ -22,7 +23,7 @@ static int ums_read_sector(struct ums *ums_dev,
|
||||||
static int ums_write_sector(struct ums *ums_dev,
|
static int ums_write_sector(struct ums *ums_dev,
|
||||||
ulong start, lbaint_t blkcnt, const void *buf)
|
ulong start, lbaint_t blkcnt, const void *buf)
|
||||||
{
|
{
|
||||||
block_dev_desc_t *block_dev = &ums_dev->mmc->block_dev;
|
block_dev_desc_t *block_dev = ums_dev->block_dev;
|
||||||
lbaint_t blkstart = start + ums_dev->start_sector;
|
lbaint_t blkstart = start + ums_dev->start_sector;
|
||||||
int dev_num = block_dev->dev;
|
int dev_num = block_dev->dev;
|
||||||
|
|
||||||
|
@ -45,7 +46,7 @@ static struct ums *ums_disk_init(struct mmc *mmc)
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
ums_dev.mmc = mmc;
|
ums_dev.block_dev = &mmc->block_dev;
|
||||||
|
|
||||||
if (ums_end_sector <= mmc_end_sector) {
|
if (ums_end_sector <= mmc_end_sector) {
|
||||||
ums_dev.start_sector = UMS_START_SECTOR;
|
ums_dev.start_sector = UMS_START_SECTOR;
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
#define __USB_MASS_STORAGE_H__
|
#define __USB_MASS_STORAGE_H__
|
||||||
|
|
||||||
#define SECTOR_SIZE 0x200
|
#define SECTOR_SIZE 0x200
|
||||||
#include <mmc.h>
|
#include <part.h>
|
||||||
#include <linux/usb/composite.h>
|
#include <linux/usb/composite.h>
|
||||||
|
|
||||||
#ifndef UMS_START_SECTOR
|
#ifndef UMS_START_SECTOR
|
||||||
|
@ -31,7 +31,7 @@ struct ums {
|
||||||
unsigned int start_sector;
|
unsigned int start_sector;
|
||||||
unsigned int num_sectors;
|
unsigned int num_sectors;
|
||||||
const char *name;
|
const char *name;
|
||||||
struct mmc *mmc;
|
block_dev_desc_t *block_dev;
|
||||||
};
|
};
|
||||||
|
|
||||||
extern struct ums *ums;
|
extern struct ums *ums;
|
||||||
|
|
Loading…
Add table
Reference in a new issue