diff options
| author | Tom Rini <trini@ti.com> | 2013-03-11 12:02:40 -0400 | 
|---|---|---|
| committer | Tom Rini <trini@ti.com> | 2013-03-11 12:16:13 -0400 | 
| commit | 76b40ab41eff1f402ee52ba768b09daad293b9bb (patch) | |
| tree | 4956296adbdc8939aa49d84fa9bd497eef65b7f4 /fs/sandbox/sandboxfs.c | |
| parent | de62688bb61c499ecc2d70a3aa8ccf90bb7a8ef6 (diff) | |
| parent | fc959081d41aab2d6f4614c5fb3dd1b77ffcdcf4 (diff) | |
| download | olio-uboot-2014.01-76b40ab41eff1f402ee52ba768b09daad293b9bb.tar.xz olio-uboot-2014.01-76b40ab41eff1f402ee52ba768b09daad293b9bb.zip | |
Merge u-boot/master into u-boot-ti/master
In master we had already taken a patch to fix the davinci GPIO code for
CONFIG_SOC_DM646X and in u-boot-ti we have additional patches to support
DA830 (which is CONFIG_SOC_DA8XX && !CONFIG_SOC_DA850).  Resolve these
conflicts manually and comment the #else/#endif lines for clarity.
Conflicts:
	arch/arm/include/asm/arch-davinci/gpio.h
	drivers/gpio/da8xx_gpio.c
Signed-off-by: Tom Rini <trini@ti.com>
Diffstat (limited to 'fs/sandbox/sandboxfs.c')
| -rw-r--r-- | fs/sandbox/sandboxfs.c | 83 | 
1 files changed, 83 insertions, 0 deletions
| diff --git a/fs/sandbox/sandboxfs.c b/fs/sandbox/sandboxfs.c new file mode 100644 index 000000000..02d26ff85 --- /dev/null +++ b/fs/sandbox/sandboxfs.c @@ -0,0 +1,83 @@ +/* + * Copyright (c) 2012, Google Inc. + * + * 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 + * along with this program; if not, write to the Free Software + * Foundation, Inc., 59 Temple Place, Suite 330, Boston, + * MA 02111-1307 USA + */ + +#include <common.h> +#include <fs.h> +#include <os.h> + +int sandbox_fs_set_blk_dev(block_dev_desc_t *rbdd, disk_partition_t *info) +{ +	return 0; +} + +long sandbox_fs_read_at(const char *filename, unsigned long pos, +			     void *buffer, unsigned long maxsize) +{ +	ssize_t size; +	int fd, ret; + +	fd = os_open(filename, OS_O_RDONLY); +	if (fd < 0) +		return fd; +	ret = os_lseek(fd, pos, OS_SEEK_SET); +	if (ret == -1) { +		os_close(fd); +		return ret; +	} +	if (!maxsize) +		maxsize = os_get_filesize(filename); +	size = os_read(fd, buffer, maxsize); +	os_close(fd); + +	return size; +} + +int sandbox_fs_ls(const char *dirname) +{ +	struct os_dirent_node *head, *node; +	int ret; + +	ret = os_dirent_ls(dirname, &head); +	if (ret) +		return ret; + +	for (node = head; node; node = node->next) { +		printf("%s %10lu %s\n", os_dirent_get_typename(node->type), +		       node->size, node->name); +	} + +	return 0; +} + +void sandbox_fs_close(void) +{ +} + +int fs_read_sandbox(const char *filename, void *buf, int offset, int len) +{ +	int len_read; + +	len_read = sandbox_fs_read_at(filename, offset, buf, len); +	if (len_read == -1) { +		printf("** Unable to read file %s **\n", filename); +		return -1; +	} + +	return len_read; +} |