Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OS
U-Boot.Mirror
提交
cbdf8824
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,发现更多精彩内容 >>
提交
cbdf8824
编写于
10月 13, 2005
作者:
W
Wolfgang Denk
浏览文件
操作
浏览文件
下载
差异文件
Merge with /home/sr/git/u-boot
上级
b604a40b
4f92ac36
变更
8
隐藏空白更改
内联
并排
Showing
8 changed file
with
96 addition
and
18 deletion
+96
-18
CHANGELOG
CHANGELOG
+8
-0
board/esd/common/lcd.c
board/esd/common/lcd.c
+15
-8
common/cmd_bmp.c
common/cmd_bmp.c
+52
-0
cpu/ppc4xx/4xx_enet.c
cpu/ppc4xx/4xx_enet.c
+10
-4
drivers/cfb_console.c
drivers/cfb_console.c
+7
-0
include/configs/APC405.h
include/configs/APC405.h
+1
-1
include/configs/HH405.h
include/configs/HH405.h
+2
-4
include/configs/VOH405.h
include/configs/VOH405.h
+1
-1
未找到文件。
CHANGELOG
浏览文件 @
cbdf8824
...
...
@@ -2,6 +2,14 @@
Changes for U-Boot 1.1.4:
======================================================================
* Fix problem in ppc4xx eth-driver without ethaddr (only without
CONFIG_NET_MULTI set)
Patch by Stefan Roese, 10 Oct 2005
* Fix gzip bmp support (test if malloc fails, warning when truncated).
Increase CFG_VIDEO_LOGO_MAX_SIZE on HH405 board.
Patch by Stefan Roese, 07 Oct 2005
* Add support for OF flat tree for the STXtc board.
Patch by Pantelis Antoniou, 04 Sep 2005
...
...
board/esd/common/lcd.c
浏览文件 @
cbdf8824
...
...
@@ -81,7 +81,7 @@ void lcd_bmp(uchar *logo_bmp)
uchar
*
ptr
;
ushort
*
ptr2
;
ushort
val
;
unsigned
char
*
dst
;
unsigned
char
*
dst
=
NULL
;
int
x
,
y
;
int
width
,
height
,
bpp
,
colors
,
line_size
;
int
header_size
;
...
...
@@ -89,7 +89,6 @@ void lcd_bmp(uchar *logo_bmp)
unsigned
char
r
,
g
,
b
;
BITMAPINFOHEADER
*
bm_info
;
ulong
len
;
int
do_free
=
0
;
/*
* Check for bmp mark 'BM'
...
...
@@ -99,12 +98,18 @@ void lcd_bmp(uchar *logo_bmp)
/*
* Decompress bmp image
*/
len
=
CFG_
LCD
_LOGO_MAX_SIZE
;
dst
=
malloc
(
CFG_
LCD
_LOGO_MAX_SIZE
);
do_free
=
1
;
if
(
gunzip
(
dst
,
CFG_LCD_LOGO_MAX_SIZE
,
(
uchar
*
)
logo_bmp
,
&
len
)
!=
0
)
{
len
=
CFG_
VIDEO
_LOGO_MAX_SIZE
;
dst
=
malloc
(
CFG_
VIDEO
_LOGO_MAX_SIZE
);
if
(
dst
==
NULL
)
{
printf
(
"Error: malloc in gunzip failed!
\n
"
);
return
;
}
if
(
gunzip
(
dst
,
CFG_VIDEO_LOGO_MAX_SIZE
,
(
uchar
*
)
logo_bmp
,
&
len
)
!=
0
)
{
return
;
}
if
(
len
==
CFG_VIDEO_LOGO_MAX_SIZE
)
{
printf
(
"Image could be truncated (increase CFG_VIDEO_LOGO_MAX_SIZE)!
\n
"
);
}
/*
* Check for bmp mark 'BM'
...
...
@@ -147,7 +152,9 @@ void lcd_bmp(uchar *logo_bmp)
break
;
default:
printf
(
"LCD: Unknown bpp (%d) im image!
\n
"
,
bpp
);
free
(
dst
);
if
((
dst
!=
NULL
)
&&
(
dst
!=
(
uchar
*
)
logo_bmp
))
{
free
(
dst
);
}
return
;
}
printf
(
" (%d*%d, %dbpp)
\n
"
,
width
,
height
,
bpp
);
...
...
@@ -205,7 +212,7 @@ void lcd_bmp(uchar *logo_bmp)
}
}
if
(
do_free
)
{
if
(
(
dst
!=
NULL
)
&&
(
dst
!=
(
uchar
*
)
logo_bmp
)
)
{
free
(
dst
);
}
}
...
...
common/cmd_bmp.c
浏览文件 @
cbdf8824
...
...
@@ -29,12 +29,15 @@
#include <bmp_layout.h>
#include <command.h>
#include <asm/byteorder.h>
#include <malloc.h>
#if (CONFIG_COMMANDS & CFG_CMD_BMP)
static
int
bmp_info
(
ulong
addr
);
static
int
bmp_display
(
ulong
addr
,
int
x
,
int
y
);
int
gunzip
(
void
*
,
int
,
unsigned
char
*
,
unsigned
long
*
);
/*
* Subroutine: do_bmp
*
...
...
@@ -100,15 +103,64 @@ U_BOOT_CMD(
static
int
bmp_info
(
ulong
addr
)
{
bmp_image_t
*
bmp
=
(
bmp_image_t
*
)
addr
;
#ifdef CONFIG_VIDEO_BMP_GZIP
unsigned
char
*
dst
=
NULL
;
ulong
len
;
#endif
/* CONFIG_VIDEO_BMP_GZIP */
if
(
!
((
bmp
->
header
.
signature
[
0
]
==
'B'
)
&&
(
bmp
->
header
.
signature
[
1
]
==
'M'
)))
{
#ifdef CONFIG_VIDEO_BMP_GZIP
/*
* Decompress bmp image
*/
len
=
CFG_VIDEO_LOGO_MAX_SIZE
;
dst
=
malloc
(
CFG_VIDEO_LOGO_MAX_SIZE
);
if
(
dst
==
NULL
)
{
printf
(
"Error: malloc in gunzip failed!
\n
"
);
return
(
1
);
}
if
(
gunzip
(
dst
,
CFG_VIDEO_LOGO_MAX_SIZE
,
(
uchar
*
)
addr
,
&
len
)
!=
0
)
{
printf
(
"There is no valid bmp file at the given address
\n
"
);
return
(
1
);
}
if
(
len
==
CFG_VIDEO_LOGO_MAX_SIZE
)
{
printf
(
"Image could be truncated (increase CFG_VIDEO_LOGO_MAX_SIZE)!
\n
"
);
}
/*
* Set addr to decompressed image
*/
bmp
=
(
bmp_image_t
*
)
dst
;
/*
* Check for bmp mark 'BM'
*/
if
(
!
((
bmp
->
header
.
signature
[
0
]
==
'B'
)
&&
(
bmp
->
header
.
signature
[
1
]
==
'M'
)))
{
printf
(
"There is no valid bmp file at the given address
\n
"
);
free
(
dst
);
return
(
1
);
}
printf
(
"Gzipped BMP image detected!
\n
"
);
#else
/* CONFIG_VIDEO_BMP_GZIP */
printf
(
"There is no valid bmp file at the given address
\n
"
);
return
(
1
);
#endif
/* CONFIG_VIDEO_BMP_GZIP */
}
printf
(
"Image size : %d x %d
\n
"
,
le32_to_cpu
(
bmp
->
header
.
width
),
le32_to_cpu
(
bmp
->
header
.
height
));
printf
(
"Bits per pixel: %d
\n
"
,
le16_to_cpu
(
bmp
->
header
.
bit_count
));
printf
(
"Compression : %d
\n
"
,
le32_to_cpu
(
bmp
->
header
.
compression
));
#ifdef CONFIG_VIDEO_BMP_GZIP
if
(
dst
)
{
free
(
dst
);
}
#endif
/* CONFIG_VIDEO_BMP_GZIP */
return
(
0
);
}
...
...
cpu/ppc4xx/4xx_enet.c
浏览文件 @
cbdf8824
...
...
@@ -139,7 +139,7 @@
static
uint32_t
mal_ier
;
#if !defined(CONFIG_NET_MULTI)
struct
eth_device
*
emac0_dev
;
struct
eth_device
*
emac0_dev
=
NULL
;
#endif
...
...
@@ -306,8 +306,10 @@ static int ppc_4xx_eth_init (struct eth_device *dev, bd_t * bis)
/* before doing anything, figure out if we have a MAC address */
/* if not, bail */
if
(
memcmp
(
dev
->
enetaddr
,
"
\0\0\0\0\0\0
"
,
6
)
==
0
)
if
(
memcmp
(
dev
->
enetaddr
,
"
\0\0\0\0\0\0
"
,
6
)
==
0
)
{
printf
(
"ERROR: ethaddr not set!
\n
"
);
return
-
1
;
}
#if defined(CONFIG_440GX)
/* Need to get the OPB frequency so we can access the PHY */
...
...
@@ -1486,12 +1488,16 @@ void eth_halt (void) {
int
eth_init
(
bd_t
*
bis
)
{
ppc_4xx_eth_initialize
(
bis
);
return
(
ppc_4xx_eth_init
(
emac0_dev
,
bis
));
if
(
emac0_dev
)
{
return
ppc_4xx_eth_init
(
emac0_dev
,
bis
);
}
else
{
printf
(
"ERROR: ethaddr not set!
\n
"
);
return
-
1
;
}
}
int
eth_send
(
volatile
void
*
packet
,
int
length
)
{
return
(
ppc_4xx_eth_send
(
emac0_dev
,
packet
,
length
));
}
...
...
drivers/cfb_console.c
浏览文件 @
cbdf8824
...
...
@@ -779,11 +779,18 @@ int video_display_bitmap (ulong bmp_image, int x, int y)
*/
len
=
CFG_VIDEO_LOGO_MAX_SIZE
;
dst
=
malloc
(
CFG_VIDEO_LOGO_MAX_SIZE
);
if
(
dst
==
NULL
)
{
printf
(
"Error: malloc in gunzip failed!
\n
"
);
return
(
1
);
}
if
(
gunzip
(
dst
,
CFG_VIDEO_LOGO_MAX_SIZE
,
(
uchar
*
)
bmp_image
,
&
len
)
!=
0
)
{
printf
(
"Error: no valid bmp or bmp.gz image at %lx
\n
"
,
bmp_image
);
free
(
dst
);
return
1
;
}
if
(
len
==
CFG_VIDEO_LOGO_MAX_SIZE
)
{
printf
(
"Image could be truncated (increase CFG_VIDEO_LOGO_MAX_SIZE)!
\n
"
);
}
/*
* Set addr to decompressed image
...
...
include/configs/APC405.h
浏览文件 @
cbdf8824
...
...
@@ -357,7 +357,7 @@
#define CFG_LCD_MEM CFG_LCD_BIG_MEM
#define CFG_LCD_REG CFG_LCD_BIG_REG
#define CFG_
LCD_LOGO_MAX_SIZE (1024*1024
)
#define CFG_
VIDEO_LOGO_MAX_SIZE (1 << 20
)
/*-----------------------------------------------------------------------
* Definitions for initial stack pointer and data area (in data cache)
...
...
include/configs/HH405.h
浏览文件 @
cbdf8824
...
...
@@ -88,7 +88,7 @@
#define CFG_CONSOLE_IS_IN_ENV
#define CONFIG_SPLASH_SCREEN
#define CONFIG_VIDEO_BMP_GZIP
/* gzip compressed bmp images */
#define CFG_VIDEO_LOGO_MAX_SIZE (
1024*1024
)
/* for decompressed img */
#define CFG_VIDEO_LOGO_MAX_SIZE (
2 << 20
)
/* for decompressed img */
#define ADD_BMP_CMD CFG_CMD_BMP
#else
...
...
@@ -308,7 +308,7 @@
#define CFG_FLASH_BASE 0xFFF80000
#define CFG_MONITOR_BASE TEXT_BASE
#define CFG_MONITOR_LEN (512 * 1024)
/* Reserve 512 kB for Monitor */
#define CFG_MALLOC_LEN (
2 * 1024*1024)
/* Reserve 2
MB for malloc() */
#define CFG_MALLOC_LEN (
4 << 20)
/* Reserve 4
MB for malloc() */
#if (CFG_MONITOR_BASE < FLASH_BASE0_PRELIM)
# define CFG_RAMBOOT 1
...
...
@@ -409,8 +409,6 @@
#define CFG_LCD_SMALL_MEM 0xF1400000
/* Epson S1D13704 Mem Base Address */
#define CFG_LCD_SMALL_REG 0xF140FFE0
/* Epson S1D13704 Reg Base Address */
#define CFG_LCD_LOGO_MAX_SIZE (1024*1024)
/*-----------------------------------------------------------------------
* Universal Interrupt Controller (UIC) Setup
*/
...
...
include/configs/VOH405.h
浏览文件 @
cbdf8824
...
...
@@ -362,7 +362,7 @@
#define CFG_LCD_SMALL_MEM 0xF1400000
/* Epson S1D13704 Mem Base Address */
#define CFG_LCD_SMALL_REG 0xF140FFE0
/* Epson S1D13704 Reg Base Address */
#define CFG_
LCD_LOGO_MAX_SIZE (1024*1024
)
#define CFG_
VIDEO_LOGO_MAX_SIZE (1 << 20
)
/*-----------------------------------------------------------------------
* FPGA stuff
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录