fs: Add semihosting filesystem
This adds a filesystem which is backed by the host's filesystem. It is modeled off of sandboxfs, which has very similar aims. Semihosting doesn't support listing directories (except with SYS_SYSTEM), so neither do we. it's possible to optimize a bit for the common case of reading a whole file by omitting a call to smh_seek, but this is left as a future optimization. Signed-off-by: Sean Anderson <sean.anderson@seco.com>
This commit is contained in:
@@ -455,7 +455,7 @@ int blk_get_device_part_str(const char *ifname, const char *dev_part_str,
|
||||
int part;
|
||||
struct disk_partition tmpinfo;
|
||||
|
||||
#ifdef CONFIG_SANDBOX
|
||||
#if IS_ENABLED(CONFIG_SANDBOX) || IS_ENABLED(CONFIG_SEMIHOSTING)
|
||||
/*
|
||||
* Special-case a pseudo block device "hostfs", to allow access to the
|
||||
* host's own filesystem.
|
||||
@@ -467,7 +467,7 @@ int blk_get_device_part_str(const char *ifname, const char *dev_part_str,
|
||||
info->blksz = 0;
|
||||
info->bootable = 0;
|
||||
strcpy((char *)info->type, BOOT_PART_TYPE);
|
||||
strcpy((char *)info->name, "Sandbox host");
|
||||
strcpy((char *)info->name, "Host filesystem");
|
||||
#if CONFIG_IS_ENABLED(PARTITION_UUIDS)
|
||||
info->uuid[0] = 0;
|
||||
#endif
|
||||
|
||||
Reference in New Issue
Block a user