diff options
Diffstat (limited to 'arch/microblaze/include')
| -rw-r--r-- | arch/microblaze/include/asm/Kbuild | 8 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/barrier.h | 27 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/cpuinfo.h | 9 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/cputime.h | 1 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/delay.h | 2 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/device.h | 26 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/dma-mapping.h | 25 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/fixmap.h | 44 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/io.h | 303 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/pci.h | 15 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/pgalloc.h | 12 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/processor.h | 2 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/prom.h | 39 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/sections.h | 1 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/setup.h | 6 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/thread_info.h | 2 | ||||
| -rw-r--r-- | arch/microblaze/include/asm/unistd.h | 1 | ||||
| -rw-r--r-- | arch/microblaze/include/uapi/asm/Kbuild | 3 | ||||
| -rw-r--r-- | arch/microblaze/include/uapi/asm/types.h | 1 | ||||
| -rw-r--r-- | arch/microblaze/include/uapi/asm/unistd.h | 6 | 
20 files changed, 56 insertions, 477 deletions
diff --git a/arch/microblaze/include/asm/Kbuild b/arch/microblaze/include/asm/Kbuild index d3c51a6a601..35b3ecaf25d 100644 --- a/arch/microblaze/include/asm/Kbuild +++ b/arch/microblaze/include/asm/Kbuild @@ -1,5 +1,11 @@ +generic-y += barrier.h  generic-y += clkdev.h +generic-y += cputime.h +generic-y += device.h  generic-y += exec.h -generic-y += trace_clock.h +generic-y += hash.h +generic-y += mcs_spinlock.h +generic-y += preempt.h  generic-y += syscalls.h +generic-y += trace_clock.h diff --git a/arch/microblaze/include/asm/barrier.h b/arch/microblaze/include/asm/barrier.h deleted file mode 100644 index df5be3e8704..00000000000 --- a/arch/microblaze/include/asm/barrier.h +++ /dev/null @@ -1,27 +0,0 @@ -/* - * Copyright (C) 2006 Atmark Techno, Inc. - * - * This file is subject to the terms and conditions of the GNU General Public - * License. See the file "COPYING" in the main directory of this archive - * for more details. - */ - -#ifndef _ASM_MICROBLAZE_BARRIER_H -#define _ASM_MICROBLAZE_BARRIER_H - -#define nop()                  asm volatile ("nop") - -#define smp_read_barrier_depends()	do {} while (0) -#define read_barrier_depends()		do {} while (0) - -#define mb()			barrier() -#define rmb()			mb() -#define wmb()			mb() -#define set_mb(var, value)	do { var = value; mb(); } while (0) -#define set_wmb(var, value)	do { var = value; wmb(); } while (0) - -#define smp_mb()		mb() -#define smp_rmb()		rmb() -#define smp_wmb()		wmb() - -#endif /* _ASM_MICROBLAZE_BARRIER_H */ diff --git a/arch/microblaze/include/asm/cpuinfo.h b/arch/microblaze/include/asm/cpuinfo.h index 7d6831ac8a4..3337417fcdc 100644 --- a/arch/microblaze/include/asm/cpuinfo.h +++ b/arch/microblaze/include/asm/cpuinfo.h @@ -91,15 +91,18 @@ extern struct cpuinfo cpuinfo;  /* fwd declarations of the various CPUinfo populators */  void setup_cpuinfo(void); +void setup_cpuinfo_clk(void);  void set_cpuinfo_static(struct cpuinfo *ci, struct device_node *cpu);  void set_cpuinfo_pvr_full(struct cpuinfo *ci, struct device_node *cpu);  static inline unsigned int fcpu(struct device_node *cpu, char *n)  { -	const __be32 *val; -	return (val = of_get_property(cpu, n, NULL)) ? -							be32_to_cpup(val) : 0; +	u32 val = 0; + +	of_property_read_u32(cpu, n, &val); + +	return val;  }  #endif /* _ASM_MICROBLAZE_CPUINFO_H */ diff --git a/arch/microblaze/include/asm/cputime.h b/arch/microblaze/include/asm/cputime.h deleted file mode 100644 index 6d68ad7e0ea..00000000000 --- a/arch/microblaze/include/asm/cputime.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/cputime.h> diff --git a/arch/microblaze/include/asm/delay.h b/arch/microblaze/include/asm/delay.h index 05b7d39e439..66fc24c2423 100644 --- a/arch/microblaze/include/asm/delay.h +++ b/arch/microblaze/include/asm/delay.h @@ -13,6 +13,8 @@  #ifndef _ASM_MICROBLAZE_DELAY_H  #define _ASM_MICROBLAZE_DELAY_H +#include <linux/param.h> +  extern inline void __delay(unsigned long loops)  {  	asm volatile ("# __delay		\n\t"		\ diff --git a/arch/microblaze/include/asm/device.h b/arch/microblaze/include/asm/device.h deleted file mode 100644 index 123b2fe72d0..00000000000 --- a/arch/microblaze/include/asm/device.h +++ /dev/null @@ -1,26 +0,0 @@ -/* - * Arch specific extensions to struct device - * - * This file is subject to the terms and conditions of the GNU General Public - * License v2. See the file "COPYING" in the main directory of this archive - * for more details. - */ - -#ifndef _ASM_MICROBLAZE_DEVICE_H -#define _ASM_MICROBLAZE_DEVICE_H - -struct device_node; - -struct dev_archdata { -	/* DMA operations on that device */ -	struct dma_map_ops	*dma_ops; -	void                    *dma_data; -}; - -struct pdev_archdata { -	u64 dma_mask; -}; - -#endif /* _ASM_MICROBLAZE_DEVICE_H */ - - diff --git a/arch/microblaze/include/asm/dma-mapping.h b/arch/microblaze/include/asm/dma-mapping.h index 46460f1c49c..ab353723076 100644 --- a/arch/microblaze/include/asm/dma-mapping.h +++ b/arch/microblaze/include/asm/dma-mapping.h @@ -35,16 +35,6 @@  #define __dma_alloc_coherent(dev, gfp, size, handle)	NULL  #define __dma_free_coherent(size, addr)		((void)0) -static inline unsigned long device_to_mask(struct device *dev) -{ -	if (dev->dma_mask && *dev->dma_mask) -		return *dev->dma_mask; -	/* Assume devices without mask can take 32 bit addresses */ -	return 0xfffffffful; -} - -extern struct dma_map_ops *dma_ops; -  /*   * Available generic sets of operations   */ @@ -52,20 +42,7 @@ extern struct dma_map_ops dma_direct_ops;  static inline struct dma_map_ops *get_dma_ops(struct device *dev)  { -	/* We don't handle the NULL dev case for ISA for now. We could -	 * do it via an out of line call but it is not needed for now. The -	 * only ISA DMA device we support is the floppy and we have a hack -	 * in the floppy driver directly to get a device for us. -	 */ -	if (unlikely(!dev) || !dev->archdata.dma_ops) -		return NULL; - -	return dev->archdata.dma_ops; -} - -static inline void set_dma_ops(struct device *dev, struct dma_map_ops *ops) -{ -	dev->archdata.dma_ops = ops; +	return &dma_direct_ops;  }  static inline int dma_supported(struct device *dev, u64 mask) diff --git a/arch/microblaze/include/asm/fixmap.h b/arch/microblaze/include/asm/fixmap.h index f2b312e10b1..06c0e2b1883 100644 --- a/arch/microblaze/include/asm/fixmap.h +++ b/arch/microblaze/include/asm/fixmap.h @@ -58,52 +58,12 @@ enum fixed_addresses {  extern void __set_fixmap(enum fixed_addresses idx,  					phys_addr_t phys, pgprot_t flags); -#define set_fixmap(idx, phys) \ -		__set_fixmap(idx, phys, PAGE_KERNEL) -/* - * Some hardware wants to get fixmapped without caching. - */ -#define set_fixmap_nocache(idx, phys) \ -		__set_fixmap(idx, phys, PAGE_KERNEL_CI) - -#define clear_fixmap(idx) \ -		__set_fixmap(idx, 0, __pgprot(0)) -  #define __FIXADDR_SIZE	(__end_of_fixed_addresses << PAGE_SHIFT)  #define FIXADDR_START		(FIXADDR_TOP - __FIXADDR_SIZE) -#define __fix_to_virt(x)	(FIXADDR_TOP - ((x) << PAGE_SHIFT)) -#define __virt_to_fix(x)	((FIXADDR_TOP - ((x)&PAGE_MASK)) >> PAGE_SHIFT) - -extern void __this_fixmap_does_not_exist(void); - -/* - * 'index to address' translation. If anyone tries to use the idx - * directly without tranlation, we catch the bug with a NULL-deference - * kernel oops. Illegal ranges of incoming indices are caught too. - */ -static __always_inline unsigned long fix_to_virt(const unsigned int idx) -{ -	/* -	 * this branch gets completely eliminated after inlining, -	 * except when someone tries to use fixaddr indices in an -	 * illegal way. (such as mixing up address types or using -	 * out-of-range indices). -	 * -	 * If it doesn't get removed, the linker will complain -	 * loudly with a reasonably clear error message.. -	 */ -	if (idx >= __end_of_fixed_addresses) -		__this_fixmap_does_not_exist(); - -	return __fix_to_virt(idx); -} +#define FIXMAP_PAGE_NOCACHE PAGE_KERNEL_CI -static inline unsigned long virt_to_fix(const unsigned long vaddr) -{ -	BUG_ON(vaddr >= FIXADDR_TOP || vaddr < FIXADDR_START); -	return __virt_to_fix(vaddr); -} +#include <asm-generic/fixmap.h>  #endif /* !__ASSEMBLY__ */  #endif diff --git a/arch/microblaze/include/asm/io.h b/arch/microblaze/include/asm/io.h index 2565cb94f32..433751b2a00 100644 --- a/arch/microblaze/include/asm/io.h +++ b/arch/microblaze/include/asm/io.h @@ -15,215 +15,38 @@  #include <asm/page.h>  #include <linux/types.h>  #include <linux/mm.h>          /* Get struct page {...} */ -#include <asm-generic/iomap.h>  #ifndef CONFIG_PCI  #define _IO_BASE	0  #define _ISA_MEM_BASE	0 -#define PCI_DRAM_OFFSET	0  #else  #define _IO_BASE	isa_io_base  #define _ISA_MEM_BASE	isa_mem_base -#define PCI_DRAM_OFFSET	pci_dram_offset -#endif +struct pci_dev; +extern void pci_iounmap(struct pci_dev *dev, void __iomem *); +#define pci_iounmap pci_iounmap  extern unsigned long isa_io_base; -extern unsigned long pci_io_base; -extern unsigned long pci_dram_offset; -  extern resource_size_t isa_mem_base; +#endif +#define PCI_IOBASE	((void __iomem *)_IO_BASE)  #define IO_SPACE_LIMIT (0xFFFFFFFF) -/* the following is needed to support PCI with some drivers */ - -#define mmiowb() - -static inline unsigned char __raw_readb(const volatile void __iomem *addr) -{ -	return *(volatile unsigned char __force *)addr; -} -static inline unsigned short __raw_readw(const volatile void __iomem *addr) -{ -	return *(volatile unsigned short __force *)addr; -} -static inline unsigned int __raw_readl(const volatile void __iomem *addr) -{ -	return *(volatile unsigned int __force *)addr; -} -static inline unsigned long __raw_readq(const volatile void __iomem *addr) -{ -	return *(volatile unsigned long __force *)addr; -} -static inline void __raw_writeb(unsigned char v, volatile void __iomem *addr) -{ -	*(volatile unsigned char __force *)addr = v; -} -static inline void __raw_writew(unsigned short v, volatile void __iomem *addr) -{ -	*(volatile unsigned short __force *)addr = v; -} -static inline void __raw_writel(unsigned int v, volatile void __iomem *addr) -{ -	*(volatile unsigned int __force *)addr = v; -} -static inline void __raw_writeq(unsigned long v, volatile void __iomem *addr) -{ -	*(volatile unsigned long __force *)addr = v; -} - -/* - * read (readb, readw, readl, readq) and write (writeb, writew, - * writel, writeq) accessors are for PCI and thus little endian. - * Linux 2.4 for Microblaze had this wrong. - */ -static inline unsigned char readb(const volatile void __iomem *addr) -{ -	return *(volatile unsigned char __force *)addr; -} -static inline unsigned short readw(const volatile void __iomem *addr) -{ -	return le16_to_cpu(*(volatile unsigned short __force *)addr); -} -static inline unsigned int readl(const volatile void __iomem *addr) -{ -	return le32_to_cpu(*(volatile unsigned int __force *)addr); -} -static inline void writeb(unsigned char v, volatile void __iomem *addr) -{ -	*(volatile unsigned char __force *)addr = v; -} -static inline void writew(unsigned short v, volatile void __iomem *addr) -{ -	*(volatile unsigned short __force *)addr = cpu_to_le16(v); -} -static inline void writel(unsigned int v, volatile void __iomem *addr) -{ -	*(volatile unsigned int __force *)addr = cpu_to_le32(v); -} - -/* ioread and iowrite variants. thease are for now same as __raw_ - * variants of accessors. we might check for endianess in the feature - */ -#define ioread8(addr)		__raw_readb((u8 *)(addr)) -#define ioread16(addr)		__raw_readw((u16 *)(addr)) -#define ioread32(addr)		__raw_readl((u32 *)(addr)) -#define iowrite8(v, addr)	__raw_writeb((u8)(v), (u8 *)(addr)) -#define iowrite16(v, addr)	__raw_writew((u16)(v), (u16 *)(addr)) -#define iowrite32(v, addr)	__raw_writel((u32)(v), (u32 *)(addr)) - -#define ioread16be(addr)	__raw_readw((u16 *)(addr)) -#define ioread32be(addr)	__raw_readl((u32 *)(addr)) -#define iowrite16be(v, addr)	__raw_writew((u16)(v), (u16 *)(addr)) -#define iowrite32be(v, addr)	__raw_writel((u32)(v), (u32 *)(addr)) - -/* These are the definitions for the x86 IO instructions - * inb/inw/inl/outb/outw/outl, the "string" versions - * insb/insw/insl/outsb/outsw/outsl, and the "pausing" versions - * inb_p/inw_p/... - * The macros don't do byte-swapping. - */ -#define inb(port)		readb((u8 *)((unsigned long)(port))) -#define outb(val, port)		writeb((val), (u8 *)((unsigned long)(port))) -#define inw(port)		readw((u16 *)((unsigned long)(port))) -#define outw(val, port)		writew((val), (u16 *)((unsigned long)(port))) -#define inl(port)		readl((u32 *)((unsigned long)(port))) -#define outl(val, port)		writel((val), (u32 *)((unsigned long)(port))) - -#define inb_p(port)		inb((port)) -#define outb_p(val, port)	outb((val), (port)) -#define inw_p(port)		inw((port)) -#define outw_p(val, port)	outw((val), (port)) -#define inl_p(port)		inl((port)) -#define outl_p(val, port)	outl((val), (port)) - -#define memset_io(a, b, c)	memset((void *)(a), (b), (c)) -#define memcpy_fromio(a, b, c)	memcpy((a), (void *)(b), (c)) -#define memcpy_toio(a, b, c)	memcpy((void *)(a), (b), (c)) -  #ifdef CONFIG_MMU - -#define phys_to_virt(addr)	((void *)__phys_to_virt(addr)) -#define virt_to_phys(addr)	((unsigned long)__virt_to_phys(addr)) -#define virt_to_bus(addr)	((unsigned long)__virt_to_phys(addr)) -  #define page_to_bus(page)	(page_to_phys(page)) -#define bus_to_virt(addr)	(phys_to_virt(addr))  extern void iounmap(void __iomem *addr); -/*extern void *__ioremap(phys_addr_t address, unsigned long size, -		unsigned long flags);*/ -extern void __iomem *ioremap(phys_addr_t address, unsigned long size); -#define ioremap_writethrough(addr, size) ioremap((addr), (size)) -#define ioremap_nocache(addr, size)      ioremap((addr), (size)) -#define ioremap_fullcache(addr, size)    ioremap((addr), (size)) - -#else /* CONFIG_MMU */ - -/** - *	virt_to_phys - map virtual addresses to physical - *	@address: address to remap - * - *	The returned physical address is the physical (CPU) mapping for - *	the memory address given. It is only valid to use this function on - *	addresses directly mapped or allocated via kmalloc. - * - *	This function does not give bus mappings for DMA transfers. In - *	almost all conceivable cases a device driver should not be using - *	this function - */ -static inline unsigned long __iomem virt_to_phys(volatile void *address) -{ -	return __pa((unsigned long)address); -} - -#define virt_to_bus virt_to_phys - -/** - *	phys_to_virt - map physical address to virtual - *	@address: address to remap - * - *	The returned virtual address is a current CPU mapping for - *	the memory address given. It is only valid to use this function on - *	addresses that have a kernel mapping - * - *	This function does not handle bus mappings for DMA transfers. In - *	almost all conceivable cases a device driver should not be using - *	this function - */ -static inline void *phys_to_virt(unsigned long address) -{ -	return (void *)__va(address); -} - -#define bus_to_virt(a) phys_to_virt(a) -static inline void __iomem *__ioremap(phys_addr_t address, unsigned long size, -			unsigned long flags) -{ -	return (void *)address; -} - -#define ioremap(physaddr, size)	((void __iomem *)(unsigned long)(physaddr)) -#define iounmap(addr)		((void)0) -#define ioremap_nocache(physaddr, size)	ioremap(physaddr, size) +extern void __iomem *ioremap(phys_addr_t address, unsigned long size); +#define ioremap_writethrough(addr, size)	ioremap((addr), (size)) +#define ioremap_nocache(addr, size)		ioremap((addr), (size)) +#define ioremap_fullcache(addr, size)		ioremap((addr), (size)) +#define ioremap_wc(addr, size)			ioremap((addr), (size))  #endif /* CONFIG_MMU */ -/* - * Convert a physical pointer to a virtual kernel pointer for /dev/mem - * access - */ -#define xlate_dev_mem_ptr(p)	__va(p) - -/* - * Convert a virtual cached pointer to an uncached pointer - */ -#define xlate_dev_kmem_ptr(p)	p - -/* - * Big Endian - */ +/* Big Endian */  #define out_be32(a, v) __raw_writel((v), (void __iomem __force *)(a))  #define out_be16(a, v) __raw_writew((v), (a)) @@ -233,10 +56,7 @@ static inline void __iomem *__ioremap(phys_addr_t address, unsigned long size,  #define writel_be(v, a)	out_be32((__force unsigned *)a, v)  #define readl_be(a)	in_be32((__force unsigned *)a) -/* - * Little endian - */ - +/* Little endian */  #define out_le32(a, v) __raw_writel(__cpu_to_le32(v), (a))  #define out_le16(a, v) __raw_writew(__cpu_to_le16(v), (a)) @@ -247,99 +67,14 @@ static inline void __iomem *__ioremap(phys_addr_t address, unsigned long size,  #define out_8(a, v) __raw_writeb((v), (a))  #define in_8(a) __raw_readb(a) -#define mmiowb() - -#define ioport_map(port, nr)	((void __iomem *)(port)) -#define ioport_unmap(addr) - -/* from asm-generic/io.h */ -#ifndef insb -static inline void insb(unsigned long addr, void *buffer, int count) -{ -	if (count) { -		u8 *buf = buffer; -		do { -			u8 x = inb(addr); -			*buf++ = x; -		} while (--count); -	} -} -#endif - -#ifndef insw -static inline void insw(unsigned long addr, void *buffer, int count) -{ -	if (count) { -		u16 *buf = buffer; -		do { -			u16 x = inw(addr); -			*buf++ = x; -		} while (--count); -	} -} -#endif - -#ifndef insl -static inline void insl(unsigned long addr, void *buffer, int count) -{ -	if (count) { -		u32 *buf = buffer; -		do { -			u32 x = inl(addr); -			*buf++ = x; -		} while (--count); -	} -} -#endif - -#ifndef outsb -static inline void outsb(unsigned long addr, const void *buffer, int count) -{ -	if (count) { -		const u8 *buf = buffer; -		do { -			outb(*buf++, addr); -		} while (--count); -	} -} -#endif - -#ifndef outsw -static inline void outsw(unsigned long addr, const void *buffer, int count) -{ -	if (count) { -		const u16 *buf = buffer; -		do { -			outw(*buf++, addr); -		} while (--count); -	} -} -#endif - -#ifndef outsl -static inline void outsl(unsigned long addr, const void *buffer, int count) -{ -	if (count) { -		const u32 *buf = buffer; -		do { -			outl(*buf++, addr); -		} while (--count); -	} -} -#endif +#include <asm-generic/io.h> -#define ioread8_rep(p, dst, count) \ -	insb((unsigned long) (p), (dst), (count)) -#define ioread16_rep(p, dst, count) \ -	insw((unsigned long) (p), (dst), (count)) -#define ioread32_rep(p, dst, count) \ -	insl((unsigned long) (p), (dst), (count)) +#define readb_relaxed	readb +#define readw_relaxed	readw +#define readl_relaxed	readl -#define iowrite8_rep(p, src, count) \ -	outsb((unsigned long) (p), (src), (count)) -#define iowrite16_rep(p, src, count) \ -	outsw((unsigned long) (p), (src), (count)) -#define iowrite32_rep(p, src, count) \ -	outsl((unsigned long) (p), (src), (count)) +#define writeb_relaxed	writeb +#define writew_relaxed	writew +#define writel_relaxed	writel  #endif /* _ASM_MICROBLAZE_IO_H */ diff --git a/arch/microblaze/include/asm/pci.h b/arch/microblaze/include/asm/pci.h index d52abb6812f..468aca8cec0 100644 --- a/arch/microblaze/include/asm/pci.h +++ b/arch/microblaze/include/asm/pci.h @@ -44,19 +44,6 @@ struct pci_dev;   */  #define pcibios_assign_all_busses()	0 -static inline void pcibios_penalize_isa_irq(int irq, int active) -{ -	/* We don't do dynamic PCI IRQ allocation */ -} - -#ifdef CONFIG_PCI -extern void set_pci_dma_ops(struct dma_map_ops *dma_ops); -extern struct dma_map_ops *get_pci_dma_ops(void); -#else	/* CONFIG_PCI */ -#define set_pci_dma_ops(d) -#define get_pci_dma_ops()	NULL -#endif -  #ifdef CONFIG_PCI  static inline void pci_dma_burst_advice(struct pci_dev *pdev,  					enum pci_dma_burst_strategy *strat, @@ -127,8 +114,6 @@ extern void of_scan_pci_bridge(struct device_node *node,  extern void of_scan_bus(struct device_node *node, struct pci_bus *bus);  extern void of_rescan_bus(struct device_node *node, struct pci_bus *bus); -extern int pci_read_irq_line(struct pci_dev *dev); -  extern int pci_bus_find_capability(struct pci_bus *bus,  						unsigned int devfn, int cap); diff --git a/arch/microblaze/include/asm/pgalloc.h b/arch/microblaze/include/asm/pgalloc.h index ebd35792482..7fdf7fabc7d 100644 --- a/arch/microblaze/include/asm/pgalloc.h +++ b/arch/microblaze/include/asm/pgalloc.h @@ -122,8 +122,13 @@ static inline struct page *pte_alloc_one(struct mm_struct *mm,  #endif  	ptepage = alloc_pages(flags, 0); -	if (ptepage) -		clear_highpage(ptepage); +	if (!ptepage) +		return NULL; +	clear_highpage(ptepage); +	if (!pgtable_page_ctor(ptepage)) { +		__free_page(ptepage); +		return NULL; +	}  	return ptepage;  } @@ -158,8 +163,9 @@ extern inline void pte_free_slow(struct page *ptepage)  	__free_page(ptepage);  } -extern inline void pte_free(struct mm_struct *mm, struct page *ptepage) +static inline void pte_free(struct mm_struct *mm, struct page *ptepage)  { +	pgtable_page_dtor(ptepage);  	__free_page(ptepage);  } diff --git a/arch/microblaze/include/asm/processor.h b/arch/microblaze/include/asm/processor.h index d6e0ffea28b..9d31b057c35 100644 --- a/arch/microblaze/include/asm/processor.h +++ b/arch/microblaze/include/asm/processor.h @@ -122,7 +122,7 @@ struct thread_struct {  }  /* Free all resources held by a thread. */ -extern inline void release_thread(struct task_struct *dead_task) +static inline void release_thread(struct task_struct *dead_task)  {  } diff --git a/arch/microblaze/include/asm/prom.h b/arch/microblaze/include/asm/prom.h index 9977816c5ad..2f03ac81585 100644 --- a/arch/microblaze/include/asm/prom.h +++ b/arch/microblaze/include/asm/prom.h @@ -11,19 +11,10 @@   * as published by the Free Software Foundation; either version   * 2 of the License, or (at your option) any later version.   */ - -#include <linux/of.h>	/* linux/of.h gets to determine #include ordering */ -  #ifndef _ASM_MICROBLAZE_PROM_H  #define _ASM_MICROBLAZE_PROM_H -#ifdef __KERNEL__ -#ifndef __ASSEMBLY__ - -#include <linux/types.h> -#include <asm/irq.h> -#include <linux/atomic.h> -#define HAVE_ARCH_DEVTREE_FIXUPS +#include <linux/of.h>  /* Other Prototypes */  enum early_consoles { @@ -33,32 +24,4 @@ enum early_consoles {  extern int of_early_console(void *version); -/* - * OF address retreival & translation - */ - -#ifdef CONFIG_PCI -extern unsigned long pci_address_to_pio(phys_addr_t address); -#define pci_address_to_pio pci_address_to_pio -#endif	/* CONFIG_PCI */ - -/* Parse the ibm,dma-window property of an OF node into the busno, phys and - * size parameters. - */ -void of_parse_dma_window(struct device_node *dn, const void *dma_window_prop, -		unsigned long *busno, unsigned long *phys, unsigned long *size); - -extern void kdump_move_device_tree(void); - -#endif /* __ASSEMBLY__ */ -#endif /* __KERNEL__ */ - -/* These includes are put at the bottom because they may contain things - * that are overridden by this file.  Ideally they shouldn't be included - * by this file, but there are a bunch of .c files that currently depend - * on it.  Eventually they will be cleaned up. */ -#include <linux/of_fdt.h> -#include <linux/of_irq.h> -#include <linux/platform_device.h> -  #endif /* _ASM_MICROBLAZE_PROM_H */ diff --git a/arch/microblaze/include/asm/sections.h b/arch/microblaze/include/asm/sections.h index c07ed5d2a82..1b281d3ea73 100644 --- a/arch/microblaze/include/asm/sections.h +++ b/arch/microblaze/include/asm/sections.h @@ -16,7 +16,6 @@  # ifndef __ASSEMBLY__  extern char _ssbss[], _esbss[];  extern unsigned long __ivt_start[], __ivt_end[]; -extern char _etext[], _stext[];  extern u32 _fdt_start[], _fdt_end[]; diff --git a/arch/microblaze/include/asm/setup.h b/arch/microblaze/include/asm/setup.h index f05df5630c8..be84a4d3917 100644 --- a/arch/microblaze/include/asm/setup.h +++ b/arch/microblaze/include/asm/setup.h @@ -19,14 +19,12 @@ extern char cmd_line[COMMAND_LINE_SIZE];  extern char *klimit; -void early_printk(const char *fmt, ...); -  int setup_early_printk(char *opt);  void remap_early_printk(void);  void disable_early_printk(void); -void heartbeat(void); -void setup_heartbeat(void); +void microblaze_heartbeat(void); +void microblaze_setup_heartbeat(void);  #   ifdef CONFIG_MMU  extern void mmu_reset(void); diff --git a/arch/microblaze/include/asm/thread_info.h b/arch/microblaze/include/asm/thread_info.h index de26ea6373d..8c9d36591a0 100644 --- a/arch/microblaze/include/asm/thread_info.h +++ b/arch/microblaze/include/asm/thread_info.h @@ -106,8 +106,6 @@ static inline struct thread_info *current_thread_info(void)  /* thread information allocation */  #endif /* __ASSEMBLY__ */ -#define PREEMPT_ACTIVE		0x10000000 -  /*   * thread information flags   * - these are process state flags that various assembly files may diff --git a/arch/microblaze/include/asm/unistd.h b/arch/microblaze/include/asm/unistd.h index b14232b6878..fd56a8f6648 100644 --- a/arch/microblaze/include/asm/unistd.h +++ b/arch/microblaze/include/asm/unistd.h @@ -19,7 +19,6 @@  #define __ARCH_WANT_SYS_ALARM  #define __ARCH_WANT_SYS_GETHOSTNAME  #define __ARCH_WANT_SYS_PAUSE -#define __ARCH_WANT_SYS_SGETMASK  #define __ARCH_WANT_SYS_SIGNAL  #define __ARCH_WANT_SYS_TIME  #define __ARCH_WANT_SYS_UTIME diff --git a/arch/microblaze/include/uapi/asm/Kbuild b/arch/microblaze/include/uapi/asm/Kbuild index 6d7d7f4aaae..1aac99f87df 100644 --- a/arch/microblaze/include/uapi/asm/Kbuild +++ b/arch/microblaze/include/uapi/asm/Kbuild @@ -1,6 +1,8 @@  # UAPI Header export list  include include/uapi/asm-generic/Kbuild.asm +generic-y += types.h +  header-y += auxvec.h  header-y += bitsperlong.h  header-y += byteorder.h @@ -31,5 +33,4 @@ header-y += statfs.h  header-y += swab.h  header-y += termbits.h  header-y += termios.h -header-y += types.h  header-y += unistd.h diff --git a/arch/microblaze/include/uapi/asm/types.h b/arch/microblaze/include/uapi/asm/types.h deleted file mode 100644 index b9e79bc580d..00000000000 --- a/arch/microblaze/include/uapi/asm/types.h +++ /dev/null @@ -1 +0,0 @@ -#include <asm-generic/types.h> diff --git a/arch/microblaze/include/uapi/asm/unistd.h b/arch/microblaze/include/uapi/asm/unistd.h index 20043b67d15..8d0791b49b3 100644 --- a/arch/microblaze/include/uapi/asm/unistd.h +++ b/arch/microblaze/include/uapi/asm/unistd.h @@ -93,7 +93,7 @@  #define __NR_settimeofday	79 /* ok */  #define __NR_getgroups		80 /* ok */  #define __NR_setgroups		81 /* ok */ -#define __NR_select		82 /* obsolete -> sys_pselect7 */ +#define __NR_select		82 /* obsolete -> sys_pselect6 */  #define __NR_symlink		83 /* symlinkat */  #define __NR_oldlstat		84 /* remove */  #define __NR_readlink		85 /* obsolete -> sys_readlinkat */ @@ -320,7 +320,7 @@  #define __NR_readlinkat		305 /* ok */  #define __NR_fchmodat		306 /* ok */  #define __NR_faccessat		307 /* ok */ -#define __NR_pselect6		308 /* obsolete -> sys_pselect7 */ +#define __NR_pselect6		308 /* ok */  #define __NR_ppoll		309 /* ok */  #define __NR_unshare		310 /* ok */  #define __NR_set_robust_list	311 /* ok */ @@ -396,5 +396,7 @@  #define __NR_process_vm_writev	378  #define __NR_kcmp		379  #define __NR_finit_module	380 +#define __NR_sched_setattr	381 +#define __NR_sched_getattr	382  #endif /* _UAPI_ASM_MICROBLAZE_UNISTD_H */  | 
