diff options
| author | Tom Rini <trini@ti.com> | 2013-03-18 15:33:47 -0400 |
|---|---|---|
| committer | Tom Rini <trini@ti.com> | 2013-03-18 15:33:47 -0400 |
| commit | 3c47f2f4871c345c20b9d986b11fec550ef6cc9f (patch) | |
| tree | 267c6eedacaa02cc8c7096f67bedb9d17fe3e21d /include/usb_mass_storage.h | |
| parent | 0ce033d2582129243aca10d3072a221386bbba44 (diff) | |
| parent | ae003d057077d792c1f2131753a7596c94e0bba4 (diff) | |
| download | olio-uboot-2014.01-3c47f2f4871c345c20b9d986b11fec550ef6cc9f.tar.xz olio-uboot-2014.01-3c47f2f4871c345c20b9d986b11fec550ef6cc9f.zip | |
Merge branch 'master' of git://git.denx.de/u-boot-usb
Diffstat (limited to 'include/usb_mass_storage.h')
| -rw-r--r-- | include/usb_mass_storage.h | 55 |
1 files changed, 55 insertions, 0 deletions
diff --git a/include/usb_mass_storage.h b/include/usb_mass_storage.h new file mode 100644 index 000000000..ffc3a13c2 --- /dev/null +++ b/include/usb_mass_storage.h @@ -0,0 +1,55 @@ +/* + * Copyright (C) 2011 Samsung Electrnoics + * Lukasz Majewski <l.majewski@samsung.com> + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of + * the License, or (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * aloong with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#ifndef __USB_MASS_STORAGE_H__ +#define __USB_MASS_STORAGE_H__ + +#define SECTOR_SIZE 0x200 + +#include <mmc.h> + +struct ums_device { + struct mmc *mmc; + int dev_num; + int offset; + int part_size; +}; + +struct ums_board_info { + int (*read_sector)(struct ums_device *ums_dev, + ulong start, lbaint_t blkcnt, void *buf); + int (*write_sector)(struct ums_device *ums_dev, + ulong start, lbaint_t blkcnt, const void *buf); + void (*get_capacity)(struct ums_device *ums_dev, + long long int *capacity); + const char *name; + struct ums_device ums_dev; +}; + +extern void board_usb_init(void); + +extern int fsg_init(struct ums_board_info *); +extern void fsg_cleanup(void); +extern struct ums_board_info *board_ums_init(unsigned int, + unsigned int, unsigned int); +extern int usb_gadget_handle_interrupts(void); +extern int fsg_main_thread(void *); + +#endif /* __USB_MASS_STORAGE_H__ */ |