Skip to content

Commit

Permalink
sh: prefix sh-specific "CCR" and "CCR2" by "SH_"
Browse files Browse the repository at this point in the history
Commit bcf24e1 ("mmc: omap_hsmmc: use the generic config for
omap2plus devices"), enabled the build for other platforms for compile
testing.

sh-allmodconfig now fails with:

    include/linux/omap-dma.h:171:8: error: expected identifier before numeric constant
    make[4]: *** [drivers/mmc/host/omap_hsmmc.o] Error 1

This happens because SuperH #defines "CCR", which is one of the enum
values in include/linux/omap-dma.h.  There's a similar issue with "CCR2"
on sh2a.

As "CCR" and "CCR2" are too generic names for global #defines, prefix
them with "SH_" to fix this.

Signed-off-by: Geert Uytterhoeven <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
geertu authored and torvalds committed Mar 4, 2014
1 parent 15c34a7 commit a5f6ea2
Show file tree
Hide file tree
Showing 11 changed files with 20 additions and 18 deletions.
2 changes: 1 addition & 1 deletion arch/sh/include/cpu-sh2/cpu/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -18,7 +18,7 @@
#define SH_CACHE_ASSOC 8

#if defined(CONFIG_CPU_SUBTYPE_SH7619)
#define CCR 0xffffffec
#define SH_CCR 0xffffffec

#define CCR_CACHE_CE 0x01 /* Cache enable */
#define CCR_CACHE_WT 0x02 /* CCR[bit1=1,bit2=1] */
Expand Down
4 changes: 2 additions & 2 deletions arch/sh/include/cpu-sh2a/cpu/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,8 +17,8 @@
#define SH_CACHE_COMBINED 4
#define SH_CACHE_ASSOC 8

#define CCR 0xfffc1000 /* CCR1 */
#define CCR2 0xfffc1004
#define SH_CCR 0xfffc1000 /* CCR1 */
#define SH_CCR2 0xfffc1004

/*
* Most of the SH-2A CCR1 definitions resemble the SH-4 ones. All others not
Expand Down
2 changes: 1 addition & 1 deletion arch/sh/include/cpu-sh3/cpu/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
#define SH_CACHE_COMBINED 4
#define SH_CACHE_ASSOC 8

#define CCR 0xffffffec /* Address of Cache Control Register */
#define SH_CCR 0xffffffec /* Address of Cache Control Register */

#define CCR_CACHE_CE 0x01 /* Cache Enable */
#define CCR_CACHE_WT 0x02 /* Write-Through (for P0,U0,P3) (else writeback) */
Expand Down
2 changes: 1 addition & 1 deletion arch/sh/include/cpu-sh4/cpu/cache.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@
#define SH_CACHE_COMBINED 4
#define SH_CACHE_ASSOC 8

#define CCR 0xff00001c /* Address of Cache Control Register */
#define SH_CCR 0xff00001c /* Address of Cache Control Register */
#define CCR_CACHE_OCE 0x0001 /* Operand Cache Enable */
#define CCR_CACHE_WT 0x0002 /* Write-Through (for P0,U0,P3) (else writeback)*/
#define CCR_CACHE_CB 0x0004 /* Copy-Back (for P1) (else writethrough) */
Expand Down
4 changes: 2 additions & 2 deletions arch/sh/kernel/cpu/init.c
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,7 @@ static void cache_init(void)
unsigned long ccr, flags;

jump_to_uncached();
ccr = __raw_readl(CCR);
ccr = __raw_readl(SH_CCR);

/*
* At this point we don't know whether the cache is enabled or not - a
Expand Down Expand Up @@ -189,7 +189,7 @@ static void cache_init(void)

l2_cache_init();

__raw_writel(flags, CCR);
__raw_writel(flags, SH_CCR);
back_to_cached();
}
#else
Expand Down
2 changes: 1 addition & 1 deletion arch/sh/mm/cache-debugfs.c
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ static int cache_seq_show(struct seq_file *file, void *iter)
*/
jump_to_uncached();

ccr = __raw_readl(CCR);
ccr = __raw_readl(SH_CCR);
if ((ccr & CCR_CACHE_ENABLE) == 0) {
back_to_cached();

Expand Down
4 changes: 2 additions & 2 deletions arch/sh/mm/cache-sh2.c
Original file line number Diff line number Diff line change
Expand Up @@ -63,9 +63,9 @@ static void sh2__flush_invalidate_region(void *start, int size)
local_irq_save(flags);
jump_to_uncached();

ccr = __raw_readl(CCR);
ccr = __raw_readl(SH_CCR);
ccr |= CCR_CACHE_INVALIDATE;
__raw_writel(ccr, CCR);
__raw_writel(ccr, SH_CCR);

back_to_cached();
local_irq_restore(flags);
Expand Down
6 changes: 4 additions & 2 deletions arch/sh/mm/cache-sh2a.c
Original file line number Diff line number Diff line change
Expand Up @@ -134,7 +134,8 @@ static void sh2a__flush_invalidate_region(void *start, int size)

/* If there are too many pages then just blow the cache */
if (((end - begin) >> PAGE_SHIFT) >= MAX_OCACHE_PAGES) {
__raw_writel(__raw_readl(CCR) | CCR_OCACHE_INVALIDATE, CCR);
__raw_writel(__raw_readl(SH_CCR) | CCR_OCACHE_INVALIDATE,
SH_CCR);
} else {
for (v = begin; v < end; v += L1_CACHE_BYTES)
sh2a_invalidate_line(CACHE_OC_ADDRESS_ARRAY, v);
Expand Down Expand Up @@ -167,7 +168,8 @@ static void sh2a_flush_icache_range(void *args)
/* I-Cache invalidate */
/* If there are too many pages then just blow the cache */
if (((end - start) >> PAGE_SHIFT) >= MAX_ICACHE_PAGES) {
__raw_writel(__raw_readl(CCR) | CCR_ICACHE_INVALIDATE, CCR);
__raw_writel(__raw_readl(SH_CCR) | CCR_ICACHE_INVALIDATE,
SH_CCR);
} else {
for (v = start; v < end; v += L1_CACHE_BYTES)
sh2a_invalidate_line(CACHE_IC_ADDRESS_ARRAY, v);
Expand Down
4 changes: 2 additions & 2 deletions arch/sh/mm/cache-sh4.c
Original file line number Diff line number Diff line change
Expand Up @@ -133,9 +133,9 @@ static void flush_icache_all(void)
jump_to_uncached();

/* Flush I-cache */
ccr = __raw_readl(CCR);
ccr = __raw_readl(SH_CCR);
ccr |= CCR_CACHE_ICI;
__raw_writel(ccr, CCR);
__raw_writel(ccr, SH_CCR);

/*
* back_to_cached() will take care of the barrier for us, don't add
Expand Down
4 changes: 2 additions & 2 deletions arch/sh/mm/cache-shx3.c
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ void __init shx3_cache_init(void)
{
unsigned int ccr;

ccr = __raw_readl(CCR);
ccr = __raw_readl(SH_CCR);

/*
* If we've got cache aliases, resolve them in hardware.
Expand All @@ -40,5 +40,5 @@ void __init shx3_cache_init(void)
ccr |= CCR_CACHE_IBE;
#endif

writel_uncached(ccr, CCR);
writel_uncached(ccr, SH_CCR);
}
4 changes: 2 additions & 2 deletions arch/sh/mm/cache.c
Original file line number Diff line number Diff line change
Expand Up @@ -285,8 +285,8 @@ void __init cpu_cache_init(void)
{
unsigned int cache_disabled = 0;

#ifdef CCR
cache_disabled = !(__raw_readl(CCR) & CCR_CACHE_ENABLE);
#ifdef SH_CCR
cache_disabled = !(__raw_readl(SH_CCR) & CCR_CACHE_ENABLE);
#endif

compute_alias(&boot_cpu_data.icache);
Expand Down

0 comments on commit a5f6ea2

Please sign in to comment.