Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
2301_76519099
rt-thread
提交
b2dedae4
R
rt-thread
项目概览
2301_76519099
/
rt-thread
与 Fork 源项目一致
Fork自
RT-Thread / rt-thread
通知
3
Star
1
Fork
1
代码
文件
提交
分支
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,发现更多精彩内容 >>
提交
b2dedae4
编写于
6月 19, 2019
作者:
G
guozhanxin
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
[driver][mtd_nand] Add debug command to MSH.|向 MSH 添加调试命令。
上级
c421757c
变更
1
显示空白变更内容
内联
并排
Showing
1 changed file
with
81 addition
and
7 deletion
+81
-7
components/drivers/mtd/mtd_nand.c
components/drivers/mtd/mtd_nand.c
+81
-7
未找到文件。
components/drivers/mtd/mtd_nand.c
浏览文件 @
b2dedae4
...
...
@@ -131,7 +131,6 @@ int mtd_nandid(const char *name)
return
rt_mtd_nand_read_id
(
nand
);
}
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nandid
,
nand_id
,
read
ID
-
nandid
(
name
));
int
mtd_nand_read
(
const
char
*
name
,
int
block
,
int
page
)
{
...
...
@@ -169,7 +168,6 @@ int mtd_nand_read(const char *name, int block, int page)
rt_free
(
page_ptr
);
return
0
;
}
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_read
,
nand_read
,
read
page
in
nand
-
nand_read
(
name
,
block
,
page
));
int
mtd_nand_readoob
(
const
char
*
name
,
int
block
,
int
page
)
{
...
...
@@ -199,7 +197,6 @@ int mtd_nand_readoob(const char *name, int block, int page)
rt_free
(
oob_ptr
);
return
0
;
}
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_readoob
,
nand_readoob
,
read
spare
data
in
nand
-
nand_readoob
(
name
,
block
,
page
));
int
mtd_nand_write
(
const
char
*
name
,
int
block
,
int
page
)
{
...
...
@@ -247,7 +244,6 @@ int mtd_nand_write(const char *name, int block, int page)
rt_free
(
page_ptr
);
return
0
;
}
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_write
,
nand_write
,
write
dump
data
to
nand
-
nand_write
(
name
,
block
,
page
));
int
mtd_nand_erase
(
const
char
*
name
,
int
block
)
{
...
...
@@ -261,7 +257,6 @@ int mtd_nand_erase(const char *name, int block)
return
rt_mtd_nand_erase_block
(
nand
,
block
);
}
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_erase
,
nand_erase
,
nand_erase
(
name
,
block
));
int
mtd_nand_erase_all
(
const
char
*
name
)
{
...
...
@@ -282,7 +277,86 @@ int mtd_nand_erase_all(const char *name)
return
0
;
}
#ifdef FINSH_USING_MSH
static
void
mtd_nand
(
int
argc
,
char
**
argv
)
{
/* If the number of arguments less than 2 */
if
(
argc
<
3
)
{
help:
rt_kprintf
(
"
\n
"
);
rt_kprintf
(
"mtd_nand [OPTION] [PARAM ...]
\n
"
);
rt_kprintf
(
" id <name> Get nandid by given name
\n
"
);
rt_kprintf
(
" read <name> <bn> <pn> Read data on page <pn> of block <bn> of device <name>
\n
"
);
rt_kprintf
(
" readoob <name> <bn> <pn> Read oob on page <pn> of block <bn> of device <name>
\n
"
);
rt_kprintf
(
" write <name> <bn> <pn> Run write test on page <pn> of block <bn> of device <name>
\n
"
);
rt_kprintf
(
" erase <name> <bn> Erase on block <bn> of device <name>
\n
"
);
rt_kprintf
(
" eraseall <name> Erase all block on device <name>
\n
"
);
return
;
}
else
if
(
!
strcmp
(
argv
[
1
],
"id"
))
{
mtd_nandid
(
argv
[
2
]);
}
else
if
(
!
strcmp
(
argv
[
1
],
"read"
))
{
if
(
argc
<
5
)
{
rt_kprintf
(
"The input parameters are too few!
\n
"
);
goto
help
;
}
mtd_nand_read
(
argv
[
2
],
atoi
(
argv
[
3
]),
atoi
(
argv
[
4
]));
}
else
if
(
!
strcmp
(
argv
[
1
],
"readoob"
))
{
if
(
argc
<
5
)
{
rt_kprintf
(
"The input parameters are too few!
\n
"
);
goto
help
;
}
mtd_nand_readoob
(
argv
[
2
],
atoi
(
argv
[
3
]),
atoi
(
argv
[
4
]));
}
else
if
(
!
strcmp
(
argv
[
1
],
"write"
))
{
if
(
argc
<
5
)
{
rt_kprintf
(
"The input parameters are too few!
\n
"
);
goto
help
;
}
mtd_nand_write
(
argv
[
2
],
atoi
(
argv
[
3
]),
atoi
(
argv
[
4
]));
}
else
if
(
!
strcmp
(
argv
[
1
],
"erase"
))
{
if
(
argc
<
4
)
{
rt_kprintf
(
"The input parameters are too few!
\n
"
);
goto
help
;
}
mtd_nand_erase
(
argv
[
2
],
atoi
(
argv
[
3
]));
}
else
if
(
!
strcmp
(
argv
[
1
],
"eraseall"
))
{
mtd_nand_erase_all
(
argv
[
2
]);
}
else
{
rt_kprintf
(
"Input parameters are not supported!
\n
"
);
goto
help
;
}
}
MSH_CMD_EXPORT
(
mtd_nand
,
MTD
nand
device
test
function
);
#endif
/* FINSH_USING_MSH */
#ifndef FINSH_USING_MSH_ONLY
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nandid
,
nand_id
,
read
ID
-
nandid
(
name
));
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_read
,
nand_read
,
read
page
in
nand
-
nand_read
(
name
,
block
,
page
));
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_readoob
,
nand_readoob
,
read
spare
data
in
nand
-
nand_readoob
(
name
,
block
,
page
));
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_write
,
nand_write
,
write
dump
data
to
nand
-
nand_write
(
name
,
block
,
page
));
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_erase
,
nand_erase
,
nand_erase
(
name
,
block
));
FINSH_FUNCTION_EXPORT_ALIAS
(
mtd_nand_erase_all
,
nand_erase_all
,
erase
all
of
nand
device
-
nand_erase_all
(
name
,
block
));
#endif
#endif
/* FINSH_USING_MSH_ONLY */
#endif
#endif
/* defined(RT_MTD_NAND_DEBUG) && defined(RT_USING_FINSH) */
#endif
/* RT_USING_MTD_NAND */
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录