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
b9756c04
Commit
b9756c04
authored
Feb 28, 2006
by
Linus Torvalds
Browse files
Options
Browse Files
Download
Plain Diff
Merge branch 'upstream' of
git://ftp.linux-mips.org/pub/scm/upstream-linus
parents
b5463305
778e2ac5
Changes
3
Show whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
30 additions
and
6 deletions
+30
-6
arch/mips/lib/iomap.c
arch/mips/lib/iomap.c
+1
-1
arch/mips/mm/c-r4k.c
arch/mips/mm/c-r4k.c
+11
-5
include/asm-mips/io.h
include/asm-mips/io.h
+18
-0
No files found.
arch/mips/lib/iomap.c
View file @
b9756c04
...
...
@@ -63,7 +63,7 @@ void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long maxlen)
return
ioport_map
(
start
,
len
);
if
(
flags
&
IORESOURCE_MEM
)
{
if
(
flags
&
IORESOURCE_CACHEABLE
)
return
ioremap_cach
eable_cow
(
start
,
len
);
return
ioremap_cach
able
(
start
,
len
);
return
ioremap_nocache
(
start
,
len
);
}
...
...
arch/mips/mm/c-r4k.c
View file @
b9756c04
...
...
@@ -235,7 +235,9 @@ static inline void r4k_blast_scache_page_setup(void)
{
unsigned
long
sc_lsize
=
cpu_scache_line_size
();
if
(
sc_lsize
==
16
)
if
(
scache_size
==
0
)
r4k_blast_scache_page
=
(
void
*
)
no_sc_noop
;
else
if
(
sc_lsize
==
16
)
r4k_blast_scache_page
=
blast_scache16_page
;
else
if
(
sc_lsize
==
32
)
r4k_blast_scache_page
=
blast_scache32_page
;
...
...
@@ -251,7 +253,9 @@ static inline void r4k_blast_scache_page_indexed_setup(void)
{
unsigned
long
sc_lsize
=
cpu_scache_line_size
();
if
(
sc_lsize
==
16
)
if
(
scache_size
==
0
)
r4k_blast_scache_page_indexed
=
(
void
*
)
no_sc_noop
;
else
if
(
sc_lsize
==
16
)
r4k_blast_scache_page_indexed
=
blast_scache16_page_indexed
;
else
if
(
sc_lsize
==
32
)
r4k_blast_scache_page_indexed
=
blast_scache32_page_indexed
;
...
...
@@ -267,7 +271,9 @@ static inline void r4k_blast_scache_setup(void)
{
unsigned
long
sc_lsize
=
cpu_scache_line_size
();
if
(
sc_lsize
==
16
)
if
(
scache_size
==
0
)
r4k_blast_scache
=
(
void
*
)
no_sc_noop
;
else
if
(
sc_lsize
==
16
)
r4k_blast_scache
=
blast_scache16
;
else
if
(
sc_lsize
==
32
)
r4k_blast_scache
=
blast_scache32
;
...
...
@@ -482,7 +488,7 @@ static inline void local_r4k_flush_icache_range(void *args)
protected_blast_dcache_range
(
start
,
end
);
}
if
(
!
cpu_icache_snoops_remote_store
)
{
if
(
!
cpu_icache_snoops_remote_store
&&
scache_size
)
{
if
(
end
-
start
>
scache_size
)
r4k_blast_scache
();
else
...
...
@@ -651,7 +657,7 @@ static void local_r4k_flush_cache_sigtramp(void * arg)
R4600_HIT_CACHEOP_WAR_IMPL
;
protected_writeback_dcache_line
(
addr
&
~
(
dc_lsize
-
1
));
if
(
!
cpu_icache_snoops_remote_store
)
if
(
!
cpu_icache_snoops_remote_store
&&
scache_size
)
protected_writeback_scache_line
(
addr
&
~
(
sc_lsize
-
1
));
protected_flush_icache_line
(
addr
&
~
(
ic_lsize
-
1
));
if
(
MIPS4K_ICACHE_REFILL_WAR
)
{
...
...
include/asm-mips/io.h
View file @
b9756c04
...
...
@@ -282,6 +282,24 @@ static inline void __iomem * __ioremap_mode(phys_t offset, unsigned long size,
#define ioremap_nocache(offset, size) \
__ioremap_mode((offset), (size), _CACHE_UNCACHED)
/*
* ioremap_cachable - map bus memory into CPU space
* @offset: bus address of the memory
* @size: size of the resource to map
*
* ioremap_nocache performs a platform specific sequence of operations to
* make bus memory CPU accessible via the readb/readw/readl/writeb/
* writew/writel functions and the other mmio helpers. The returned
* address is not guaranteed to be usable directly as a virtual
* address.
*
* This version of ioremap ensures that the memory is marked cachable by
* the CPU. Also enables full write-combining. Useful for some
* memory-like regions on I/O busses.
*/
#define ioremap_cachable(offset, size) \
__ioremap_mode((offset), (size), PAGE_CACHABLE_DEFAULT)
/*
* These two are MIPS specific ioremap variant. ioremap_cacheable_cow
* requests a cachable mapping, ioremap_uncached_accelerated requests a
...
...
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