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
6df16d0c
Commit
6df16d0c
authored
May 24, 2005
by
David S. Miller
Browse files
Options
Browse Files
Download
Plain Diff
Merge of davem@nuts.davemloft.net:/disk1/GIT/sparc-2.6/.git/
parents
7e43c84e
816242da
Changes
4
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
36 additions
and
0 deletions
+36
-0
arch/sparc64/kernel/setup.c
arch/sparc64/kernel/setup.c
+11
-0
arch/sparc64/kernel/smp.c
arch/sparc64/kernel/smp.c
+3
-0
arch/sparc64/kernel/traps.c
arch/sparc64/kernel/traps.c
+19
-0
include/asm-sparc64/spitfire.h
include/asm-sparc64/spitfire.h
+3
-0
No files found.
arch/sparc64/kernel/setup.c
View file @
6df16d0c
...
@@ -383,6 +383,17 @@ static void __init process_switch(char c)
...
@@ -383,6 +383,17 @@ static void __init process_switch(char c)
/* Use PROM debug console. */
/* Use PROM debug console. */
register_console
(
&
prom_debug_console
);
register_console
(
&
prom_debug_console
);
break
;
break
;
case
'P'
:
/* Force UltraSPARC-III P-Cache on. */
if
(
tlb_type
!=
cheetah
)
{
printk
(
"BOOT: Ignoring P-Cache force option.
\n
"
);
break
;
}
cheetah_pcache_forced_on
=
1
;
add_taint
(
TAINT_MACHINE_CHECK
);
cheetah_enable_pcache
();
break
;
default:
default:
printk
(
"Unknown boot switch (-%c)
\n
"
,
c
);
printk
(
"Unknown boot switch (-%c)
\n
"
,
c
);
break
;
break
;
...
...
arch/sparc64/kernel/smp.c
View file @
6df16d0c
...
@@ -123,6 +123,9 @@ void __init smp_callin(void)
...
@@ -123,6 +123,9 @@ void __init smp_callin(void)
smp_setup_percpu_timer
();
smp_setup_percpu_timer
();
if
(
cheetah_pcache_forced_on
)
cheetah_enable_pcache
();
local_irq_enable
();
local_irq_enable
();
calibrate_delay
();
calibrate_delay
();
...
...
arch/sparc64/kernel/traps.c
View file @
6df16d0c
...
@@ -421,6 +421,25 @@ asmlinkage void cee_log(unsigned long ce_status,
...
@@ -421,6 +421,25 @@ asmlinkage void cee_log(unsigned long ce_status,
}
}
}
}
int
cheetah_pcache_forced_on
;
void
cheetah_enable_pcache
(
void
)
{
unsigned
long
dcr
;
printk
(
"CHEETAH: Enabling P-Cache on cpu %d.
\n
"
,
smp_processor_id
());
__asm__
__volatile__
(
"ldxa [%%g0] %1, %0"
:
"=r"
(
dcr
)
:
"i"
(
ASI_DCU_CONTROL_REG
));
dcr
|=
(
DCU_PE
|
DCU_HPE
|
DCU_SPE
|
DCU_SL
);
__asm__
__volatile__
(
"stxa %0, [%%g0] %1
\n\t
"
"membar #Sync"
:
/* no outputs */
:
"r"
(
dcr
),
"i"
(
ASI_DCU_CONTROL_REG
));
}
/* Cheetah error trap handling. */
/* Cheetah error trap handling. */
static
unsigned
long
ecache_flush_physbase
;
static
unsigned
long
ecache_flush_physbase
;
static
unsigned
long
ecache_flush_linesize
;
static
unsigned
long
ecache_flush_linesize
;
...
...
include/asm-sparc64/spitfire.h
View file @
6df16d0c
...
@@ -48,6 +48,9 @@ enum ultra_tlb_layout {
...
@@ -48,6 +48,9 @@ enum ultra_tlb_layout {
extern
enum
ultra_tlb_layout
tlb_type
;
extern
enum
ultra_tlb_layout
tlb_type
;
extern
int
cheetah_pcache_forced_on
;
extern
void
cheetah_enable_pcache
(
void
);
#define sparc64_highest_locked_tlbent() \
#define sparc64_highest_locked_tlbent() \
(tlb_type == spitfire ? \
(tlb_type == spitfire ? \
SPITFIRE_HIGHEST_LOCKED_TLBENT : \
SPITFIRE_HIGHEST_LOCKED_TLBENT : \
...
...
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