Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OS
U-Boot.Mirror
提交
306b236b
U
U-Boot.Mirror
项目概览
OS
/
U-Boot.Mirror
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
U
U-Boot.Mirror
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
306b236b
编写于
4月 04, 2017
作者:
A
Alexandru Gagniuc
提交者:
Tom Rini
4月 08, 2017
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
common/xyzModem.c: unifdef (Remove useless #ifdefs)
Signed-off-by:
N
Alexandru Gagniuc
<
alex.g@adaptrum.com
>
上级
0dcf18c6
变更
2
显示空白变更内容
内联
并排
Showing
2 changed file
with
0 addition
and
110 deletion
+0
-110
common/xyzModem.c
common/xyzModem.c
+0
-103
include/xyzModem.h
include/xyzModem.h
+0
-7
未找到文件。
common/xyzModem.c
浏览文件 @
306b236b
...
...
@@ -39,25 +39,17 @@
#define CAN 0x18
#define EOF 0x1A
/* ^Z for DOS officionados */
#define USE_YMODEM_LENGTH
/* Data & state local to the protocol */
static
struct
{
#ifdef REDBOOT
hal_virtual_comm_table_t
*
__chan
;
#else
int
*
__chan
;
#endif
unsigned
char
pkt
[
1024
],
*
bufp
;
unsigned
char
blk
,
cblk
,
crc1
,
crc2
;
unsigned
char
next_blk
;
/* Expected block */
int
len
,
mode
,
total_retries
;
int
total_SOH
,
total_STX
,
total_CAN
;
bool
crc_mode
,
at_eof
,
tx_ack
;
#ifdef USE_YMODEM_LENGTH
unsigned
long
file_length
,
read_length
;
#endif
}
xyz
;
#define xyzModem_CHAR_TIMEOUT 2000
/* 2 seconds */
...
...
@@ -66,7 +58,6 @@ static struct
#define xyzModem_CAN_COUNT 3
/* Wait for 3 CAN before quitting */
#ifndef REDBOOT
/*SB */
typedef
int
cyg_int32
;
static
int
CYGACC_COMM_IF_GETC_TIMEOUT
(
char
chan
,
char
*
c
)
...
...
@@ -156,17 +147,7 @@ parse_num (char *s, unsigned long *val, char **es, char *delim)
if
(
_is_hex
(
c
)
&&
((
digit
=
_from_hex
(
c
))
<
radix
))
{
/* Valid digit */
#ifdef CYGPKG_HAL_MIPS
/* FIXME: tx49 compiler generates 0x2539018 for MUL which */
/* isn't any good. */
if
(
16
==
radix
)
result
=
result
<<
4
;
else
result
=
10
*
result
;
result
+=
digit
;
#else
result
=
(
result
*
radix
)
+
digit
;
#endif
}
else
{
...
...
@@ -190,41 +171,8 @@ parse_num (char *s, unsigned long *val, char **es, char *delim)
return
true
;
}
#endif
#define USE_SPRINTF
#ifdef DEBUG
#ifndef USE_SPRINTF
/*
* Note: this debug setup only works if the target platform has two serial ports
* available so that the other one (currently only port 1) can be used for debug
* messages.
*/
static
int
zm_dprintf
(
char
*
fmt
,
...)
{
int
cur_console
;
va_list
args
;
va_start
(
args
,
fmt
);
#ifdef REDBOOT
cur_console
=
CYGACC_CALL_IF_SET_CONSOLE_COMM
(
CYGNUM_CALL_IF_SET_COMM_ID_QUERY_CURRENT
);
CYGACC_CALL_IF_SET_CONSOLE_COMM
(
1
);
#endif
diag_vprintf
(
fmt
,
args
);
#ifdef REDBOOT
CYGACC_CALL_IF_SET_CONSOLE_COMM
(
cur_console
);
#endif
}
static
void
zm_flush
(
void
)
{
}
#else
/*
* Note: this debug setup works by storing the strings in a fixed buffer
*/
...
...
@@ -253,23 +201,13 @@ zm_dprintf (char *fmt, ...)
static
void
zm_flush
(
void
)
{
#ifdef REDBOOT
char
*
p
=
zm_out_start
;
while
(
*
p
)
mon_write_char
(
*
p
++
);
#endif
zm_out
=
zm_out_start
;
}
#endif
static
void
zm_dump_buf
(
void
*
buf
,
int
len
)
{
#ifdef REDBOOT
diag_vdump_buf_with_offset
(
zm_dprintf
,
buf
,
len
,
0
);
#else
#endif
}
static
unsigned
char
zm_buf
[
2048
];
...
...
@@ -476,9 +414,6 @@ xyzModem_get_hdr (void)
int
xyzModem_stream_open
(
connection_info_t
*
info
,
int
*
err
)
{
#ifdef REDBOOT
int
console_chan
;
#endif
int
stat
=
0
;
int
retries
=
xyzModem_MAX_RETRIES
;
int
crc_retries
=
xyzModem_MAX_RETRIES_WITH_CRC
;
...
...
@@ -492,29 +427,9 @@ xyzModem_stream_open (connection_info_t * info, int *err)
}
#endif
#ifdef REDBOOT
/* Set up the I/O channel. Note: this allows for using a different port in the future */
console_chan
=
CYGACC_CALL_IF_SET_CONSOLE_COMM
(
CYGNUM_CALL_IF_SET_COMM_ID_QUERY_CURRENT
);
if
(
info
->
chan
>=
0
)
{
CYGACC_CALL_IF_SET_CONSOLE_COMM
(
info
->
chan
);
}
else
{
CYGACC_CALL_IF_SET_CONSOLE_COMM
(
console_chan
);
}
xyz
.
__chan
=
CYGACC_CALL_IF_CONSOLE_PROCS
();
CYGACC_CALL_IF_SET_CONSOLE_COMM
(
console_chan
);
CYGACC_COMM_IF_CONTROL
(
*
xyz
.
__chan
,
__COMMCTL_SET_TIMEOUT
,
xyzModem_CHAR_TIMEOUT
);
#else
/* TODO: CHECK ! */
int
dummy
=
0
;
xyz
.
__chan
=
&
dummy
;
#endif
xyz
.
len
=
0
;
xyz
.
crc_mode
=
true
;
xyz
.
at_eof
=
false
;
...
...
@@ -524,10 +439,8 @@ xyzModem_stream_open (connection_info_t * info, int *err)
xyz
.
total_SOH
=
0
;
xyz
.
total_STX
=
0
;
xyz
.
total_CAN
=
0
;
#ifdef USE_YMODEM_LENGTH
xyz
.
read_length
=
0
;
xyz
.
file_length
=
0
;
#endif
CYGACC_COMM_IF_PUTC
(
*
xyz
.
__chan
,
(
xyz
.
crc_mode
?
'C'
:
NAK
));
...
...
@@ -546,12 +459,10 @@ xyzModem_stream_open (connection_info_t * info, int *err)
/* Y-modem file information header */
if
(
xyz
.
blk
==
0
)
{
#ifdef USE_YMODEM_LENGTH
/* skip filename */
while
(
*
xyz
.
bufp
++
);
/* get the length */
parse_num
((
char
*
)
xyz
.
bufp
,
&
xyz
.
file_length
,
NULL
,
" "
);
#endif
/* The rest of the file name data block quietly discarded */
xyz
.
tx_ack
=
true
;
}
...
...
@@ -604,13 +515,8 @@ xyzModem_stream_read (char *buf, int size, int *err)
(
"ACK block %d (%d)
\n
"
,
xyz
.
blk
,
__LINE__
));
xyz
.
next_blk
=
(
xyz
.
next_blk
+
1
)
&
0xFF
;
#if defined(xyzModem_zmodem) || defined(USE_YMODEM_LENGTH)
if
(
xyz
.
mode
==
xyzModem_xmodem
||
xyz
.
file_length
==
0
)
{
#else
if
(
1
)
{
#endif
/* Data blocks can be padded with ^Z (EOF) characters */
/* This code tries to detect and remove them */
if
((
xyz
.
bufp
[
xyz
.
len
-
1
]
==
EOF
)
&&
...
...
@@ -625,7 +531,6 @@ xyzModem_stream_read (char *buf, int size, int *err)
}
}
#ifdef USE_YMODEM_LENGTH
/*
* See if accumulated length exceeds that of the file.
* If so, reduce size (i.e., cut out pad bytes)
...
...
@@ -640,7 +545,6 @@ xyzModem_stream_read (char *buf, int size, int *err)
xyz
.
len
-=
(
xyz
.
read_length
-
xyz
.
file_length
);
}
}
#endif
break
;
}
else
if
(
xyz
.
blk
==
((
xyz
.
next_blk
-
1
)
&
0xFF
))
...
...
@@ -809,10 +713,3 @@ xyzModem_error (int err)
/*
* RedBoot interface
*/
#if 0 /* SB */
GETC_IO_FUNCS (xyzModem_io, xyzModem_stream_open, xyzModem_stream_close,
xyzModem_stream_terminate, xyzModem_stream_read,
xyzModem_error);
RedBoot_load (xmodem, xyzModem_io, false, false, xyzModem_xmodem);
RedBoot_load (ymodem, xyzModem_io, false, false, xyzModem_ymodem);
#endif
include/xyzModem.h
浏览文件 @
306b236b
...
...
@@ -44,9 +44,6 @@
#define xyzModem_abort 2
#ifdef REDBOOT
extern
getc_io_funcs_t
xyzModem_io
;
#else
#define CYGNUM_CALL_IF_SET_COMM_ID_QUERY_CURRENT
#define CYGACC_CALL_IF_SET_CONSOLE_COMM(x)
...
...
@@ -60,12 +57,8 @@ typedef struct {
char
*
filename
;
int
mode
;
int
chan
;
#ifdef CYGPKG_REDBOOT_NETWORKING
struct
sockaddr_in
*
server
;
#endif
}
connection_info_t
;
#endif
int
xyzModem_stream_open
(
connection_info_t
*
info
,
int
*
err
);
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录