projects
/
oweals
/
u-boot.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge git://git.denx.de/u-boot
[oweals/u-boot.git]
/
arch
/
m68k
/
cpu
/
mcf5445x
/
cpu.c
diff --git
a/arch/m68k/cpu/mcf5445x/cpu.c
b/arch/m68k/cpu/mcf5445x/cpu.c
index 323a54eab474f9f9f4e8af550ed53ca19df78f58..b612cdaea1ac28975184fbb090c79c40f69d7ab6 100644
(file)
--- a/
arch/m68k/cpu/mcf5445x/cpu.c
+++ b/
arch/m68k/cpu/mcf5445x/cpu.c
@@
-3,7
+3,7
@@
* (C) Copyright 2000-2003
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
* (C) Copyright 2000-2003
* Wolfgang Denk, DENX Software Engineering, wd@denx.de.
*
- * Copyright (C) 2004-2007 Freescale Semiconductor, Inc.
+ * Copyright (C) 2004-2007
, 2012
Freescale Semiconductor, Inc.
* TsiChung Liew (Tsi-Chung.Liew@freescale.com)
*
* See file CREDITS for list of people who contributed to this
* TsiChung Liew (Tsi-Chung.Liew@freescale.com)
*
* See file CREDITS for list of people who contributed to this
@@
-31,14
+31,17
@@
#include <netdev.h>
#include <asm/immap.h>
#include <netdev.h>
#include <asm/immap.h>
+#include <asm/io.h>
DECLARE_GLOBAL_DATA_PTR;
int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
DECLARE_GLOBAL_DATA_PTR;
int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
-
volatile
rcm_t *rcm = (rcm_t *) (MMAP_RCM);
+ rcm_t *rcm = (rcm_t *) (MMAP_RCM);
udelay(1000);
udelay(1000);
- rcm->rcr |= RCM_RCR_SOFTRST;
+ out_8(&rcm->rcr, RCM_RCR_FRCRSTOUT);
+ udelay(10000);
+ setbits_8(&rcm->rcr, RCM_RCR_SOFTRST);
/* we don't return! */
return 0;
/* we don't return! */
return 0;
@@
-46,14
+49,14
@@
int do_reset(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
int checkcpu(void)
{
int checkcpu(void)
{
-
volatile
ccm_t *ccm = (ccm_t *) MMAP_CCM;
+ ccm_t *ccm = (ccm_t *) MMAP_CCM;
u16 msk;
u16 id = 0;
u8 ver;
puts("CPU: ");
u16 msk;
u16 id = 0;
u8 ver;
puts("CPU: ");
- msk = (
ccm->cir
>> 6);
- ver = (
ccm->cir
& 0x003f);
+ msk = (
in_be16(&ccm->cir)
>> 6);
+ ver = (
in_be16(&ccm->cir)
& 0x003f);
switch (msk) {
case 0x48:
id = 54455;
switch (msk) {
case 0x48:
id = 54455;
@@
-73,6
+76,21
@@
int checkcpu(void)
case 0x4f:
id = 54450;
break;
case 0x4f:
id = 54450;
break;
+ case 0x9F:
+ id = 54410;
+ break;
+ case 0xA0:
+ id = 54415;
+ break;
+ case 0xA1:
+ id = 54416;
+ break;
+ case 0xA2:
+ id = 54417;
+ break;
+ case 0xA3:
+ id = 54418;
+ break;
}
if (id) {
}
if (id) {