Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OS
U-Boot.Mirror
提交
a17617d6
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,发现更多精彩内容 >>
提交
a17617d6
编写于
1月 14, 2013
作者:
A
Albert ARIBAUD
浏览文件
操作
浏览文件
下载
差异文件
Merge branch 'u-boot-imx/master' into 'u-boot-arm/master'
上级
1199c377
11d80af4
变更
27
隐藏空白更改
内联
并排
Showing
27 changed file
with
377 addition
and
160 deletion
+377
-160
arch/arm/cpu/arm1136/mx31/timer.c
arch/arm/cpu/arm1136/mx31/timer.c
+0
-39
arch/arm/cpu/arm1136/mx35/generic.c
arch/arm/cpu/arm1136/mx35/generic.c
+0
-6
arch/arm/cpu/armv7/mx6/lowlevel_init.S
arch/arm/cpu/armv7/mx6/lowlevel_init.S
+10
-0
arch/arm/imx-common/cpu.c
arch/arm/imx-common/cpu.c
+0
-5
arch/arm/include/asm/arch-mx31/clock.h
arch/arm/include/asm/arch-mx31/clock.h
+0
-2
arch/arm/include/asm/arch-mx31/imx-regs.h
arch/arm/include/asm/arch-mx31/imx-regs.h
+1
-12
arch/arm/include/asm/arch-mx35/imx-regs.h
arch/arm/include/asm/arch-mx35/imx-regs.h
+1
-10
arch/arm/include/asm/arch-mx5/imx-regs.h
arch/arm/include/asm/arch-mx5/imx-regs.h
+0
-10
board/davedenx/qong/qong.c
board/davedenx/qong/qong.c
+1
-8
board/freescale/mx31pdk/mx31pdk.c
board/freescale/mx31pdk/mx31pdk.c
+1
-8
board/freescale/mx51evk/mx51evk.c
board/freescale/mx51evk/mx51evk.c
+0
-2
board/freescale/mx51evk/mx51evk_video.c
board/freescale/mx51evk/mx51evk_video.c
+36
-3
board/freescale/mx53loco/mx53loco.c
board/freescale/mx53loco/mx53loco.c
+0
-2
board/freescale/mx53loco/mx53loco_video.c
board/freescale/mx53loco/mx53loco_video.c
+35
-3
board/hale/tt01/tt01.c
board/hale/tt01/tt01.c
+1
-1
doc/README.watchdog
doc/README.watchdog
+29
-0
drivers/watchdog/Makefile
drivers/watchdog/Makefile
+3
-0
drivers/watchdog/imx_watchdog.c
drivers/watchdog/imx_watchdog.c
+66
-0
include/configs/mx28evk.h
include/configs/mx28evk.h
+40
-7
include/configs/mx31pdk.h
include/configs/mx31pdk.h
+1
-0
include/configs/mx53loco.h
include/configs/mx53loco.h
+40
-4
include/configs/mx6qsabre_common.h
include/configs/mx6qsabre_common.h
+39
-4
include/configs/mx6qsabreauto.h
include/configs/mx6qsabreauto.h
+1
-0
include/configs/mx6qsabrelite.h
include/configs/mx6qsabrelite.h
+68
-33
include/configs/mx6qsabresd.h
include/configs/mx6qsabresd.h
+2
-1
include/configs/qong.h
include/configs/qong.h
+1
-0
include/watchdog.h
include/watchdog.h
+1
-0
未找到文件。
arch/arm/cpu/arm1136/mx31/timer.c
浏览文件 @
a17617d6
...
...
@@ -161,42 +161,3 @@ ulong get_tbclk(void)
{
return
MXC_CLK32
;
}
void
reset_cpu
(
ulong
addr
)
{
struct
wdog_regs
*
wdog
=
(
struct
wdog_regs
*
)
WDOG_BASE
;
wdog
->
wcr
=
WDOG_ENABLE
;
while
(
1
)
;
}
#ifdef CONFIG_HW_WATCHDOG
void
mxc_hw_watchdog_enable
(
void
)
{
struct
wdog_regs
*
wdog
=
(
struct
wdog_regs
*
)
WDOG_BASE
;
u16
secs
;
/*
* The timer watchdog can be set between
* 0.5 and 128 Seconds. If not defined
* in configuration file, sets 64 Seconds
*/
#ifdef CONFIG_SYS_WD_TIMER_SECS
secs
=
(
CONFIG_SYS_WD_TIMER_SECS
<<
1
)
&
0xFF
;
if
(
!
secs
)
secs
=
1
;
#else
secs
=
64
;
#endif
setbits_le16
(
&
wdog
->
wcr
,
(
secs
<<
WDOG_WT_SHIFT
)
|
WDOG_ENABLE
|
WDOG_WDZST
);
}
void
mxc_hw_watchdog_reset
(
void
)
{
struct
wdog_regs
*
wdog
=
(
struct
wdog_regs
*
)
WDOG_BASE
;
writew
(
0x5555
,
&
wdog
->
wsr
);
writew
(
0xAAAA
,
&
wdog
->
wsr
);
}
#endif
arch/arm/cpu/arm1136/mx35/generic.c
浏览文件 @
a17617d6
...
...
@@ -488,12 +488,6 @@ int get_clocks(void)
return
0
;
}
void
reset_cpu
(
ulong
addr
)
{
struct
wdog_regs
*
wdog
=
(
struct
wdog_regs
*
)
WDOG_BASE_ADDR
;
writew
(
4
,
&
wdog
->
wcr
);
}
#define RCSR_MEM_CTL_WEIM 0
#define RCSR_MEM_CTL_NAND 1
#define RCSR_MEM_CTL_ATA 2
...
...
arch/arm/cpu/armv7/mx6/lowlevel_init.S
浏览文件 @
a17617d6
...
...
@@ -20,6 +20,16 @@
#include <linux/linkage.h>
.
macro
init_arm_errata
/
*
ARM
erratum
ID
#
743622
*/
mrc
p15
,
0
,
r10
,
c15
,
c0
,
1
/*
read
diagnostic
register
*/
orr
r10
,
r10
,
#
1
<<
6
/*
set
bit
#
6
*/
/
*
ARM
erratum
ID
#
751472
*/
orr
r10
,
r10
,
#
1
<<
11
/*
set
bit
#
11
*/
mcr
p15
,
0
,
r10
,
c15
,
c0
,
1
/*
write
diagnostic
register
*/
.
endm
ENTRY
(
lowlevel_init
)
init_arm_errata
mov
pc
,
lr
ENDPROC
(
lowlevel_init
)
arch/arm/imx-common/cpu.c
浏览文件 @
a17617d6
...
...
@@ -175,11 +175,6 @@ int cpu_mmc_init(bd_t *bis)
}
#endif
void
reset_cpu
(
ulong
addr
)
{
__raw_writew
(
4
,
WDOG1_BASE_ADDR
);
}
u32
get_ahb_clk
(
void
)
{
struct
mxc_ccm_reg
*
imx_ccm
=
(
struct
mxc_ccm_reg
*
)
CCM_BASE_ADDR
;
...
...
arch/arm/include/asm/arch-mx31/clock.h
浏览文件 @
a17617d6
...
...
@@ -58,7 +58,5 @@ extern void mx31_set_gpr(enum iomux_gp_func gp, char en);
void
mx31_uart1_hw_init
(
void
);
void
mx31_uart2_hw_init
(
void
);
void
mx31_spi2_hw_init
(
void
);
void
mxc_hw_watchdog_enable
(
void
);
void
mxc_hw_watchdog_reset
(
void
);
#endif
/* __ASM_ARCH_CLOCK_H */
arch/arm/include/asm/arch-mx31/imx-regs.h
浏览文件 @
a17617d6
...
...
@@ -68,17 +68,6 @@ struct cspi_regs {
u32
test
;
};
/* Watchdog Timer (WDOG) registers */
#define WDOG_ENABLE (1 << 2)
#define WDOG_WT_SHIFT 8
#define WDOG_WDZST (1 << 0)
struct
wdog_regs
{
u16
wcr
;
/* Control */
u16
wsr
;
/* Service */
u16
wrsr
;
/* Reset Status */
};
/* IIM Control Registers */
struct
iim_regs
{
u32
iim_stat
;
...
...
@@ -687,7 +676,7 @@ struct esdc_regs {
#define ARM_PPMRR 0x40000015
#define WDOG
_BASE
0x53FDC000
#define WDOG
1_BASE_ADDR
0x53FDC000
/*
* GPIO
...
...
arch/arm/include/asm/arch-mx35/imx-regs.h
浏览文件 @
a17617d6
...
...
@@ -80,7 +80,7 @@
#define GPIO2_BASE_ADDR 0x53FD0000
#define SDMA_BASE_ADDR 0x53FD4000
#define RTC_BASE_ADDR 0x53FD8000
#define WDOG_BASE_ADDR 0x53FDC000
#define WDOG
1
_BASE_ADDR 0x53FDC000
#define PWM_BASE_ADDR 0x53FE0000
#define RTIC_BASE_ADDR 0x53FEC000
#define IIM_BASE_ADDR 0x53FF0000
...
...
@@ -292,15 +292,6 @@ struct cspi_regs {
u32
test
;
};
/* Watchdog Timer (WDOG) registers */
struct
wdog_regs
{
u16
wcr
;
/* Control */
u16
wsr
;
/* Service */
u16
wrsr
;
/* Reset Status */
u16
wicr
;
/* Interrupt Control */
u16
wmcr
;
/* Misc Control */
};
struct
esdc_regs
{
u32
esdctl0
;
u32
esdcfg0
;
...
...
arch/arm/include/asm/arch-mx5/imx-regs.h
浏览文件 @
a17617d6
...
...
@@ -218,16 +218,6 @@
*/
#define WBED 1
/*
* WEIM WCR
*/
#define BCM 1
#define GBCD(x) (((x) & 0x3) << 1)
#define INTEN (1 << 4)
#define INTPOL (1 << 5)
#define WDOG_EN (1 << 8)
#define WDOG_LIMIT(x) (((x) & 0x3) << 9)
#define CS0_128 0
#define CS0_64M_CS1_64M 1
#define CS0_64M_CS1_32M_CS2_32M 2
...
...
board/davedenx/qong/qong.c
浏览文件 @
a17617d6
...
...
@@ -37,13 +37,6 @@
DECLARE_GLOBAL_DATA_PTR
;
#ifdef CONFIG_HW_WATCHDOG
void
hw_watchdog_reset
(
void
)
{
mxc_hw_watchdog_reset
();
}
#endif
int
dram_init
(
void
)
{
/* dram_init must store complete ramsize in gd->ram_size */
...
...
@@ -188,7 +181,7 @@ int board_late_init(void)
pmic_reg_write
(
p
,
REG_INT_STATUS1
,
RTCRSTI
);
#ifdef CONFIG_HW_WATCHDOG
mxc_hw_watchdog_enable
();
hw_watchdog_init
();
#endif
return
0
;
...
...
board/freescale/mx31pdk/mx31pdk.c
浏览文件 @
a17617d6
...
...
@@ -36,13 +36,6 @@
DECLARE_GLOBAL_DATA_PTR
;
#ifdef CONFIG_HW_WATCHDOG
void
hw_watchdog_reset
(
void
)
{
mxc_hw_watchdog_reset
();
}
#endif
int
dram_init
(
void
)
{
/* dram_init must store complete ramsize in gd->ram_size */
...
...
@@ -98,7 +91,7 @@ int board_late_init(void)
pmic_reg_write
(
p
,
REG_POWER_CTL0
,
val
|
COINCHEN
);
pmic_reg_write
(
p
,
REG_INT_STATUS1
,
RTCRSTI
);
#ifdef CONFIG_HW_WATCHDOG
mxc_hw_watchdog_enable
();
hw_watchdog_init
();
#endif
return
0
;
}
...
...
board/freescale/mx51evk/mx51evk.c
浏览文件 @
a17617d6
...
...
@@ -489,8 +489,6 @@ int board_init(void)
/* address of boot parameters */
gd
->
bd
->
bi_boot_params
=
PHYS_SDRAM_1
+
0x100
;
lcd_enable
();
return
0
;
}
...
...
board/freescale/mx51evk/mx51evk_video.c
浏览文件 @
a17617d6
...
...
@@ -48,6 +48,22 @@ static struct fb_videomode const claa_wvga = {
.
vmode
=
FB_VMODE_NONINTERLACED
};
static
struct
fb_videomode
const
dvi
=
{
.
name
=
"DVI panel"
,
.
refresh
=
60
,
.
xres
=
1024
,
.
yres
=
768
,
.
pixclock
=
15385
,
.
left_margin
=
220
,
.
right_margin
=
40
,
.
upper_margin
=
21
,
.
lower_margin
=
7
,
.
hsync_len
=
60
,
.
vsync_len
=
10
,
.
sync
=
0
,
.
vmode
=
FB_VMODE_NONINTERLACED
};
void
setup_iomux_lcd
(
void
)
{
/* DI2_PIN15 */
...
...
@@ -73,9 +89,26 @@ void setup_iomux_lcd(void)
gpio_direction_output
(
MX51EVK_LCD_BACKLIGHT
,
1
);
}
void
lcd_enable
(
void
)
int
board_video_skip
(
void
)
{
int
ret
=
ipuv3_fb_init
(
&
claa_wvga
,
1
,
IPU_PIX_FMT_RGB565
);
int
ret
;
char
const
*
e
=
getenv
(
"panel"
);
if
(
e
)
{
if
(
strcmp
(
e
,
"claa"
)
==
0
)
{
ret
=
ipuv3_fb_init
(
&
claa_wvga
,
1
,
IPU_PIX_FMT_RGB565
);
if
(
ret
)
printf
(
"claa cannot be configured: %d
\n
"
,
ret
);
return
ret
;
}
}
/*
* 'panel' env variable not found or has different value than 'claa'
* Defaulting to dvi output.
*/
ret
=
ipuv3_fb_init
(
&
dvi
,
0
,
IPU_PIX_FMT_RGB24
);
if
(
ret
)
printf
(
"LCD cannot be configured: %d
\n
"
,
ret
);
printf
(
"dvi cannot be configured: %d
\n
"
,
ret
);
return
ret
;
}
board/freescale/mx53loco/mx53loco.c
浏览文件 @
a17617d6
...
...
@@ -503,8 +503,6 @@ int board_init(void)
mxc_set_sata_internal_clock
();
setup_iomux_i2c
();
lcd_enable
();
return
0
;
}
...
...
board/freescale/mx53loco/mx53loco_video.c
浏览文件 @
a17617d6
...
...
@@ -46,6 +46,21 @@ static struct fb_videomode const claa_wvga = {
.
vmode
=
FB_VMODE_NONINTERLACED
};
static
struct
fb_videomode
const
seiko_wvga
=
{
.
name
=
"Seiko-43WVF1G"
,
.
refresh
=
60
,
.
xres
=
800
,
.
yres
=
480
,
.
pixclock
=
29851
,
/* picosecond (33.5 MHz) */
.
left_margin
=
89
,
.
right_margin
=
164
,
.
upper_margin
=
23
,
.
lower_margin
=
10
,
.
hsync_len
=
10
,
.
vsync_len
=
10
,
.
sync
=
0
,
};
void
setup_iomux_lcd
(
void
)
{
mxc_request_iomux
(
MX53_PIN_DI0_DISP_CLK
,
IOMUX_CONFIG_ALT0
);
...
...
@@ -86,9 +101,26 @@ void setup_iomux_lcd(void)
gpio_direction_output
(
IOMUX_TO_GPIO
(
MX53_PIN_GPIO_1
),
1
);
}
void
lcd_enable
(
void
)
int
board_video_skip
(
void
)
{
int
ret
=
ipuv3_fb_init
(
&
claa_wvga
,
0
,
IPU_PIX_FMT_RGB565
);
int
ret
;
char
const
*
e
=
getenv
(
"panel"
);
if
(
e
)
{
if
(
strcmp
(
e
,
"seiko"
)
==
0
)
{
ret
=
ipuv3_fb_init
(
&
seiko_wvga
,
0
,
IPU_PIX_FMT_RGB24
);
if
(
ret
)
printf
(
"Seiko cannot be configured: %d
\n
"
,
ret
);
return
ret
;
}
}
/*
* 'panel' env variable not found or has different value than 'seiko'
* Defaulting to claa lcd.
*/
ret
=
ipuv3_fb_init
(
&
claa_wvga
,
0
,
IPU_PIX_FMT_RGB565
);
if
(
ret
)
printf
(
"LCD cannot be configured: %d
\n
"
,
ret
);
printf
(
"CLAA cannot be configured: %d
\n
"
,
ret
);
return
ret
;
}
board/hale/tt01/tt01.c
浏览文件 @
a17617d6
...
...
@@ -179,7 +179,7 @@ int board_init(void)
int
board_late_init
(
void
)
{
#ifdef CONFIG_HW_WATCHDOG
mxc_hw_watchdog_enable
();
hw_watchdog_init
();
#endif
return
0
;
...
...
doc/README.watchdog
0 → 100644
浏览文件 @
a17617d6
Watchdog driver general info
CONFIG_HW_WATCHDOG
This enables hw_watchdog_reset to be called during various loops,
including waiting for a character on a serial port. But it
does not also call hw_watchdog_init. Boards which want this
enabled must call this function in their board file. This split
is useful because some rom's enable the watchdog when downloading
new code, so it must be serviced, but the board would rather it
was off. And, it cannot always be turned off once on.
CONFIG_WATCHDOG_TIMEOUT_MSECS
Can be used to change the timeout for i.mx31/35/5x/6x.
If not given, will default to maximum timeout. This would
be 128000 msec for i.mx31/35/5x/6x.
CONFIG_AT91SAM9_WATCHDOG
Available for AT91SAM9 to service the watchdog.
CONFIG_FTWDT010_WATCHDOG
Available for FTWDT010 to service the watchdog.
CONFIG_FTWDT010_HW_TIMEOUT
Can be used to change the timeout for FTWDT010.
CONFIG_IMX_WATCHDOG
Available for i.mx31/35/5x/6x to service the watchdog. This is not
automatically set because some boards (vision2) still need to define
their own hw_watchdog_reset routine.
drivers/watchdog/Makefile
浏览文件 @
a17617d6
...
...
@@ -27,6 +27,9 @@ LIB := $(obj)libwatchdog.o
COBJS-$(CONFIG_AT91SAM9_WATCHDOG)
+=
at91sam9_wdt.o
COBJS-$(CONFIG_FTWDT010_WATCHDOG)
+=
ftwdt010_wdt.o
ifneq
(,$(filter $(SOC), mx31 mx35 mx5 mx6))
COBJS-y
+=
imx_watchdog.o
endif
COBJS-$(CONFIG_TNETV107X_WATCHDOG)
+=
tnetv107x_wdt.o
COBJS-$(CONFIG_S5P)
+=
s5p_wdt.o
...
...
drivers/watchdog/imx_watchdog.c
0 → 100644
浏览文件 @
a17617d6
/*
* watchdog.c - driver for i.mx on-chip watchdog
*
* Licensed under the GPL-2 or later.
*/
#include <common.h>
#include <asm/io.h>
#include <watchdog.h>
#include <asm/arch/imx-regs.h>
struct
watchdog_regs
{
u16
wcr
;
/* Control */
u16
wsr
;
/* Service */
u16
wrsr
;
/* Reset Status */
};
#define WCR_WDZST 0x01
#define WCR_WDBG 0x02
#define WCR_WDE 0x04
/* WDOG enable */
#define WCR_WDT 0x08
#define WCR_WDW 0x80
#define SET_WCR_WT(x) (x << 8)
#ifdef CONFIG_IMX_WATCHDOG
void
hw_watchdog_reset
(
void
)
{
struct
watchdog_regs
*
wdog
=
(
struct
watchdog_regs
*
)
WDOG1_BASE_ADDR
;
writew
(
0x5555
,
&
wdog
->
wsr
);
writew
(
0xaaaa
,
&
wdog
->
wsr
);
}
void
hw_watchdog_init
(
void
)
{
struct
watchdog_regs
*
wdog
=
(
struct
watchdog_regs
*
)
WDOG1_BASE_ADDR
;
u16
timeout
;
/*
* The timer watchdog can be set between
* 0.5 and 128 Seconds. If not defined
* in configuration file, sets 128 Seconds
*/
#ifndef CONFIG_WATCHDOG_TIMEOUT_MSECS
#define CONFIG_WATCHDOG_TIMEOUT_MSECS 128000
#endif
timeout
=
(
CONFIG_WATCHDOG_TIMEOUT_MSECS
/
500
)
-
1
;
writew
(
WCR_WDZST
|
WCR_WDBG
|
WCR_WDE
|
WCR_WDT
|
WCR_WDW
|
SET_WCR_WT
(
timeout
),
&
wdog
->
wcr
);
hw_watchdog_reset
();
}
#endif
void
reset_cpu
(
ulong
addr
)
{
struct
watchdog_regs
*
wdog
=
(
struct
watchdog_regs
*
)
WDOG1_BASE_ADDR
;
writew
(
WCR_WDE
,
&
wdog
->
wcr
);
writew
(
0x5555
,
&
wdog
->
wsr
);
writew
(
0xaaaa
,
&
wdog
->
wsr
);
/* load minimum 1/2 second timeout */
while
(
1
)
{
/*
* spin for .5 seconds before reset
*/
}
}
include/configs/mx28evk.h
浏览文件 @
a17617d6
...
...
@@ -290,27 +290,60 @@
"uimage=uImage\0" \
"console_fsl=ttyAM0\0" \
"console_mainline=ttyAMA0\0" \
"fdt_file=imx28-evk.dtb\0" \
"fdt_addr=0x41000000\0" \
"boot_fdt=try\0" \
"ip_dyn=yes\0" \
"mmcdev=0\0" \
"mmcpart=2\0" \
"mmcroot=/dev/mmcblk0p3 rw\0" \
"mmcrootfstype=ext3 rootwait\0" \
"mmcroot=/dev/mmcblk0p3 rw rootwait\0" \
"mmcargs=setenv bootargs console=${console_mainline},${baudrate} " \
"root=${mmcroot} " \
"rootfstype=${mmcrootfstype}\0" \
"root=${mmcroot}\0" \
"loadbootscript=" \
"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
"bootscript=echo Running bootscript from mmc ...; " \
"source\0" \
"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
"mmcboot=echo Booting from mmc ...; " \
"run mmcargs; " \
"bootm\0" \
"run mmcargs; " \
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
"if run loadfdt; then " \
"bootm ${loadaddr} - ${fdt_addr}; " \
"else " \
"if test ${boot_fdt} = try; then " \
"bootm; " \
"else " \
"echo WARN: Cannot load the DT; " \
"fi; " \
"fi; " \
"else " \
"bootm; " \
"fi;\0" \
"netargs=setenv bootargs console=${console_mainline},${baudrate} " \
"root=/dev/nfs " \
"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
"netboot=echo Booting from net ...; " \
"run netargs; " \
"dhcp ${uimage}; bootm\0"
"if test ${ip_dyn} = yes; then " \
"setenv get_cmd dhcp; " \
"else " \
"setenv get_cmd tftp; " \
"fi; " \
"${get_cmd} ${uimage}; " \
"if test ${boot_fdt} = yes; then " \
"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
"bootm ${loadaddr} - ${fdt_addr}; " \
"else " \
"if test ${boot_fdt} = try; then " \
"bootm; " \
"else " \
"echo WARN: Cannot load the DT; " \
"fi;" \
"fi; " \
"else " \
"bootm; " \
"fi;\0"
#define CONFIG_BOOTCOMMAND \
"mmc dev ${mmcdev}; if mmc rescan; then " \
...
...
include/configs/mx31pdk.h
浏览文件 @
a17617d6
...
...
@@ -61,6 +61,7 @@
#define CONFIG_MXC_UART
#define CONFIG_MXC_UART_BASE UART1_BASE
#define CONFIG_HW_WATCHDOG
#define CONFIG_IMX_WATCHDOG
#define CONFIG_MXC_GPIO
#define CONFIG_HARD_SPI
...
...
include/configs/mx53loco.h
浏览文件 @
a17617d6
...
...
@@ -119,24 +119,60 @@
#define CONFIG_EXTRA_ENV_SETTINGS \
"script=boot.scr\0" \
"uimage=uImage\0" \
"fdt_file=imx53-qsb.dtb\0" \
"fdt_addr=0x71000000\0" \
"boot_fdt=try\0" \
"ip_dyn=yes\0" \
"mmcdev=0\0" \
"mmcpart=2\0" \
"mmcroot=/dev/mmcblk0p3 rw rootwait\0" \
"mmcargs=setenv bootargs console=ttymxc0,${baudrate} root=${mmcroot}
" \
"mmcargs=setenv bootargs console=ttymxc0,${baudrate} root=${mmcroot}
\0
" \
"loadbootscript=" \
"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
"bootscript=echo Running bootscript from mmc ...; " \
"source\0" \
"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
"mmcboot=echo Booting from mmc ...; " \
"run mmcargs; " \
"bootm\0" \
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
"if run loadfdt; then " \
"bootm ${loadaddr} - ${fdt_addr}; " \
"else " \
"if test ${boot_fdt} = try; then " \
"bootm; " \
"else " \
"echo WARN: Cannot load the DT; " \
"fi; " \
"fi; " \
"else " \
"bootm; " \
"fi;\0" \
"netargs=setenv bootargs console=ttymxc0,${baudrate} " \
"root=/dev/nfs " \
"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
"netboot=echo Booting from net ...; " \
"run netargs; " \
"dhcp ${uimage}; bootm\0" \
"if test ${ip_dyn} = yes; then " \
"setenv get_cmd dhcp; " \
"else " \
"setenv get_cmd tftp; " \
"fi; " \
"${get_cmd} ${uimage}; " \
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
"bootm ${loadaddr} - ${fdt_addr}; " \
"else " \
"if test ${boot_fdt} = try; then " \
"bootm; " \
"else " \
"echo ERROR: Cannot load the DT; " \
"exit; " \
"fi; " \
"fi; " \
"else " \
"bootm; " \
"fi;\0"
#define CONFIG_BOOTCOMMAND \
"mmc dev ${mmcdev}; if mmc rescan; then " \
...
...
@@ -157,7 +193,7 @@
#define CONFIG_SYS_HUSH_PARSER
/* use "hush" command parser */
#define CONFIG_SYS_PROMPT "MX53LOCO U-Boot > "
#define CONFIG_AUTO_COMPLETE
#define CONFIG_SYS_CBSIZE
256
/* Console I/O Buffer Size */
#define CONFIG_SYS_CBSIZE
512
/* Console I/O Buffer Size */
/* Print Buffer Size */
#define CONFIG_SYS_PBSIZE (CONFIG_SYS_CBSIZE + sizeof(CONFIG_SYS_PROMPT) + 16)
...
...
include/configs/mx6qsabre_common.h
浏览文件 @
a17617d6
...
...
@@ -83,10 +83,14 @@
#define CONFIG_EXTRA_ENV_SETTINGS \
"script=boot.scr\0" \
"uimage=uImage\0" \
"fdt_file=" CONFIG_DEFAULT_FDT_FILE "\0" \
"fdt_addr=0x11000000\0" \
"boot_fdt=try\0" \
"ip_dyn=yes\0" \
"console=" CONFIG_CONSOLE_DEV "\0" \
"fdt_high=0xffffffff\0" \
"initrd_high=0xffffffff\0" \
"mmcdev=
0
\0" \
"mmcdev=
" __stringify(CONFIG_SYS_MMC_ENV_DEV) "
\0" \
"mmcpart=1\0" \
"mmcroot=" CONFIG_MMCROOT " rootwait rw\0" \
"mmcargs=setenv bootargs console=${console},${baudrate} " \
...
...
@@ -96,15 +100,46 @@
"bootscript=echo Running bootscript from mmc ...; " \
"source\0" \
"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
"mmcboot=echo Booting from mmc ...; " \
"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
"mmcboot=echo Booting from mmc ...; " \
"run mmcargs; " \
"bootm\0" \
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
"if run loadfdt; then " \
"bootm ${loadaddr} - ${fdt_addr}; " \
"else " \
"if test ${boot_fdt} = try; then " \
"bootm; " \
"else " \
"echo WARN: Cannot load the DT; " \
"fi; " \
"fi; " \
"else " \
"bootm; " \
"fi;\0" \
"netargs=setenv bootargs console=${console},${baudrate} " \
"root=/dev/nfs " \
"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
"netboot=echo Booting from net ...; " \
"run netargs; " \
"dhcp ${uimage}; bootm\0" \
"if test ${ip_dyn} = yes; then " \
"setenv get_cmd dhcp; " \
"else " \
"setenv get_cmd tftp; " \
"fi; " \
"${get_cmd} ${uimage}; " \
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
"bootm ${loadaddr} - ${fdt_addr}; " \
"else " \
"if test ${boot_fdt} = try; then " \
"bootm; " \
"else " \
"echo WARN: Cannot load the DT; " \
"fi; " \
"fi; " \
"else " \
"bootm; " \
"fi;\0"
#define CONFIG_BOOTCOMMAND \
"mmc dev ${mmcdev};" \
...
...
include/configs/mx6qsabreauto.h
浏览文件 @
a17617d6
...
...
@@ -15,6 +15,7 @@
#define CONFIG_MACH_TYPE 3529
#define CONFIG_MXC_UART_BASE UART4_BASE
#define CONFIG_CONSOLE_DEV "ttymxc3"
#define CONFIG_DEFAULT_FDT_FILE "imx6q-sabreauto.dtb"
#define CONFIG_MMCROOT "/dev/mmcblk0p2"
#define PHYS_SDRAM_SIZE (2u * 1024 * 1024 * 1024)
...
...
include/configs/mx6qsabrelite.h
浏览文件 @
a17617d6
...
...
@@ -152,43 +152,78 @@
#define CONFIG_SYS_TEXT_BASE 0x17800000
#define CONFIG_EXTRA_ENV_SETTINGS \
"script=boot.scr\0" \
"uimage=uImage\0" \
"script=boot.scr\0" \
"uimage=uImage\0" \
"console=ttymxc1\0" \
"fdt_high=0xffffffff\0"
\
"fdt_high=0xffffffff\0" \
"initrd_high=0xffffffff\0" \
"mmcdev=0\0" \
"mmcpart=2\0" \
"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
"mmcargs=setenv bootargs console=${console},${baudrate} " \
"root=${mmcroot}\0" \
"loadbootscript=" \
"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
"bootscript=echo Running bootscript from mmc ...; " \
"source\0" \
"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
"mmcboot=echo Booting from mmc ...; " \
"run mmcargs; " \
"bootm\0" \
"netargs=setenv bootargs console=${console},${baudrate} " \
"root=/dev/nfs " \
"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
"netboot=echo Booting from net ...; " \
"run netargs; " \
"dhcp ${uimage}; bootm\0" \
"fdt_file=imx6q-sabrelite.dtb\0" \
"fdt_addr=0x11000000\0" \
"boot_fdt=try\0" \
"ip_dyn=yes\0" \
"mmcdev=0\0" \
"mmcpart=2\0" \
"mmcroot=/dev/mmcblk0p3 rootwait rw\0" \
"mmcargs=setenv bootargs console=${console},${baudrate} " \
"root=${mmcroot}\0" \
"loadbootscript=" \
"fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${script};\0" \
"bootscript=echo Running bootscript from mmc ...; " \
"source\0" \
"loaduimage=fatload mmc ${mmcdev}:${mmcpart} ${loadaddr} ${uimage}\0" \
"loadfdt=fatload mmc ${mmcdev}:${mmcpart} ${fdt_addr} ${fdt_file}\0" \
"mmcboot=echo Booting from mmc ...; " \
"run mmcargs; " \
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
"if run loadfdt; then " \
"bootm ${loadaddr} - ${fdt_addr}; " \
"else " \
"if test ${boot_fdt} = try; then " \
"bootm; " \
"else " \
"echo WARN: Cannot load the DT; " \
"fi; " \
"fi; " \
"else " \
"bootm; " \
"fi;\0" \
"netargs=setenv bootargs console=${console},${baudrate} " \
"root=/dev/nfs " \
"ip=dhcp nfsroot=${serverip}:${nfsroot},v3,tcp\0" \
"netboot=echo Booting from net ...; " \
"run netargs; " \
"if test ${ip_dyn} = yes; then " \
"setenv get_cmd dhcp; " \
"else " \
"setenv get_cmd tftp; " \
"fi; " \
"${get_cmd} ${uimage}; " \
"if test ${boot_fdt} = yes || test ${boot_fdt} = try; then " \
"if ${get_cmd} ${fdt_addr} ${fdt_file}; then " \
"bootm ${loadaddr} - ${fdt_addr}; " \
"else " \
"if test ${boot_fdt} = try; then " \
"bootm; " \
"else " \
"echo WARN: Cannot load the DT; " \
"fi; " \
"fi; " \
"else " \
"bootm; " \
"fi;\0"
#define CONFIG_BOOTCOMMAND \
"mmc dev ${mmcdev};" \
"mmc dev ${mmcdev}; if mmc rescan; then " \
"if run loadbootscript; then " \
"run bootscript; " \
"else " \
"if run loaduimage; then " \
"run mmcboot; " \
"else run netboot; " \
"fi; " \
"fi; " \
"else run netboot; fi"
"mmc dev ${mmcdev};" \
"mmc dev ${mmcdev}; if mmc rescan; then " \
"if run loadbootscript; then " \
"run bootscript; " \
"else " \
"if run loaduimage; then " \
"run mmcboot; " \
"else run netboot; " \
"fi; " \
"fi; " \
"else run netboot; fi"
#define CONFIG_ARP_TIMEOUT 200UL
...
...
include/configs/mx6qsabresd.h
浏览文件 @
a17617d6
...
...
@@ -21,13 +21,14 @@
#define CONFIG_MXC_UART_BASE UART1_BASE
#define CONFIG_CONSOLE_DEV "ttymxc0"
#define CONFIG_MMCROOT "/dev/mmcblk1p2"
#define CONFIG_DEFAULT_FDT_FILE "imx6q-sabresd.dtb"
#define PHYS_SDRAM_SIZE (1u * 1024 * 1024 * 1024)
#include "mx6qsabre_common.h"
#define CONFIG_SYS_FSL_USDHC_NUM 3
#if defined(CONFIG_ENV_IS_IN_MMC)
#define CONFIG_SYS_MMC_ENV_DEV
2
/* eMMC/uSDHC4
*/
#define CONFIG_SYS_MMC_ENV_DEV
1
/* SDHC3
*/
#define CONFIG_SYS_MMC_ENV_PART 1
/* Boot partition 1 */
#endif
...
...
include/configs/qong.h
浏览文件 @
a17617d6
...
...
@@ -52,6 +52,7 @@
#define CONFIG_MXC_GPIO
#define CONFIG_HW_WATCHDOG
#define CONFIG_IMX_WATCHDOG
#define CONFIG_MXC_SPI
#define CONFIG_DEFAULT_SPI_BUS 1
...
...
include/watchdog.h
浏览文件 @
a17617d6
...
...
@@ -35,6 +35,7 @@
* Hardware watchdog
*/
#ifdef CONFIG_HW_WATCHDOG
void
hw_watchdog_init
(
void
);
#if defined(__ASSEMBLY__)
#define WATCHDOG_RESET bl hw_watchdog_reset
#else
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录