Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linux-davinci
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
linux
linux-davinci
Commits
781c74b1
Commit
781c74b1
authored
Jul 03, 2008
by
Paul Mackerras
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'for-2.6.26' of
git://git.secretlab.ca/git/linux-2.6-mpc52xx
into merge
parents
1e6d1f26
18d76ac9
Changes
1
Show whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
13 additions
and
1 deletion
+13
-1
arch/powerpc/platforms/52xx/lite5200_pm.c
arch/powerpc/platforms/52xx/lite5200_pm.c
+13
-1
No files found.
arch/powerpc/platforms/52xx/lite5200_pm.c
View file @
781c74b1
...
...
@@ -14,6 +14,7 @@ static struct mpc52xx_sdma __iomem *bes;
static
struct
mpc52xx_xlb
__iomem
*
xlb
;
static
struct
mpc52xx_gpio
__iomem
*
gps
;
static
struct
mpc52xx_gpio_wkup
__iomem
*
gpw
;
static
void
__iomem
*
pci
;
static
void
__iomem
*
sram
;
static
const
int
sram_size
=
0x4000
;
/* 16 kBytes */
static
void
__iomem
*
mbar
;
...
...
@@ -50,6 +51,8 @@ static int lite5200_pm_prepare(void)
{
.
type
=
"builtin"
,
.
compatible
=
"mpc5200"
,
},
/* efika */
{}
};
u64
regaddr64
=
0
;
const
u32
*
regaddr_p
;
/* deep sleep? let mpc52xx code handle that */
if
(
lite5200_pm_target_state
==
PM_SUSPEND_STANDBY
)
...
...
@@ -60,8 +63,12 @@ static int lite5200_pm_prepare(void)
/* map registers */
np
=
of_find_matching_node
(
NULL
,
immr_ids
);
mbar
=
of_iomap
(
np
,
0
);
regaddr_p
=
of_get_address
(
np
,
0
,
NULL
,
NULL
);
if
(
regaddr_p
)
regaddr64
=
of_translate_address
(
np
,
regaddr_p
);
of_node_put
(
np
);
mbar
=
ioremap
((
u32
)
regaddr64
,
0xC000
);
if
(
!
mbar
)
{
printk
(
KERN_ERR
"%s:%i Error mapping registers
\n
"
,
__func__
,
__LINE__
);
return
-
ENOSYS
;
...
...
@@ -71,6 +78,7 @@ static int lite5200_pm_prepare(void)
pic
=
mbar
+
0x500
;
gps
=
mbar
+
0xb00
;
gpw
=
mbar
+
0xc00
;
pci
=
mbar
+
0xd00
;
bes
=
mbar
+
0x1200
;
xlb
=
mbar
+
0x1f00
;
sram
=
mbar
+
0x8000
;
...
...
@@ -85,6 +93,7 @@ static struct mpc52xx_sdma sbes;
static
struct
mpc52xx_xlb
sxlb
;
static
struct
mpc52xx_gpio
sgps
;
static
struct
mpc52xx_gpio_wkup
sgpw
;
static
char
spci
[
0x200
];
static
void
lite5200_save_regs
(
void
)
{
...
...
@@ -94,6 +103,7 @@ static void lite5200_save_regs(void)
_memcpy_fromio
(
&
sxlb
,
xlb
,
sizeof
(
*
xlb
));
_memcpy_fromio
(
&
sgps
,
gps
,
sizeof
(
*
gps
));
_memcpy_fromio
(
&
sgpw
,
gpw
,
sizeof
(
*
gpw
));
_memcpy_fromio
(
spci
,
pci
,
0x200
);
_memcpy_fromio
(
saved_sram
,
sram
,
sram_size
);
}
...
...
@@ -103,6 +113,8 @@ static void lite5200_restore_regs(void)
int
i
;
_memcpy_toio
(
sram
,
saved_sram
,
sram_size
);
/* PCI Configuration */
_memcpy_toio
(
pci
,
spci
,
0x200
);
/*
* GPIOs. Interrupt Master Enable has higher address then other
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment