Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2f997759 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
Pull Hexagon updates from Richard Kuo:
 "Mostly cleanups for compilation with allmodconfig and some other
  miscellaneous fixes"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/rkuo/linux-hexagon-kernel:
  Hexagon: update CR year for elf.h
  Hexagon: remove SP macro
  Hexagon:  set ELF_EXEC_PAGESIZE to PAGE_SIZE
  Hexagon: set the e_flags in user regset view for core dumps
  Hexagon: fix atomic_set
  Hexagon: add screen_info for VGA_CONSOLE
  hexagon: correct type on pgd copy
  smp, hexagon: kill SMP single function call interrupt
  arch: hexagon: include: asm: add generic macro 'mmiowb' in "io.h"
  arch: hexagon: kernel: hexagon_ksyms.c: export related symbols which various modules need
  arch: hexagon: kernel: reset.c: use function pointer instead of function for pm_power_off and export it
  arch: hexagon: include: asm: add "vga.h" in Kbuild
  arch: hexagon: include: asm: Kbuild: add generic "serial.h" in Kbuild
  arch: hexagon: include: uapi: asm: setup.h add swith macro __KERNEL__
  arch: hexagon: include: asm: add prefix "hvm[ci]_" for all enum members in "hexagon_vm.h"
  arch: hexagon: Kconfig: add HAVE_DMA_ATTR in Kconfig and remove "linux/dma-mapping.h" from "asm/dma-mapping.h"
  arch: hexagon: kernel: add export symbol function __delay()
  hexagon: include: asm: kgdb: extend DBG_MAX_REG_NUM for "cs0/1"
  hexagon: kernel: kgdb: include related header for pass compiling.
  hexagon: kernel: remove useless variables 'dn', 'r' and 'err' in time_init_deferred() in "time.c"
parents 472e3741 a9a44fdf
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -28,6 +28,7 @@ config HEXAGON
	select GENERIC_CLOCKEVENTS_BROADCAST
	select MODULES_USE_ELF_RELA
	select GENERIC_CPU_DEVICES
	select HAVE_DMA_ATTRS
	---help---
	  Qualcomm Hexagon is a processor architecture designed for high
	  performance and low power across a wide variety of applications.
+2 −0
Original line number Diff line number Diff line
@@ -41,6 +41,7 @@ generic-y += scatterlist.h
generic-y += sections.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
@@ -56,4 +57,5 @@ generic-y += trace_clock.h
generic-y += types.h
generic-y += ucontext.h
generic-y += unaligned.h
generic-y += vga.h
generic-y += xor.h
+14 −1
Original line number Diff line number Diff line
@@ -26,7 +26,20 @@
#include <asm/cmpxchg.h>

#define ATOMIC_INIT(i)		{ (i) }
#define atomic_set(v, i)	((v)->counter = (i))

/*  Normal writes in our arch don't clear lock reservations  */

static inline void atomic_set(atomic_t *v, int new)
{
	asm volatile(
		"1:	r6 = memw_locked(%0);\n"
		"	memw_locked(%0,p0) = %1;\n"
		"	if (!P0) jump 1b;\n"
		:
		: "r" (&v->counter), "r" (new)
		: "memory", "p0", "r6"
	);
}

/**
 * atomic_read - reads a word, atomically
+1 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@

#include <asm/param.h>

extern void __delay(unsigned long cycles);
extern void __udelay(unsigned long usecs);

#define udelay(usecs) __udelay((usecs))
+0 −1
Original line number Diff line number Diff line
@@ -25,7 +25,6 @@
#include <linux/cache.h>
#include <linux/mm.h>
#include <linux/scatterlist.h>
#include <linux/dma-mapping.h>
#include <linux/dma-debug.h>
#include <linux/dma-attrs.h>
#include <asm/io.h>
Loading