2011-10-08 22:46:07 +08:00
|
|
|
/*
|
2018-10-15 01:46:07 +08:00
|
|
|
* Copyright (c) 2006-2018, RT-Thread Development Team
|
2013-06-26 22:30:40 +08:00
|
|
|
*
|
2018-10-15 01:46:07 +08:00
|
|
|
* SPDX-License-Identifier: Apache-2.0
|
2013-06-26 22:30:40 +08:00
|
|
|
*
|
|
|
|
* Change Logs:
|
|
|
|
* Date Author Notes
|
2011-10-08 22:46:07 +08:00
|
|
|
*/
|
2013-06-26 22:30:40 +08:00
|
|
|
|
2011-10-08 22:46:07 +08:00
|
|
|
#include <rtthread.h>
|
|
|
|
#include <dfs.h>
|
|
|
|
#include <dfs_fs.h>
|
2017-11-03 11:44:37 +08:00
|
|
|
#include <dfs_file.h>
|
2011-10-08 22:46:07 +08:00
|
|
|
|
|
|
|
#include "dfs_skt_fs.h"
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_mount(struct dfs_filesystem *fs, unsigned long rwflag, const void *data)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2017-11-03 11:44:37 +08:00
|
|
|
return RT_EOK;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_unmount(struct dfs_filesystem *fs)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2017-11-03 11:44:37 +08:00
|
|
|
return RT_EOK;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_ioctl(struct dfs_fd *file, int cmd, void *args)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2017-11-03 11:44:37 +08:00
|
|
|
return -RT_EIO;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_read(struct dfs_fd *file, void *buf, rt_size_t count)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2013-06-26 22:30:40 +08:00
|
|
|
return count;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_lseek(struct dfs_fd *file, rt_off_t offset)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2017-11-03 11:44:37 +08:00
|
|
|
return -RT_EIO;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_close(struct dfs_fd *file)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2017-11-03 11:44:37 +08:00
|
|
|
return RT_EOK;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_open(struct dfs_fd *file)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2017-11-03 11:44:37 +08:00
|
|
|
return RT_EOK;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_stat(struct dfs_filesystem *fs, const char *path, struct stat *st)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2017-11-03 11:44:37 +08:00
|
|
|
return RT_EOK;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
int dfs_skt_getdents(struct dfs_fd *file, struct dirent *dirp, rt_uint32_t count)
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2013-06-26 22:30:40 +08:00
|
|
|
return count * sizeof(struct dirent);
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
|
|
|
|
2019-04-03 18:09:52 +08:00
|
|
|
static const struct dfs_file_ops _skt_fops =
|
2011-10-08 22:46:07 +08:00
|
|
|
{
|
2013-06-26 22:30:40 +08:00
|
|
|
dfs_skt_open,
|
|
|
|
dfs_skt_close,
|
|
|
|
dfs_skt_ioctl,
|
|
|
|
dfs_skt_read,
|
2017-11-03 11:44:37 +08:00
|
|
|
NULL, /* write */
|
|
|
|
NULL, /* flush */
|
2013-06-26 22:30:40 +08:00
|
|
|
dfs_skt_lseek,
|
|
|
|
dfs_skt_getdents,
|
2017-11-03 11:44:37 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
static const struct dfs_filesystem_ops _skt_fs =
|
|
|
|
{
|
|
|
|
"skt",
|
|
|
|
DFS_FS_FLAG_DEFAULT,
|
|
|
|
&_skt_fops,
|
|
|
|
|
|
|
|
dfs_skt_mount,
|
|
|
|
dfs_skt_unmount,
|
|
|
|
NULL, /* mkfs */
|
|
|
|
NULL, /* statfs */
|
|
|
|
|
|
|
|
NULL, /* unlink */
|
2013-06-26 22:30:40 +08:00
|
|
|
dfs_skt_stat,
|
2017-11-03 11:44:37 +08:00
|
|
|
NULL, /* rename */
|
2011-10-08 22:46:07 +08:00
|
|
|
};
|
|
|
|
|
|
|
|
int dfs_skt_init(void)
|
|
|
|
{
|
|
|
|
/* register rom file system */
|
|
|
|
dfs_register(&_skt_fs);
|
2013-06-26 22:30:40 +08:00
|
|
|
return 0;
|
2011-10-08 22:46:07 +08:00
|
|
|
}
|
2017-11-03 11:44:37 +08:00
|
|
|
INIT_COMPONENT_EXPORT(dfs_skt_init);
|
|
|
|
|