Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
BaiXuePrincess
rt-thread
提交
40a087fc
R
rt-thread
项目概览
BaiXuePrincess
/
rt-thread
与 Fork 源项目一致
Fork自
RT-Thread / rt-thread
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
rt-thread
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
未验证
提交
40a087fc
编写于
3月 12, 2021
作者:
mysterywolf
提交者:
GitHub
3月 12, 2021
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Delete uffs_rtthread.c
上级
f3fbbf84
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
0 addition
and
158 deletion
+0
-158
components/dfs/filesystems/uffs/uffs_rtthread.c
components/dfs/filesystems/uffs/uffs_rtthread.c
+0
-158
未找到文件。
components/dfs/filesystems/uffs/uffs_rtthread.c
已删除
100644 → 0
浏览文件 @
f3fbbf84
/*
* Copyright (c) 2006-2021, RT-Thread Development Team
*
* SPDX-License-Identifier: Apache-2.0
*
* Change Logs:
* Date Author Notes
*/
/*
This file is part of UFFS, the Ultra-low-cost Flash File System.
Copyright (C) 2005-2009 Ricky Zheng <ricky_gz_zheng@yahoo.co.nz>
UFFS is free software; you can redistribute it and/or modify it under
the GNU Library General Public License as published by the Free Software
Foundation; either version 2 of the License, or (at your option) any
later version.
UFFS 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
or GNU Library General Public License, as applicable, for more details.
You should have received a copy of the GNU General Public License
and GNU Library General Public License along with UFFS; if not, write
to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
Boston, MA 02110-1301, USA.
As a special exception, if other files instantiate templates or use
macros or inline functions from this file, or you compile this file
and link it with other works to produce a work based on this file,
this file does not by itself cause the resulting work to be covered
by the GNU General Public License. However the source code for this
file must still be made available in accordance with section (3) of
the GNU General Public License v2.
This exception does not invalidate any other reasons why a work based
on this file might be covered by the GNU General Public License.
*/
/**
* \file uffs_os_posix.c
* \brief Emulation on POSIX host. This is just a dumb implementation, does not really create semaphores.
* \author Ricky Zheng
*/
#include "uffs_config.h"
#include "uffs/uffs_os.h"
#include "uffs/uffs_public.h"
//#include <time.h>
#define PFX "os : "
int
uffs_SemCreate
(
OSSEM
*
sem
)
{
static
int
count
=
0
;
char
name
[
RT_NAME_MAX
+
1
];
struct
rt_mutex
*
mutex
=
RT_NULL
;
rt_snprintf
(
name
,
sizeof
(
name
),
"usem%d"
,
count
++
);
mutex
=
rt_mutex_create
(
name
,
RT_IPC_FLAG_FIFO
);
if
(
mutex
!=
RT_NULL
)
{
*
sem
=
(
OSSEM
*
)
mutex
;
return
0
;
}
uffs_Perror
(
UFFS_MSG_SERIOUS
,
"can't get a semphore"
);
return
-
1
;
}
int
uffs_SemWait
(
OSSEM
sem
)
{
return
rt_mutex_take
((
struct
rt_mutex
*
)
sem
,
RT_WAITING_FOREVER
);
}
int
uffs_SemSignal
(
OSSEM
sem
)
{
return
rt_mutex_release
((
struct
rt_mutex
*
)
sem
);
}
int
uffs_SemDelete
(
OSSEM
*
sem
)
{
int
ret
=
-
1
;
if
(
sem
)
{
ret
=
rt_mutex_delete
((
struct
rt_mutex
*
)(
*
sem
));
if
(
ret
==
RT_EOK
)
{
*
sem
=
0
;
}
}
return
ret
;
}
int
uffs_OSGetTaskId
(
void
)
{
//TODO: ... return current task ID ...
return
0
;
}
unsigned
int
uffs_GetCurDateTime
(
void
)
{
// FIXME: return system time, please modify this for your platform !
// or just return 0 if you don't care about file time.
#if 0
time_t tvalue;
tvalue = time(NULL);
return (unsigned int)tvalue;
#endif
return
0
;
}
#if CONFIG_USE_SYSTEM_MEMORY_ALLOCATOR > 0
static
void
*
sys_malloc
(
struct
uffs_DeviceSt
*
dev
,
unsigned
int
size
)
{
dev
=
dev
;
uffs_Perror
(
UFFS_MSG_NORMAL
,
"system memory alloc %d bytes"
,
size
);
return
rt_malloc
(
size
);
}
static
URET
sys_free
(
struct
uffs_DeviceSt
*
dev
,
void
*
p
)
{
dev
=
dev
;
rt_free
(
p
);
return
U_SUCC
;
}
void
uffs_MemSetupSystemAllocator
(
uffs_MemAllocator
*
allocator
)
{
allocator
->
malloc
=
sys_malloc
;
allocator
->
free
=
sys_free
;
}
#endif
#if !defined(RT_THREAD)
/* debug message output throught 'printf' */
static
void
output_dbg_msg
(
const
char
*
msg
);
static
struct
uffs_DebugMsgOutputSt
m_dbg_ops
=
{
output_dbg_msg
,
NULL
,
};
static
void
output_dbg_msg
(
const
char
*
msg
)
{
rt_kprintf
(
"%s"
,
msg
);
}
void
uffs_SetupDebugOutput
(
void
)
{
uffs_InitDebugMessageOutput
(
&
m_dbg_ops
,
UFFS_MSG_NOISY
);
}
#else
void
uffs_SetupDebugOutput
(
void
)
{
}
#endif
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录