Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OS
U-Boot.Mirror
提交
824a1ebf
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,发现更多精彩内容 >>
提交
824a1ebf
编写于
4月 20, 2003
作者:
W
wdenk
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Compile fixes
上级
d791b1dc
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
98 addition
and
173 deletion
+98
-173
MAKEALL
MAKEALL
+1
-2
Makefile
Makefile
+1
-5
board/r360mpi/r360mpi.c
board/r360mpi/r360mpi.c
+89
-67
cpu/mpc8xx/lcd.c
cpu/mpc8xx/lcd.c
+3
-99
include/configs/LANTEC.h
include/configs/LANTEC.h
+1
-0
include/configs/MPC8260ADS.h
include/configs/MPC8260ADS.h
+1
-0
include/configs/ep8260.h
include/configs/ep8260.h
+1
-0
include/configs/hymod.h
include/configs/hymod.h
+1
-0
未找到文件。
MAKEALL
浏览文件 @
824a1ebf
...
...
@@ -35,8 +35,7 @@ LIST_8xx=" \
R360MPI RPXClassic RPXlite RRvision
\
SM850 SPD823TS svm_sc8xx SXNI855T
\
TOP860 TQM823L TQM823L_LCD TQM850L
\
TQM855L TQM860L TQM860L_FEC TTTech
\
v37
\
TQM855L TQM860L TTTech v37
\
"
#########################################################################
...
...
Makefile
浏览文件 @
824a1ebf
...
...
@@ -337,7 +337,7 @@ TOP860_config: unconfig
# All boards can come with 50 MHz (default), 66MHz or 80MHz clock,
# but only 855 and 860 boards may come with FEC
# and 823 boards may have LCD support
xtract_8xx
=
$(
subst
_66MHz,,
$(
subst
_80MHz,,
$(
subst
_LCD,,
$(
subst
_
FEC,,
$(
subst
_config,,
$1
)
))))
xtract_8xx
=
$(
subst
_66MHz,,
$(
subst
_80MHz,,
$(
subst
_LCD,,
$(
subst
_
config,,
$1
))))
FPS850L_config
\
FPS860L_config
\
...
...
@@ -360,10 +360,6 @@ TQM862L_config \
TQM862L_66MHz_config
\
TQM862L_80MHz_config
:
unconfig
@
>
include/config.h
@
[
-z
"
$(
findstring
_FEC,
$@
)
"
]
||
\
{
echo
"#define CONFIG_FEC_ENET"
>>
include/config.h
;
\
echo
"... with FEC support"
;
\
}
@
[
-z
"
$(
findstring
_66MHz,
$@
)
"
]
||
\
{
echo
"#define CONFIG_66MHz"
>>
include/config.h
;
\
echo
"... with 66MHz system clock"
;
\
...
...
board/r360mpi/r360mpi.c
浏览文件 @
824a1ebf
...
...
@@ -126,12 +126,12 @@ long int initdram (int board_type)
memctl
->
memc_mar
=
0x00000088
;
/*
* Map controller bank
1
to the SDRAM bank at
* Map controller bank
2
to the SDRAM bank at
* preliminary address - these have to be modified after the
* SDRAM size has been determined.
*/
memctl
->
memc_or
1
=
CFG_OR1
_PRELIM
;
memctl
->
memc_br
1
=
CFG_BR1
_PRELIM
;
memctl
->
memc_or
2
=
CFG_OR2
_PRELIM
;
memctl
->
memc_br
2
=
CFG_BR2
_PRELIM
;
memctl
->
memc_mamr
=
CFG_MAMR_8COL
&
(
~
(
MAMR_PTAE
));
/* no refresh yet */
...
...
@@ -139,9 +139,9 @@ long int initdram (int board_type)
/* perform SDRAM initializsation sequence */
memctl
->
memc_mcr
=
0x8000
2
105
;
/* SDRAM bank 0 */
memctl
->
memc_mcr
=
0x8000
4
105
;
/* SDRAM bank 0 */
udelay
(
200
);
memctl
->
memc_mcr
=
0x8000
2
230
;
/* SDRAM bank 0 - execute twice */
memctl
->
memc_mcr
=
0x8000
4
230
;
/* SDRAM bank 0 - execute twice */
udelay
(
200
);
memctl
->
memc_mamr
|=
MAMR_PTAE
;
/* enable refresh */
...
...
@@ -153,7 +153,7 @@ long int initdram (int board_type)
*
* try 8 column mode
*/
size8
=
dram_size
(
CFG_MAMR_8COL
,
(
ulong
*
)
SDRAM_BASE
1
_PRELIM
,
size8
=
dram_size
(
CFG_MAMR_8COL
,
(
ulong
*
)
SDRAM_BASE
2
_PRELIM
,
SDRAM_MAX_SIZE
);
udelay
(
1000
);
...
...
@@ -161,13 +161,13 @@ long int initdram (int board_type)
/*
* try 9 column mode
*/
size9
=
dram_size
(
CFG_MAMR_9COL
,
(
ulong
*
)
SDRAM_BASE
1
_PRELIM
,
size9
=
dram_size
(
CFG_MAMR_9COL
,
(
ulong
*
)
SDRAM_BASE
2
_PRELIM
,
SDRAM_MAX_SIZE
);
if
(
size8
<
size9
)
{
/* leave configuration at 9 columns */
size_b0
=
size9
;
/* debug ("SDRAM Bank 0 in 9 column mode: %ld MB\n", size >> 20); */
}
else
{
/* back to 8 columns */
}
else
{
/* back to 8 columns */
size_b0
=
size8
;
memctl
->
memc_mamr
=
CFG_MAMR_8COL
;
udelay
(
500
);
...
...
@@ -200,6 +200,47 @@ long int initdram (int board_type)
udelay
(
10000
);
#ifdef CONFIG_CAN_DRIVER
/* Initialize OR3 / BR3 */
memctl
->
memc_or3
=
CFG_OR3_CAN
;
/* switch GPLB_5 to GPLA_5 */
memctl
->
memc_br3
=
CFG_BR3_CAN
;
/* Initialize MBMR */
memctl
->
memc_mbmr
=
MAMR_GPL_B4DIS
;
/* GPL_B4 works as UPWAITB */
/* Initialize UPMB for CAN: single read */
memctl
->
memc_mdr
=
0xFFFFC004
;
memctl
->
memc_mcr
=
0x0100
|
UPMB
;
memctl
->
memc_mdr
=
0x0FFFD004
;
memctl
->
memc_mcr
=
0x0101
|
UPMB
;
memctl
->
memc_mdr
=
0x0FFFC000
;
memctl
->
memc_mcr
=
0x0102
|
UPMB
;
memctl
->
memc_mdr
=
0x3FFFC004
;
memctl
->
memc_mcr
=
0x0103
|
UPMB
;
memctl
->
memc_mdr
=
0xFFFFDC05
;
memctl
->
memc_mcr
=
0x0104
|
UPMB
;
/* Initialize UPMB for CAN: single write */
memctl
->
memc_mdr
=
0xFFFCC004
;
memctl
->
memc_mcr
=
0x0118
|
UPMB
;
memctl
->
memc_mdr
=
0xCFFCD004
;
memctl
->
memc_mcr
=
0x0119
|
UPMB
;
memctl
->
memc_mdr
=
0x0FFCC000
;
memctl
->
memc_mcr
=
0x011A
|
UPMB
;
memctl
->
memc_mdr
=
0x7FFCC004
;
memctl
->
memc_mcr
=
0x011B
|
UPMB
;
memctl
->
memc_mdr
=
0xFFFDCC05
;
memctl
->
memc_mcr
=
0x011C
|
UPMB
;
#endif
return
(
size_b0
);
}
...
...
@@ -213,8 +254,8 @@ long int initdram (int board_type)
* - short between data lines
*/
static
long
int
dram_size
(
long
int
mamr_value
,
long
int
*
base
,
long
int
maxsize
)
static
long
int
dram_size
(
long
int
mamr_value
,
long
int
*
base
,
long
int
maxsize
)
{
volatile
immap_t
*
immap
=
(
immap_t
*
)
CFG_IMMR
;
volatile
memctl8xx_t
*
memctl
=
&
immap
->
im_memctl
;
...
...
@@ -257,10 +298,10 @@ static long int dram_size (long int mamr_value, long int *base,
/* ------------------------------------------------------------------------- */
void
r360_
pwm_write
(
uchar
reg
,
uchar
val
)
void
r360_
i2c_lcd_write
(
uchar
data0
,
uchar
data1
)
{
if
(
i2c_write
(
CFG_I2C_
PWM_ADDR
,
reg
,
1
,
&
val
,
1
))
{
printf
(
"Can't write PWM register 0x%02X.
\n
"
,
reg
);
if
(
i2c_write
(
CFG_I2C_
LCD_ADDR
,
data0
,
1
,
&
data1
,
1
))
{
printf
(
"Can't write lcd data 0x%02X 0x%02X.
\n
"
,
data0
,
data1
);
}
}
...
...
@@ -271,10 +312,8 @@ void r360_pwm_write (uchar reg, uchar val)
*/
/* Number of bytes returned from Keyboard Controller */
#define KEYBD_KEY_MAX 20
/* maximum key number */
#define KEYBD_DATALEN ((KEYBD_KEY_MAX + 7) / 8)
/* normal key scan data */
static
uchar
kbd_addr
=
CFG_I2C_KBD_ADDR
;
#define KEYBD_KEY_MAX 16
/* maximum key number */
#define KEYBD_DATALEN ((KEYBD_KEY_MAX + 7) / 8)
/* normal key scan data */
static
uchar
*
key_match
(
uchar
*
);
...
...
@@ -287,14 +326,14 @@ int misc_init_r (void)
i2c_init
(
CFG_I2C_SPEED
,
CFG_I2C_SLAVE
);
i2c_read
(
kbd_addr
,
0
,
0
,
kbd_data
,
KEYBD_DATALEN
);
i2c_read
(
CFG_I2C_KEY_ADDR
,
0
,
0
,
kbd_data
,
KEYBD_DATALEN
);
for
(
i
=
0
;
i
<
KEYBD_DATALEN
;
++
i
)
{
sprintf
(
keybd_env
+
i
+
i
,
"%02X"
,
kbd_data
[
i
]);
}
setenv
(
"keybd"
,
keybd_env
);
str
=
strdup
(
key_match
(
k
bd_data
));
/* decode keys */
str
=
strdup
(
key_match
(
k
eybd_env
));
/* decode keys */
#ifdef CONFIG_PREBOOT
/* automatically configure "preboot" command on key match */
setenv
(
"preboot"
,
str
);
/* set or delete definition */
...
...
@@ -324,16 +363,13 @@ int misc_init_r (void)
static
uchar
kbd_magic_prefix
[]
=
"key_magic"
;
static
uchar
kbd_command_prefix
[]
=
"key_cmd"
;
static
uchar
*
key_match
(
uchar
*
kbd_
data
)
static
uchar
*
key_match
(
uchar
*
kbd_
str
)
{
uchar
compare
[
KEYBD_DATALEN
];
uchar
magic
[
sizeof
(
kbd_magic_prefix
)
+
1
];
uchar
cmd_name
[
sizeof
(
kbd_command_prefix
)
+
1
];
uchar
key_mask
;
uchar
*
str
,
*
nxt
,
*
suffix
;
uchar
*
str
,
*
suffix
;
uchar
*
kbd_magic_keys
;
char
*
cmd
;
int
i
;
/*
* The following string defines the characters that can pe appended
...
...
@@ -343,62 +379,48 @@ static uchar *key_match (uchar * kbd_data)
* "key_magic" is checked (old behaviour); the string "125" causes
* checks for "key_magic1", "key_magic2" and "key_magic5", etc.
*/
if
((
kbd_magic_keys
=
getenv
(
"magic_keys"
))
==
NULL
)
kbd_magic_keys
=
""
;
if
((
kbd_magic_keys
=
getenv
(
"magic_keys"
))
!=
NULL
)
{
/* loop over all magic keys;
* use '\0' suffix in case of empty string
*/
for
(
suffix
=
kbd_magic_keys
;
*
suffix
||
suffix
==
kbd_magic_keys
;
++
suffix
)
{
sprintf
(
magic
,
"%s%c"
,
kbd_magic_prefix
,
*
suffix
);
/* loop over all magic keys;
* use '\0' suffix in case of empty string
*/
for
(
suffix
=
kbd_magic_keys
;
*
suffix
||
suffix
==
kbd_magic_keys
;
++
suffix
)
{
sprintf
(
magic
,
"%s%c"
,
kbd_magic_prefix
,
*
suffix
);
#if 0
printf ("### Check magic \"%s\"\n", magic);
printf ("### Check magic \"%s\"\n", magic);
#endif
memcpy
(
compare
,
kbd_data
,
KEYBD_DATALEN
);
for
(
str
=
getenv
(
magic
);
str
!=
NULL
;
str
=
(
*
nxt
)
?
nxt
+
1
:
nxt
)
{
uchar
c
;
c
=
(
uchar
)
simple_strtoul
(
str
,
(
char
**
)
(
&
nxt
),
16
);
if
(
str
==
nxt
)
/* invalid character */
break
;
if
(
c
>=
KEYBD_KEY_MAX
)
/* bad key number */
goto
next_magic
;
key_mask
=
0x80
>>
(
c
%
8
);
if
(
!
(
compare
[
c
/
8
]
&
key_mask
))
/* key not pressed */
goto
next_magic
;
if
((
str
=
getenv
(
magic
))
!=
0
)
{
compare
[
c
/
8
]
&=
~
key_mask
;
}
for
(
i
=
0
;
i
<
KEYBD_DATALEN
;
i
++
)
if
(
compare
[
i
])
/* key(s) not released */
goto
next_magic
;
sprintf
(
cmd_name
,
"%s%c"
,
kbd_command_prefix
,
*
suffix
);
cmd
=
getenv
(
cmd_name
);
#if 0
printf ("### Set PREBOOT to $(%s):
\"%s\"\n",
cmd_name, cmd ? cmd : "<<NULL>>"
);
printf ("### Compare \"%s\"
\"%s\"\n",
kbd_str, str
);
#endif
*
kbd_data
=
*
suffix
;
return
(
cmd
);
if
(
strcmp
(
kbd_str
,
str
)
==
0
)
{
sprintf
(
cmd_name
,
"%s%c"
,
kbd_command_prefix
,
*
suffix
);
next_magic:
;
if
((
cmd
=
getenv
(
cmd_name
))
!=
0
)
{
#if 0
printf ("### Set PREBOOT to $(%s): \"%s\"\n",
cmd_name, cmd);
#endif
return
(
cmd
);
}
}
}
}
}
#if 0
printf ("### Delete PREBOOT\n");
#endif
*
kbd_
data
=
'\0'
;
*
kbd_
str
=
'\0'
;
return
(
NULL
);
}
#endif
/* CONFIG_PREBOOT */
#endif
/* CONFIG_PREBOOT */
/* Read Keyboard status */
int
do_kbd
(
cmd_tbl_t
*
cmdtp
,
int
flag
,
int
argc
,
char
*
argv
[])
...
...
@@ -410,7 +432,7 @@ int do_kbd (cmd_tbl_t * cmdtp, int flag, int argc, char *argv[])
i2c_init
(
CFG_I2C_SPEED
,
CFG_I2C_SLAVE
);
/* Read keys */
i2c_read
(
kbd_addr
,
0
,
0
,
kbd_data
,
KEYBD_DATALEN
);
i2c_read
(
CFG_I2C_KEY_ADDR
,
0
,
0
,
kbd_data
,
KEYBD_DATALEN
);
puts
(
"Keys:"
);
for
(
i
=
0
;
i
<
KEYBD_DATALEN
;
++
i
)
{
...
...
cpu/mpc8xx/lcd.c
浏览文件 @
824a1ebf
...
...
@@ -1001,102 +1001,6 @@ static void lcd_enable (void)
/*----------------------------------------------------------------------*/
#if (CONFIG_COMMANDS & CFG_CMD_BMP)
/*
Display the BMP file located at address bmp_image.
Only uncompressed
*/
int
lcd_display_bitmap
(
ulong
bmp_image
)
{
volatile
immap_t
*
immr
=
(
immap_t
*
)
CFG_IMMR
;
volatile
cpm8xx_t
*
cp
=
&
(
immr
->
im_cpm
);
ushort
*
cmap
;
ushort
i
,
j
;
uchar
*
fb
;
bmp_image_t
*
bmp
=
(
bmp_image_t
*
)
bmp_image
;
uchar
*
bmap
;
ushort
padded_line
;
unsigned
long
width
,
height
;
unsigned
colors
,
bpix
;
unsigned
long
compression
;
if
(
!
((
bmp
->
header
.
signature
[
0
]
==
'B'
)
&&
(
bmp
->
header
.
signature
[
1
]
==
'M'
)))
{
printf
(
"Error: no valid bmp image at %lx
\n
"
,
bmp_image
);
return
1
;
}
width
=
le32_to_cpu
(
bmp
->
header
.
width
);
height
=
le32_to_cpu
(
bmp
->
header
.
height
);
colors
=
1
<<
le16_to_cpu
(
bmp
->
header
.
bit_count
);
compression
=
le32_to_cpu
(
bmp
->
header
.
compression
);
bpix
=
NBITS
(
panel_info
.
vl_bpix
);
if
((
bpix
!=
1
)
&&
(
bpix
!=
8
))
{
printf
(
"Error: %d bit/pixel mode not supported by U-Boot
\n
"
,
bpix
);
return
1
;
}
if
(
bpix
!=
le16_to_cpu
(
bmp
->
header
.
bit_count
))
{
printf
(
"Error: %d bit/pixel mode, but BMP has %d bit/pixel
\n
"
,
bpix
,
le16_to_cpu
(
bmp
->
header
.
bit_count
));
return
1
;
}
if
(
compression
!=
BMP_BI_RGB
)
{
printf
(
"Error: compression type %ld not supported
\n
"
,
compression
);
return
1
;
}
debug
(
"Display-bmp: %d x %d with %d colors
\n
"
,
width
,
height
,
colors
);
if
(
bpix
==
8
)
{
/* Fill the entire color map */
cmap
=
(
ushort
*
)
&
(
cp
->
lcd_cmap
[
255
*
sizeof
(
ushort
)]);
/* Set color map */
for
(
i
=
0
;
i
<
colors
;
++
i
)
{
bmp_color_table_entry_t
cte
=
bmp
->
color_table
[
i
];
ushort
colreg
=
((
cte
.
red
>>
4
)
<<
8
)
|
((
cte
.
green
>>
4
)
<<
4
)
|
(
cte
.
blue
>>
4
)
;
#ifdef CFG_INVERT_COLORS
colreg
^=
0xFFF
;
#endif
*
cmap
--
=
colreg
;
}
}
padded_line
=
(
width
&
0x3
)
?
((
width
&~
0x3
)
+
4
)
:
(
width
);
if
(
width
>
panel_info
.
vl_col
)
width
=
panel_info
.
vl_col
;
if
(
height
>
panel_info
.
vl_row
)
height
=
panel_info
.
vl_row
;
bmap
=
(
uchar
*
)
bmp
+
le32_to_cpu
(
bmp
->
header
.
data_offset
);
fb
=
(
uchar
*
)
(
lcd_base
+
(((
height
>=
panel_info
.
vl_row
)
?
panel_info
.
vl_row
:
height
)
-
1
)
*
lcd_line_length
);
for
(
i
=
0
;
i
<
height
;
++
i
)
{
for
(
j
=
0
;
j
<
width
;
j
++
)
*
(
fb
++
)
=
255
-*
(
bmap
++
);
bmap
+=
(
width
-
padded_line
);
fb
-=
(
width
+
lcd_line_length
);
}
return
(
0
);
}
#endif
/* (CONFIG_COMMANDS & CFG_CMD_BMP) */
/*----------------------------------------------------------------------*/
#ifdef NOT_USED_SO_FAR
static
void
lcd_disable
(
void
)
{
...
...
@@ -1170,9 +1074,9 @@ static void bitmap_plot (int x, int y)
#if (CONFIG_COMMANDS & CFG_CMD_BMP)
/*
Display the BMP file located at address bmp_image.
Only uncompressed
*/
*
Display the BMP file located at address bmp_image.
*
Only uncompressed
*/
int
lcd_display_bitmap
(
ulong
bmp_image
)
{
volatile
immap_t
*
immr
=
(
immap_t
*
)
CFG_IMMR
;
...
...
include/configs/LANTEC.h
浏览文件 @
824a1ebf
...
...
@@ -84,6 +84,7 @@
#define CONFIG_CMD_NORMAL (CONFIG_CMD_DFL & ~CFG_CMD_BOOTD)
#define CONFIG_CMD_GDB (CONFIG_CMD_NORMAL | CFG_CMD_KGDB)
#define CONFIG_CMD_FULL (CFG_CMD_ALL & ~CFG_CMD_BEDBUG \
& ~CFG_CMD_BMP \
& ~CFG_CMD_BSP \
& ~CFG_CMD_DOC \
& ~CFG_CMD_DTT \
...
...
include/configs/MPC8260ADS.h
浏览文件 @
824a1ebf
...
...
@@ -114,6 +114,7 @@
#define CONFIG_COMMANDS (CFG_CMD_ALL & ~( \
CFG_CMD_BEDBUG | \
CFG_CMD_BMP | \
CFG_CMD_BSP | \
CFG_CMD_DATE | \
CFG_CMD_DOC | \
...
...
include/configs/ep8260.h
浏览文件 @
824a1ebf
...
...
@@ -270,6 +270,7 @@
/*
*/
#define CONFIG_COMMANDS ( CFG_CMD_ALL & \
~CFG_CMD_BMP & \
~CFG_CMD_BSP & \
~CFG_CMD_DCR & \
~CFG_CMD_DHCP & \
...
...
include/configs/hymod.h
浏览文件 @
824a1ebf
...
...
@@ -138,6 +138,7 @@
#define CONFIG_COMMANDS (CFG_CMD_ALL & ~( \
CFG_CMD_BEDBUG | \
CFG_CMD_BMP | \
CFG_CMD_DOC | \
CFG_CMD_ELF | \
CFG_CMD_FDC | \
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录