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

Commit d2c5f06e authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6

* master.kernel.org:/pub/scm/linux/kernel/git/davem/sparc-2.6:
  [SPARC]: Clean up asm-sparc/elf.h pollution in userspace.
  [SPARC64]: Fix of_ioremap().
  [SPARC64]: Compute dma_end argument to sabre_pbm_init() correctly.
parents c1448791 6cf431d7
Loading
Loading
Loading
Loading
+6 −1
Original line number Original line Diff line number Diff line
@@ -131,8 +131,13 @@ static int of_device_resume(struct device * dev)
void __iomem *of_ioremap(struct resource *res, unsigned long offset, unsigned long size, char *name)
void __iomem *of_ioremap(struct resource *res, unsigned long offset, unsigned long size, char *name)
{
{
	unsigned long ret = res->start + offset;
	unsigned long ret = res->start + offset;
	struct resource *r;


	if (!request_region(ret, size, name))
	if (res->flags & IORESOURCE_MEM)
		r = request_mem_region(ret, size, name);
	else
		r = request_region(ret, size, name);
	if (!r)
		ret = 0;
		ret = 0;


	return (void __iomem *) ret;
	return (void __iomem *) ret;
+1 −1
Original line number Original line Diff line number Diff line
@@ -1465,5 +1465,5 @@ void sabre_init(struct device_node *dp, char *model_name)
	/*
	/*
	 * Look for APB underneath.
	 * Look for APB underneath.
	 */
	 */
	sabre_pbm_init(p, dp, vdma[0], vdma[1]);
	sabre_pbm_init(p, dp, vdma[0], vdma[0] + vdma[1]);
}
}
+20 −21
Original line number Original line Diff line number Diff line
@@ -8,11 +8,6 @@


#include <asm/ptrace.h>
#include <asm/ptrace.h>


#ifdef __KERNEL__
#include <asm/mbus.h>
#include <asm/uaccess.h>
#endif

/*
/*
 * Sparc section types
 * Sparc section types
 */
 */
@@ -77,6 +72,23 @@ typedef unsigned long elf_greg_t;
#define ELF_NGREG 38
#define ELF_NGREG 38
typedef elf_greg_t elf_gregset_t[ELF_NGREG];
typedef elf_greg_t elf_gregset_t[ELF_NGREG];


typedef struct {
	union {
		unsigned long	pr_regs[32];
		double		pr_dregs[16];
	} pr_fr;
	unsigned long __unused;
	unsigned long	pr_fsr;
	unsigned char	pr_qcnt;
	unsigned char	pr_q_entrysize;
	unsigned char	pr_en;
	unsigned int	pr_q[64];
} elf_fpregset_t;

#ifdef __KERNEL__
#include <asm/mbus.h>
#include <asm/uaccess.h>

/* Format is:
/* Format is:
 * 	G0 --> G7
 * 	G0 --> G7
 *	O0 --> O7
 *	O0 --> O7
@@ -99,20 +111,7 @@ do { unsigned long *dest = &(__elf_regs[0]); \
	dest[34] = src->npc;				\
	dest[34] = src->npc;				\
	dest[35] = src->y;				\
	dest[35] = src->y;				\
	dest[36] = dest[37] = 0; /* XXX */		\
	dest[36] = dest[37] = 0; /* XXX */		\
} while(0); /* Janitors: Don't touch this colon. */
} while(0); /* Janitors: Don't touch this semicolon. */

typedef struct {
	union {
		unsigned long	pr_regs[32];
		double		pr_dregs[16];
	} pr_fr;
	unsigned long __unused;
	unsigned long	pr_fsr;
	unsigned char	pr_qcnt;
	unsigned char	pr_q_entrysize;
	unsigned char	pr_en;
	unsigned int	pr_q[64];
} elf_fpregset_t;


#define ELF_CORE_COPY_TASK_REGS(__tsk, __elf_regs)	\
#define ELF_CORE_COPY_TASK_REGS(__tsk, __elf_regs)	\
	({ ELF_CORE_COPY_REGS((*(__elf_regs)), (__tsk)->thread.kregs); 1; })
	({ ELF_CORE_COPY_REGS((*(__elf_regs)), (__tsk)->thread.kregs); 1; })
@@ -165,8 +164,8 @@ typedef struct {


#define ELF_PLATFORM	(NULL)
#define ELF_PLATFORM	(NULL)


#ifdef __KERNEL__
#define SET_PERSONALITY(ex, ibcs2) set_personality((ibcs2)?PER_SVR4:PER_LINUX)
#define SET_PERSONALITY(ex, ibcs2) set_personality((ibcs2)?PER_SVR4:PER_LINUX)
#endif

#endif /* __KERNEL__ */


#endif /* !(__ASMSPARC_ELF_H) */
#endif /* !(__ASMSPARC_ELF_H) */