Commit 6caffe21 authored by Linus Torvalds's avatar Linus Torvalds

Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha

Pull alpha updates from Matt Turner:
 "This contains some small clean up patches I've neglected, and some
  build improvements from Ben Hutchings"

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/mattst88/alpha:
  alpha: math-emu: Fix modular build
  alpha: Restore symbol versions for symbols exported from assembly
  alpha: defconfig: Cleanup from old Kconfig options
  alpha: use kobj_to_dev()
  alpha: squash lines for immediate return
  alpha: kernel: Use vma_pages()
  alpha: silence a buffer overflow warning
  alpha: marvel: make use of raw_spinlock variants
  alpha: cleanup: remove __NR_sys_epoll_*, leave __NR_epoll_*
  alpha: use generic fb.h
parents f32c9e05 d9e3cb2f
...@@ -19,7 +19,6 @@ CONFIG_INET_AH=m ...@@ -19,7 +19,6 @@ CONFIG_INET_AH=m
CONFIG_INET_ESP=m CONFIG_INET_ESP=m
# CONFIG_IPV6 is not set # CONFIG_IPV6 is not set
CONFIG_NETFILTER=y CONFIG_NETFILTER=y
CONFIG_IP_NF_QUEUE=m
CONFIG_IP_NF_IPTABLES=m CONFIG_IP_NF_IPTABLES=m
CONFIG_IP_NF_FILTER=m CONFIG_IP_NF_FILTER=m
CONFIG_VLAN_8021Q=m CONFIG_VLAN_8021Q=m
...@@ -57,7 +56,6 @@ CONFIG_SERIAL_8250_CONSOLE=y ...@@ -57,7 +56,6 @@ CONFIG_SERIAL_8250_CONSOLE=y
CONFIG_RTC=y CONFIG_RTC=y
CONFIG_EXT2_FS=y CONFIG_EXT2_FS=y
CONFIG_REISERFS_FS=m CONFIG_REISERFS_FS=m
CONFIG_AUTOFS_FS=m
CONFIG_ISO9660_FS=y CONFIG_ISO9660_FS=y
CONFIG_MSDOS_FS=y CONFIG_MSDOS_FS=y
CONFIG_VFAT_FS=y CONFIG_VFAT_FS=y
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
generic-y += clkdev.h generic-y += clkdev.h
generic-y += exec.h generic-y += exec.h
generic-y += export.h generic-y += export.h
generic-y += fb.h
generic-y += irq_work.h generic-y += irq_work.h
generic-y += mcs_spinlock.h generic-y += mcs_spinlock.h
generic-y += mm-arch-hooks.h generic-y += mm-arch-hooks.h
......
#include <linux/spinlock.h>
#include <asm/checksum.h>
#include <asm/console.h>
#include <asm/page.h>
#include <asm/string.h>
#include <asm/uaccess.h>
#include <asm-generic/asm-prototypes.h>
extern void __divl(void);
extern void __reml(void);
extern void __divq(void);
extern void __remq(void);
extern void __divlu(void);
extern void __remlu(void);
extern void __divqu(void);
extern void __remqu(void);
...@@ -312,7 +312,7 @@ struct io7 { ...@@ -312,7 +312,7 @@ struct io7 {
io7_port7_csrs *csrs; io7_port7_csrs *csrs;
struct io7_port ports[IO7_NUM_PORTS]; struct io7_port ports[IO7_NUM_PORTS];
spinlock_t irq_lock; raw_spinlock_t irq_lock;
}; };
#ifndef __EXTERN_INLINE #ifndef __EXTERN_INLINE
......
#ifndef _ASM_FB_H_
#define _ASM_FB_H_
#include <linux/device.h>
/* Caching is off in the I/O space quadrant by design. */
#define fb_pgprotect(...) do {} while (0)
static inline int fb_is_primary_device(struct fb_info *info)
{
return 0;
}
#endif /* _ASM_FB_H_ */
...@@ -366,11 +366,6 @@ ...@@ -366,11 +366,6 @@
#define __NR_epoll_create 407 #define __NR_epoll_create 407
#define __NR_epoll_ctl 408 #define __NR_epoll_ctl 408
#define __NR_epoll_wait 409 #define __NR_epoll_wait 409
/* Feb 2007: These three sys_epoll defines shouldn't be here but culling
* them would break userspace apps ... we'll kill them off in 2010 :) */
#define __NR_sys_epoll_create __NR_epoll_create
#define __NR_sys_epoll_ctl __NR_epoll_ctl
#define __NR_sys_epoll_wait __NR_epoll_wait
#define __NR_remap_file_pages 410 #define __NR_remap_file_pages 410
#define __NR_set_tid_address 411 #define __NR_set_tid_address 411
#define __NR_restart_syscall 412 #define __NR_restart_syscall 412
......
...@@ -118,7 +118,7 @@ alloc_io7(unsigned int pe) ...@@ -118,7 +118,7 @@ alloc_io7(unsigned int pe)
io7 = alloc_bootmem(sizeof(*io7)); io7 = alloc_bootmem(sizeof(*io7));
io7->pe = pe; io7->pe = pe;
spin_lock_init(&io7->irq_lock); raw_spin_lock_init(&io7->irq_lock);
for (h = 0; h < 4; h++) { for (h = 0; h < 4; h++) {
io7->ports[h].io7 = io7; io7->ports[h].io7 = io7;
......
...@@ -42,11 +42,7 @@ alloc_pci_controller(void) ...@@ -42,11 +42,7 @@ alloc_pci_controller(void)
struct resource * __init struct resource * __init
alloc_resource(void) alloc_resource(void)
{ {
struct resource *res; return alloc_bootmem(sizeof(struct resource));
res = alloc_bootmem(sizeof(*res));
return res;
} }
asmlinkage long asmlinkage long
......
...@@ -38,7 +38,7 @@ static int __pci_mmap_fits(struct pci_dev *pdev, int num, ...@@ -38,7 +38,7 @@ static int __pci_mmap_fits(struct pci_dev *pdev, int num,
unsigned long nr, start, size; unsigned long nr, start, size;
int shift = sparse ? 5 : 0; int shift = sparse ? 5 : 0;
nr = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; nr = vma_pages(vma);
start = vma->vm_pgoff; start = vma->vm_pgoff;
size = ((pci_resource_len(pdev, num) - 1) >> (PAGE_SHIFT - shift)) + 1; size = ((pci_resource_len(pdev, num) - 1) >> (PAGE_SHIFT - shift)) + 1;
...@@ -64,8 +64,7 @@ static int pci_mmap_resource(struct kobject *kobj, ...@@ -64,8 +64,7 @@ static int pci_mmap_resource(struct kobject *kobj,
struct bin_attribute *attr, struct bin_attribute *attr,
struct vm_area_struct *vma, int sparse) struct vm_area_struct *vma, int sparse)
{ {
struct pci_dev *pdev = to_pci_dev(container_of(kobj, struct pci_dev *pdev = to_pci_dev(kobj_to_dev(kobj));
struct device, kobj));
struct resource *res = attr->private; struct resource *res = attr->private;
enum pci_mmap_state mmap_type; enum pci_mmap_state mmap_type;
struct pci_bus_region bar; struct pci_bus_region bar;
...@@ -255,7 +254,7 @@ static int __legacy_mmap_fits(struct pci_controller *hose, ...@@ -255,7 +254,7 @@ static int __legacy_mmap_fits(struct pci_controller *hose,
{ {
unsigned long nr, start, size; unsigned long nr, start, size;
nr = (vma->vm_end - vma->vm_start) >> PAGE_SHIFT; nr = vma_pages(vma);
start = vma->vm_pgoff; start = vma->vm_pgoff;
size = ((res_size - 1) >> PAGE_SHIFT) + 1; size = ((res_size - 1) >> PAGE_SHIFT) + 1;
......
...@@ -379,11 +379,7 @@ alloc_pci_controller(void) ...@@ -379,11 +379,7 @@ alloc_pci_controller(void)
struct resource * __init struct resource * __init
alloc_resource(void) alloc_resource(void)
{ {
struct resource *res; return alloc_bootmem(sizeof(struct resource));
res = alloc_bootmem(sizeof(*res));
return res;
} }
......
...@@ -1094,7 +1094,8 @@ get_sysnames(unsigned long type, unsigned long variation, unsigned long cpu, ...@@ -1094,7 +1094,8 @@ get_sysnames(unsigned long type, unsigned long variation, unsigned long cpu,
default: /* default to variation "0" for now */ default: /* default to variation "0" for now */
break; break;
case ST_DEC_EB164: case ST_DEC_EB164:
if (member < ARRAY_SIZE(eb164_indices)) if (member >= ARRAY_SIZE(eb164_indices))
break;
*variation_name = eb164_names[eb164_indices[member]]; *variation_name = eb164_names[eb164_indices[member]];
/* PC164 may show as EB164 variation, but with EV56 CPU, /* PC164 may show as EB164 variation, but with EV56 CPU,
so, since no true EB164 had anything but EV5... */ so, since no true EB164 had anything but EV5... */
......
...@@ -2007,11 +2007,8 @@ static void __init SMC37c669_config_mode( ...@@ -2007,11 +2007,8 @@ static void __init SMC37c669_config_mode(
static unsigned char __init SMC37c669_read_config( static unsigned char __init SMC37c669_read_config(
unsigned char index ) unsigned char index )
{ {
unsigned char data; wb(&SMC37c669->index_port, index);
return rb(&SMC37c669->data_port);
wb( &SMC37c669->index_port, index );
data = rb( &SMC37c669->data_port );
return data;
} }
/* /*
......
...@@ -115,11 +115,11 @@ io7_enable_irq(struct irq_data *d) ...@@ -115,11 +115,11 @@ io7_enable_irq(struct irq_data *d)
return; return;
} }
spin_lock(&io7->irq_lock); raw_spin_lock(&io7->irq_lock);
*ctl |= 1UL << 24; *ctl |= 1UL << 24;
mb(); mb();
*ctl; *ctl;
spin_unlock(&io7->irq_lock); raw_spin_unlock(&io7->irq_lock);
} }
static void static void
...@@ -136,11 +136,11 @@ io7_disable_irq(struct irq_data *d) ...@@ -136,11 +136,11 @@ io7_disable_irq(struct irq_data *d)
return; return;
} }
spin_lock(&io7->irq_lock); raw_spin_lock(&io7->irq_lock);
*ctl &= ~(1UL << 24); *ctl &= ~(1UL << 24);
mb(); mb();
*ctl; *ctl;
spin_unlock(&io7->irq_lock); raw_spin_unlock(&io7->irq_lock);
} }
static void static void
...@@ -263,7 +263,7 @@ init_io7_irqs(struct io7 *io7, ...@@ -263,7 +263,7 @@ init_io7_irqs(struct io7 *io7,
*/ */
printk(" Interrupts reported to CPU at PE %u\n", boot_cpuid); printk(" Interrupts reported to CPU at PE %u\n", boot_cpuid);
spin_lock(&io7->irq_lock); raw_spin_lock(&io7->irq_lock);
/* set up the error irqs */ /* set up the error irqs */
io7_redirect_irq(io7, &io7->csrs->HLT_CTL.csr, boot_cpuid); io7_redirect_irq(io7, &io7->csrs->HLT_CTL.csr, boot_cpuid);
...@@ -295,7 +295,7 @@ init_io7_irqs(struct io7 *io7, ...@@ -295,7 +295,7 @@ init_io7_irqs(struct io7 *io7,
for (i = 0; i < 16; ++i) for (i = 0; i < 16; ++i)
init_one_io7_msi(io7, i, boot_cpuid); init_one_io7_msi(io7, i, boot_cpuid);
spin_unlock(&io7->irq_lock); raw_spin_unlock(&io7->irq_lock);
} }
static void __init static void __init
......
...@@ -193,8 +193,10 @@ die_if_kernel(char * str, struct pt_regs *regs, long err, unsigned long *r9_15) ...@@ -193,8 +193,10 @@ die_if_kernel(char * str, struct pt_regs *regs, long err, unsigned long *r9_15)
static long dummy_emul(void) { return 0; } static long dummy_emul(void) { return 0; }
long (*alpha_fp_emul_imprecise)(struct pt_regs *regs, unsigned long writemask) long (*alpha_fp_emul_imprecise)(struct pt_regs *regs, unsigned long writemask)
= (void *)dummy_emul; = (void *)dummy_emul;
EXPORT_SYMBOL_GPL(alpha_fp_emul_imprecise);
long (*alpha_fp_emul) (unsigned long pc) long (*alpha_fp_emul) (unsigned long pc)
= (void *)dummy_emul; = (void *)dummy_emul;
EXPORT_SYMBOL_GPL(alpha_fp_emul);
#else #else
long alpha_fp_emul_imprecise(struct pt_regs *regs, unsigned long writemask); long alpha_fp_emul_imprecise(struct pt_regs *regs, unsigned long writemask);
long alpha_fp_emul (unsigned long pc); long alpha_fp_emul (unsigned long pc);
......
...@@ -53,6 +53,7 @@ extern void alpha_write_fp_reg_s (unsigned long reg, unsigned long val); ...@@ -53,6 +53,7 @@ extern void alpha_write_fp_reg_s (unsigned long reg, unsigned long val);
#ifdef MODULE #ifdef MODULE
MODULE_DESCRIPTION("FP Software completion module"); MODULE_DESCRIPTION("FP Software completion module");
MODULE_LICENSE("GPL v2");
extern long (*alpha_fp_emul_imprecise)(struct pt_regs *, unsigned long); extern long (*alpha_fp_emul_imprecise)(struct pt_regs *, unsigned long);
extern long (*alpha_fp_emul) (unsigned long pc); extern long (*alpha_fp_emul) (unsigned long pc);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment