aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2015-04-16 18:48:55 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2015-04-16 18:48:55 -0400
commit45701e2636a02ab1c5305ead5236f05bda64c15f (patch)
tree1a447dfd3b1779254bafc14b092ec2371b2206c3
parent497a5df7bf6ffd136ae21c49d1a01292930d7ca2 (diff)
parent3083ca2376a76072dc0071fb211de80b0ac44bd1 (diff)
Merge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming
Pull arch/c6x fixes from Mark Salter. * tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-upstreaming: c6x: platforms: cache: Export symbol L1P_cache_block_invalidate and L1D_cache_block_writeback c6x: kernel: setup: Export symbol memory_end c6x: kernel: setup: Add screen_info global variable c6x: include: asm: Kbuild: Add generic serial.h c6x: include: asm: dma-mapping: Add dummy dma_sync_single_range_for_device c6x: include: asm: setup: Include "linux/types.h" c6x: asm: Add default flat.h according to xtensa architecture c6x: kernel: setup: Remove 'const' for local variables in machine_init c6x: Makefile: Add -D__linux__ C6x: time: Ensure consistency in __init c6x: kernel: setup: Include "linux/console.h"
-rw-r--r--arch/c6x/Makefile2
-rw-r--r--arch/c6x/include/asm/Kbuild1
-rw-r--r--arch/c6x/include/asm/dma-mapping.h8
-rw-r--r--arch/c6x/include/asm/flat.h12
-rw-r--r--arch/c6x/include/asm/setup.h1
-rw-r--r--arch/c6x/kernel/setup.c10
-rw-r--r--arch/c6x/kernel/time.c2
-rw-r--r--arch/c6x/platforms/cache.c2
8 files changed, 33 insertions, 5 deletions
diff --git a/arch/c6x/Makefile b/arch/c6x/Makefile
index e72eb3417239..6b0be670ddfa 100644
--- a/arch/c6x/Makefile
+++ b/arch/c6x/Makefile
@@ -8,7 +8,7 @@
8 8
9KBUILD_DEFCONFIG := dsk6455_defconfig 9KBUILD_DEFCONFIG := dsk6455_defconfig
10 10
11cflags-y += -mno-dsbt -msdata=none 11cflags-y += -mno-dsbt -msdata=none -D__linux__
12 12
13cflags-$(CONFIG_C6X_BIG_KERNEL) += -mlong-calls 13cflags-$(CONFIG_C6X_BIG_KERNEL) += -mlong-calls
14 14
diff --git a/arch/c6x/include/asm/Kbuild b/arch/c6x/include/asm/Kbuild
index 2de73391b81e..ae0a51f5376c 100644
--- a/arch/c6x/include/asm/Kbuild
+++ b/arch/c6x/include/asm/Kbuild
@@ -41,6 +41,7 @@ generic-y += resource.h
41generic-y += scatterlist.h 41generic-y += scatterlist.h
42generic-y += segment.h 42generic-y += segment.h
43generic-y += sembuf.h 43generic-y += sembuf.h
44generic-y += serial.h
44generic-y += shmbuf.h 45generic-y += shmbuf.h
45generic-y += shmparam.h 46generic-y += shmparam.h
46generic-y += siginfo.h 47generic-y += siginfo.h
diff --git a/arch/c6x/include/asm/dma-mapping.h b/arch/c6x/include/asm/dma-mapping.h
index 88bd0d899bdb..bbd7774e4d4e 100644
--- a/arch/c6x/include/asm/dma-mapping.h
+++ b/arch/c6x/include/asm/dma-mapping.h
@@ -17,6 +17,14 @@
17 17
18#define dma_supported(d, m) 1 18#define dma_supported(d, m) 1
19 19
20static inline void dma_sync_single_range_for_device(struct device *dev,
21 dma_addr_t addr,
22 unsigned long offset,
23 size_t size,
24 enum dma_data_direction dir)
25{
26}
27
20static inline int dma_set_mask(struct device *dev, u64 dma_mask) 28static inline int dma_set_mask(struct device *dev, u64 dma_mask)
21{ 29{
22 if (!dev->dma_mask || !dma_supported(dev, dma_mask)) 30 if (!dev->dma_mask || !dma_supported(dev, dma_mask))
diff --git a/arch/c6x/include/asm/flat.h b/arch/c6x/include/asm/flat.h
new file mode 100644
index 000000000000..a1858bd5f6c8
--- /dev/null
+++ b/arch/c6x/include/asm/flat.h
@@ -0,0 +1,12 @@
1#ifndef __ASM_C6X_FLAT_H
2#define __ASM_C6X_FLAT_H
3
4#define flat_argvp_envp_on_stack() 0
5#define flat_old_ram_flag(flags) (flags)
6#define flat_reloc_valid(reloc, size) ((reloc) <= (size))
7#define flat_get_addr_from_rp(rp, relval, flags, p) get_unaligned(rp)
8#define flat_put_addr_at_rp(rp, val, relval) put_unaligned(val, rp)
9#define flat_get_relocate_addr(rel) (rel)
10#define flat_set_persistent(relval, p) 0
11
12#endif /* __ASM_C6X_FLAT_H */
diff --git a/arch/c6x/include/asm/setup.h b/arch/c6x/include/asm/setup.h
index 696804475f55..852afb209afb 100644
--- a/arch/c6x/include/asm/setup.h
+++ b/arch/c6x/include/asm/setup.h
@@ -12,6 +12,7 @@
12#define _ASM_C6X_SETUP_H 12#define _ASM_C6X_SETUP_H
13 13
14#include <uapi/asm/setup.h> 14#include <uapi/asm/setup.h>
15#include <linux/types.h>
15 16
16#ifndef __ASSEMBLY__ 17#ifndef __ASSEMBLY__
17extern int c6x_add_memory(phys_addr_t start, unsigned long size); 18extern int c6x_add_memory(phys_addr_t start, unsigned long size);
diff --git a/arch/c6x/kernel/setup.c b/arch/c6x/kernel/setup.c
index 757128868d43..72e17f7ebd6f 100644
--- a/arch/c6x/kernel/setup.c
+++ b/arch/c6x/kernel/setup.c
@@ -26,7 +26,8 @@
26#include <linux/cpu.h> 26#include <linux/cpu.h>
27#include <linux/fs.h> 27#include <linux/fs.h>
28#include <linux/of.h> 28#include <linux/of.h>
29 29#include <linux/console.h>
30#include <linux/screen_info.h>
30 31
31#include <asm/sections.h> 32#include <asm/sections.h>
32#include <asm/div64.h> 33#include <asm/div64.h>
@@ -38,6 +39,8 @@
38 39
39static const char *c6x_soc_name; 40static const char *c6x_soc_name;
40 41
42struct screen_info screen_info;
43
41int c6x_num_cores; 44int c6x_num_cores;
42EXPORT_SYMBOL_GPL(c6x_num_cores); 45EXPORT_SYMBOL_GPL(c6x_num_cores);
43 46
@@ -60,6 +63,7 @@ unsigned char c6x_fuse_mac[6];
60 63
61unsigned long memory_start; 64unsigned long memory_start;
62unsigned long memory_end; 65unsigned long memory_end;
66EXPORT_SYMBOL(memory_end);
63 67
64unsigned long ram_start; 68unsigned long ram_start;
65unsigned long ram_end; 69unsigned long ram_end;
@@ -265,8 +269,8 @@ int __init c6x_add_memory(phys_addr_t start, unsigned long size)
265 */ 269 */
266notrace void __init machine_init(unsigned long dt_ptr) 270notrace void __init machine_init(unsigned long dt_ptr)
267{ 271{
268 const void *dtb = __va(dt_ptr); 272 void *dtb = __va(dt_ptr);
269 const void *fdt = _fdt_start; 273 void *fdt = _fdt_start;
270 274
271 /* interrupts must be masked */ 275 /* interrupts must be masked */
272 set_creg(IER, 2); 276 set_creg(IER, 2);
diff --git a/arch/c6x/kernel/time.c b/arch/c6x/kernel/time.c
index 356ee84cad95..04845aaf5985 100644
--- a/arch/c6x/kernel/time.c
+++ b/arch/c6x/kernel/time.c
@@ -49,7 +49,7 @@ u64 sched_clock(void)
49 return (tsc * sched_clock_multiplier) >> SCHED_CLOCK_SHIFT; 49 return (tsc * sched_clock_multiplier) >> SCHED_CLOCK_SHIFT;
50} 50}
51 51
52void time_init(void) 52void __init time_init(void)
53{ 53{
54 u64 tmp = (u64)NSEC_PER_SEC << SCHED_CLOCK_SHIFT; 54 u64 tmp = (u64)NSEC_PER_SEC << SCHED_CLOCK_SHIFT;
55 55
diff --git a/arch/c6x/platforms/cache.c b/arch/c6x/platforms/cache.c
index 86318a16a252..46fd2d530271 100644
--- a/arch/c6x/platforms/cache.c
+++ b/arch/c6x/platforms/cache.c
@@ -350,6 +350,7 @@ void L1P_cache_block_invalidate(unsigned int start, unsigned int end)
350 (unsigned int *) end, 350 (unsigned int *) end,
351 IMCR_L1PIBAR, IMCR_L1PIWC); 351 IMCR_L1PIBAR, IMCR_L1PIWC);
352} 352}
353EXPORT_SYMBOL(L1P_cache_block_invalidate);
353 354
354void L1D_cache_block_invalidate(unsigned int start, unsigned int end) 355void L1D_cache_block_invalidate(unsigned int start, unsigned int end)
355{ 356{
@@ -371,6 +372,7 @@ void L1D_cache_block_writeback(unsigned int start, unsigned int end)
371 (unsigned int *) end, 372 (unsigned int *) end,
372 IMCR_L1DWBAR, IMCR_L1DWWC); 373 IMCR_L1DWBAR, IMCR_L1DWWC);
373} 374}
375EXPORT_SYMBOL(L1D_cache_block_writeback);
374 376
375/* 377/*
376 * L2 block operations 378 * L2 block operations