forked from Minki/linux
C6X Fixes for v4.1
-----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQIcBAABAgAGBQJVK74bAAoJEOiN4VijXeFPDw4P/3RXfO6XpICjidMk5zKIB9qt 088LS3paw4AkESky8u1Pm0hfI7QU6gH/S/++JafEH/poFp/UXdWIuUB7a+oCdSbX 0zSLfSG+x/2MPAMR0uBcHFovHGRvaxNWFnm4ao+2scCjk/YJX/9HNRo6YJayRVWd VLhA9Gyd6cmuj5UQLjDfnVGpYKNu7DNoWLZuwNHuXsJP4xFNE5eDIrEbezY4mCum nXLgvcrjBLNrbFApUBRLNdfjbAD8GID62jFBtIU6/DGBkURsjrCWZN1nOVTNTkNL p05X5bxAkl7NkIrOWsXeUoxM9uu9VTmt+7cmCC4rNF4bSLFDZbXxe5wWzvdeZ1Le M5AVQw2TsEWbYqt6uOg7P4MbeLSN/56q7vDyS1qAAb8qAyrZP9j39gM3szWDVD81 ocbEV15qscGNKYNz4rHn7QIQUJuPY4F2xwFYl24hGjWEyvgsBvBrY8qV/wmNQj9D wiiOwzPYa5/wHsQritVLlMQzHBu90W7QvdSgr7qGCoThRHv0sXYPe4AGgj95HobF fGbbY+WWWY204oOuiIyjsYMamYkIhMvK23bUtbQPbxKXR+NWuuZ7F96qHLHki+UY lNdgof9Yjm2y69qWkR7JuhWCHnUJExpSSViU9JwD8ASjYRgyUulb/WvgZ+2T2mBJ Uxb7dh9IL4jAQ1byZ21a =iSqp -----END PGP SIGNATURE----- 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"
This commit is contained in:
commit
45701e2636
@ -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
|
||||
|
||||
|
@ -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
|
||||
|
@ -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))
|
||||
|
12
arch/c6x/include/asm/flat.h
Normal file
12
arch/c6x/include/asm/flat.h
Normal file
@ -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 */
|
@ -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);
|
||||
|
@ -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>
|
||||
@ -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);
|
||||
|
||||
@ -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;
|
||||
@ -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);
|
||||
|
@ -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;
|
||||
|
||||
|
@ -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)
|
||||
{
|
||||
@ -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
|
||||
|
Loading…
Reference in New Issue
Block a user