Skip to content

Commit

Permalink
Merge tag 'for-linus' of git://linux-c6x.org/git/projects/linux-c6x-u…
Browse files Browse the repository at this point in the history
…pstreaming

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"
  • Loading branch information
Linus Torvalds committed Apr 16, 2015
2 parents 497a5df + 3083ca2 commit 45701e2
Show file tree
Hide file tree
Showing 8 changed files with 33 additions and 5 deletions.
2 changes: 1 addition & 1 deletion arch/c6x/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@

KBUILD_DEFCONFIG := dsk6455_defconfig

cflags-y += -mno-dsbt -msdata=none
cflags-y += -mno-dsbt -msdata=none -D__linux__

cflags-$(CONFIG_C6X_BIG_KERNEL) += -mlong-calls

Expand Down
1 change: 1 addition & 0 deletions arch/c6x/include/asm/Kbuild
Original file line number Diff line number Diff line change
Expand Up @@ -41,6 +41,7 @@ generic-y += resource.h
generic-y += scatterlist.h
generic-y += segment.h
generic-y += sembuf.h
generic-y += serial.h
generic-y += shmbuf.h
generic-y += shmparam.h
generic-y += siginfo.h
Expand Down
8 changes: 8 additions & 0 deletions arch/c6x/include/asm/dma-mapping.h
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,14 @@

#define dma_supported(d, m) 1

static inline void dma_sync_single_range_for_device(struct device *dev,
dma_addr_t addr,
unsigned long offset,
size_t size,
enum dma_data_direction dir)
{
}

static inline int dma_set_mask(struct device *dev, u64 dma_mask)
{
if (!dev->dma_mask || !dma_supported(dev, dma_mask))
Expand Down
12 changes: 12 additions & 0 deletions arch/c6x/include/asm/flat.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
#ifndef __ASM_C6X_FLAT_H
#define __ASM_C6X_FLAT_H

#define flat_argvp_envp_on_stack() 0
#define flat_old_ram_flag(flags) (flags)
#define flat_reloc_valid(reloc, size) ((reloc) <= (size))
#define flat_get_addr_from_rp(rp, relval, flags, p) get_unaligned(rp)
#define flat_put_addr_at_rp(rp, val, relval) put_unaligned(val, rp)
#define flat_get_relocate_addr(rel) (rel)
#define flat_set_persistent(relval, p) 0

#endif /* __ASM_C6X_FLAT_H */
1 change: 1 addition & 0 deletions arch/c6x/include/asm/setup.h
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@
#define _ASM_C6X_SETUP_H

#include <uapi/asm/setup.h>
#include <linux/types.h>

#ifndef __ASSEMBLY__
extern int c6x_add_memory(phys_addr_t start, unsigned long size);
Expand Down
10 changes: 7 additions & 3 deletions arch/c6x/kernel/setup.c
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,8 @@
#include <linux/cpu.h>
#include <linux/fs.h>
#include <linux/of.h>

#include <linux/console.h>
#include <linux/screen_info.h>

#include <asm/sections.h>
#include <asm/div64.h>
Expand All @@ -38,6 +39,8 @@

static const char *c6x_soc_name;

struct screen_info screen_info;

int c6x_num_cores;
EXPORT_SYMBOL_GPL(c6x_num_cores);

Expand All @@ -60,6 +63,7 @@ unsigned char c6x_fuse_mac[6];

unsigned long memory_start;
unsigned long memory_end;
EXPORT_SYMBOL(memory_end);

unsigned long ram_start;
unsigned long ram_end;
Expand Down Expand Up @@ -265,8 +269,8 @@ int __init c6x_add_memory(phys_addr_t start, unsigned long size)
*/
notrace void __init machine_init(unsigned long dt_ptr)
{
const void *dtb = __va(dt_ptr);
const void *fdt = _fdt_start;
void *dtb = __va(dt_ptr);
void *fdt = _fdt_start;

/* interrupts must be masked */
set_creg(IER, 2);
Expand Down
2 changes: 1 addition & 1 deletion arch/c6x/kernel/time.c
Original file line number Diff line number Diff line change
Expand Up @@ -49,7 +49,7 @@ u64 sched_clock(void)
return (tsc * sched_clock_multiplier) >> SCHED_CLOCK_SHIFT;
}

void time_init(void)
void __init time_init(void)
{
u64 tmp = (u64)NSEC_PER_SEC << SCHED_CLOCK_SHIFT;

Expand Down
2 changes: 2 additions & 0 deletions arch/c6x/platforms/cache.c
Original file line number Diff line number Diff line change
Expand Up @@ -350,6 +350,7 @@ void L1P_cache_block_invalidate(unsigned int start, unsigned int end)
(unsigned int *) end,
IMCR_L1PIBAR, IMCR_L1PIWC);
}
EXPORT_SYMBOL(L1P_cache_block_invalidate);

void L1D_cache_block_invalidate(unsigned int start, unsigned int end)
{
Expand All @@ -371,6 +372,7 @@ void L1D_cache_block_writeback(unsigned int start, unsigned int end)
(unsigned int *) end,
IMCR_L1DWBAR, IMCR_L1DWWC);
}
EXPORT_SYMBOL(L1D_cache_block_writeback);

/*
* L2 block operations
Expand Down

0 comments on commit 45701e2

Please sign in to comment.