Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
L
linux
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
linux
Commits
e106935f
Commit
e106935f
authored
Mar 16, 2003
by
Paul Mackerras
Browse files
Options
Browse Files
Download
Plain Diff
Merge
bk://stop.crashing.org/linux-2.5-misc
into samba.org:/home/paulus/kernel/for-linus-ppc
parents
2b3163d4
a76d1bae
Changes
5
Hide whitespace changes
Inline
Side-by-side
Showing
5 changed files
with
67 additions
and
28 deletions
+67
-28
arch/ppc/boot/common/util.S
arch/ppc/boot/common/util.S
+46
-5
arch/ppc/boot/simple/head.S
arch/ppc/boot/simple/head.S
+12
-1
arch/ppc/kernel/ppc-stub.c
arch/ppc/kernel/ppc-stub.c
+5
-18
arch/ppc/platforms/lopec_setup.c
arch/ppc/platforms/lopec_setup.c
+2
-2
include/asm-ppc/processor.h
include/asm-ppc/processor.h
+2
-2
No files found.
arch/ppc/boot/common/util.S
View file @
e106935f
...
...
@@ -14,7 +14,7 @@
*
trini
@
mvista
.
com
*
Derived
from
arch
/
ppc
/
boot
/
prep
/
head
.
S
(
Cort
Dougan
,
many
others
)
.
*
*
2001
(
c
)
MontaVista
,
Software
,
Inc
.
This
file
is
licensed
under
*
2001
-
2003
(
c
)
MontaVista
,
Software
,
Inc
.
This
file
is
licensed
under
*
the
terms
of
the
GNU
General
Public
License
version
2
.
This
program
*
is
licensed
"as is"
without
any
warranty
of
any
kind
,
whether
express
*
or
implied
.
...
...
@@ -98,7 +98,7 @@ _setup_L2CR:
isync
mfspr
r8
,
L2CR
rlwinm
r8
,
r8
,
0
,
1
,
31
oris
r8
,
r8
,
0x0020
oris
r8
,
r8
,
L2CR_L2I
@
h
sync
isync
mtspr
L2CR
,
r8
...
...
@@ -106,11 +106,25 @@ _setup_L2CR:
isync
/
*
Wait
for
the
invalidation
to
complete
*/
1
:
mfspr
r8
,
L2CR
rlwinm
.
r9
,
r8
,
0
,
31
,
31
mfspr
r8
,
PVR
srwi
r8
,
r8
,
16
cmpli
cr0
,
r8
,
0x8000
/*
7450
*/
cmpli
cr1
,
r8
,
0x8001
/*
7455
*/
cmpli
cr2
,
r8
,
0x8002
/*
7457
*/
cror
4
*
cr0
+
eq
,
4
*
cr0
+
eq
,
4
*
cr1
+
eq
/*
Now
test
if
any
are
true
.
*/
cror
4
*
cr0
+
eq
,
4
*
cr0
+
eq
,
4
*
cr2
+
eq
bne
2
f
1
:
mfspr
r8
,
L2CR
/*
On
745
x
,
poll
L2I
bit
(
bit
10
)
*/
rlwinm
.
r9
,
r8
,
0
,
10
,
10
bne
1
b
b
3
f
2
:
mfspr
r8
,
L2CR
/*
On
75
x
&
74
[
01
]
0
,
poll
L2IP
bit
(
bit
31
)
*/
rlwinm
.
r9
,
r8
,
0
,
31
,
31
bne
2
b
rlwinm
r8
,
r8
,
0
,
11
,
9
/*
Turn
off
L2I
bit
*/
3
:
rlwinm
r8
,
r8
,
0
,
11
,
9
/*
Turn
off
L2I
bit
*/
sync
isync
mtspr
L2CR
,
r8
...
...
@@ -118,6 +132,33 @@ _setup_L2CR:
isync
blr
.
globl
_setup_L3CR
_setup_L3CR
:
/
*
Invalidate
/
disable
L3
cache
*/
sync
isync
mfspr
r8
,
L3CR
rlwinm
r8
,
r8
,
0
,
1
,
31
ori
r8
,
r8
,
L3CR_L3I
@
l
sync
isync
mtspr
L3CR
,
r8
sync
isync
/
*
Wait
for
the
invalidation
to
complete
*/
1
:
mfspr
r8
,
L3CR
rlwinm
.
r9
,
r8
,
0
,
21
,
21
bne
1
b
rlwinm
r8
,
r8
,
0
,
22
,
20
/*
Turn
off
L3I
bit
*/
sync
isync
mtspr
L3CR
,
r8
sync
isync
blr
/*
*
Delay
for
a
number
of
microseconds
...
...
arch/ppc/boot/simple/head.S
View file @
e106935f
...
...
@@ -7,7 +7,7 @@
*
trini
@
mvista
.
com
*
Derived
from
arch
/
ppc
/
boot
/
prep
/
head
.
S
(
Cort
Dougan
,
many
others
)
.
*
*
2001
(
c
)
MontaVista
,
Software
,
Inc
.
This
file
is
licensed
under
*
2001
-
2003
(
c
)
MontaVista
,
Software
,
Inc
.
This
file
is
licensed
under
*
the
terms
of
the
GNU
General
Public
License
version
2
.
This
program
*
is
licensed
"as is"
without
any
warranty
of
any
kind
,
whether
express
*
or
implied
.
...
...
@@ -74,6 +74,17 @@ start_:
#if defined(CONFIG_FORCE) || defined(CONFIG_K2) \
|
|
defined
(
CONFIG_EV64260
)
||
defined
(
CONFIG_PAL4
)
bl
_setup_L2CR
/
*
If
745
x
,
turn
off
L3CR
as
well
*/
mfspr
r8
,
PVR
srwi
r8
,
r8
,
16
cmpli
cr0
,
r8
,
0x8000
/*
7450
*/
cmpli
cr1
,
r8
,
0x8001
/*
7455
*/
cmpli
cr2
,
r8
,
0x8002
/*
7457
*/
cror
4
*
cr0
+
eq
,
4
*
cr0
+
eq
,
4
*
cr1
+
eq
/*
Now
test
if
any
are
true
.
*/
cror
4
*
cr0
+
eq
,
4
*
cr0
+
eq
,
4
*
cr2
+
eq
beql
_setup_L3CR
#endif
#endif
...
...
arch/ppc/kernel/ppc-stub.c
View file @
e106935f
...
...
@@ -420,18 +420,6 @@ static void kgdb_flush_cache_all(void)
flush_instruction_cache
();
}
static
inline
int
get_msr
(
void
)
{
int
msr
;
asm
volatile
(
"mfmsr %0"
:
"=r"
(
msr
)
:
);
return
msr
;
}
static
inline
void
set_msr
(
int
msr
)
{
asm
volatile
(
"mtmsr %0"
:
:
"r"
(
msr
));
}
/* Set up exception handlers for tracing and breakpoints
* [could be called kgdb_init()]
*/
...
...
@@ -598,8 +586,8 @@ handle_exception (struct pt_regs *regs)
kgdb_interruptible
(
0
);
lock_kernel
();
msr
=
get_
msr
();
set_
msr
(
msr
&
~
MSR_EE
);
/* disable interrupts */
msr
=
mf
msr
();
mt
msr
(
msr
&
~
MSR_EE
);
/* disable interrupts */
if
(
regs
->
nip
==
(
unsigned
long
)
breakinst
)
{
/* Skip over breakpoint trap insn */
...
...
@@ -626,7 +614,7 @@ handle_exception (struct pt_regs *regs)
*
ptr
++
=
hexchars
[
SP_REGNUM
>>
4
];
*
ptr
++
=
hexchars
[
SP_REGNUM
&
0xf
];
*
ptr
++
=
':'
;
ptr
=
mem2hex
(((
char
*
)
&
regs
)
+
SP_REGNUM
*
4
,
ptr
,
4
);
ptr
=
mem2hex
(((
char
*
)
regs
)
+
SP_REGNUM
*
4
,
ptr
,
4
);
*
ptr
++
=
';'
;
#endif
...
...
@@ -786,7 +774,7 @@ handle_exception (struct pt_regs *regs)
strcpy
(
remcomOutBuffer
,
"OK"
);
putpacket
(
remcomOutBuffer
);
#endif
set_
msr
(
msr
);
mt
msr
(
msr
);
kgdb_interruptible
(
1
);
unlock_kernel
();
...
...
@@ -802,10 +790,9 @@ handle_exception (struct pt_regs *regs)
#if defined(CONFIG_40x)
regs
->
msr
|=
MSR_DE
;
regs
->
dbcr0
|=
(
DBCR0_IDM
|
DBCR0_IC
);
set_
msr
(
msr
);
mt
msr
(
msr
);
#else
regs
->
msr
|=
MSR_SE
;
set_msr
(
msr
|
MSR_SE
);
#endif
unlock_kernel
();
kgdb_active
=
0
;
...
...
arch/ppc/platforms/lopec_setup.c
View file @
e106935f
...
...
@@ -324,7 +324,7 @@ lopec_setup_arch(void)
ROOT_DEV
=
Root_SDA1
;
#endif
#ifdef CONFIG_
DUMMY_CONSOLE
#ifdef CONFIG_
VT
conswitchp
=
&
dummy_con
;
#endif
#ifdef CONFIG_PPCBUG_NVRAM
...
...
@@ -378,7 +378,7 @@ platform_init(unsigned long r3, unsigned long r4, unsigned long r5,
ppc_md
.
nvram_read_val
=
todc_direct_read_val
;
ppc_md
.
nvram_write_val
=
todc_direct_write_val
;
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_ID_MODULE)
#if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_ID
E
_MODULE)
ppc_ide_md
.
default_irq
=
lopec_ide_default_irq
;
ppc_ide_md
.
default_io_base
=
lopec_ide_default_io_base
;
ppc_ide_md
.
ide_init_hwif
=
lopec_ide_init_hwif_ports
;
...
...
include/asm-ppc/processor.h
View file @
e106935f
...
...
@@ -469,8 +469,8 @@
#define ICMP SPRN_ICMP
/* Instruction TLB Compare Register */
#define IMISS SPRN_IMISS
/* Instruction TLB Miss Register */
#define IMMR SPRN_IMMR
/* PPC 860/821 Internal Memory Map Register */
#define L2CR SPRN_L2CR
/*
PPC 750 L2
control register */
#define L3CR SPRN_L3CR
/* PPC 7450 L3 C
ache control register */
#define L2CR SPRN_L2CR
/*
Classic PPC L2 cache
control register */
#define L3CR SPRN_L3CR
/* PPC 745x L3 c
ache control register */
#define LR SPRN_LR
#define PVR SPRN_PVR
/* Processor Version */
#define RPA SPRN_RPA
/* Required Physical Address Register */
...
...
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