diff options
| author | Ivan Kokshaysky <ink@jurassic.park.msu.ru> | 2002-08-10 02:03:21 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@home.transmeta.com> | 2002-08-10 02:03:21 -0700 |
| commit | 93be99e7d181d4472e2cba4d7e26f72cfaee7c23 (patch) | |
| tree | 04f8bfa0738f09487a43e2d8524273d3da254124 | |
| parent | 74b4e814033ca2ccb2fac84b18dd89e3dac10a21 (diff) | |
[PATCH] alpha: misc fixes [9/10]
Set of small fixes:
- pcibios_init() must be int;
- fls() - ctlz on ev67, generic on others. This was required for
something several kernel releases back, now it seems to be unused.
Anyway, it shouldn't hurt, so included here.
- missing #includes, missing #if RTC_IRQ in drivers/char/rtc.c;
- define USER_HZ;
From Jeff Wiedemeier:
- rename alpha-specific config section 'General setup' to 'System setup'
to avoid confusion with generic 'General setup';
- fix the 'bootpfile' build.
| -rw-r--r-- | arch/alpha/boot/Makefile | 1 | ||||
| -rw-r--r-- | arch/alpha/config.in | 2 | ||||
| -rw-r--r-- | arch/alpha/kernel/pci.c | 8 | ||||
| -rw-r--r-- | arch/alpha/kernel/signal.c | 1 | ||||
| -rw-r--r-- | drivers/char/rtc.c | 2 | ||||
| -rw-r--r-- | include/asm-alpha/bitops.h | 14 | ||||
| -rw-r--r-- | include/asm-alpha/param.h | 2 | ||||
| -rw-r--r-- | include/asm-alpha/pgalloc.h | 1 |
8 files changed, 26 insertions, 5 deletions
diff --git a/arch/alpha/boot/Makefile b/arch/alpha/boot/Makefile index 93fbd33e4994..c620ea21009f 100644 --- a/arch/alpha/boot/Makefile +++ b/arch/alpha/boot/Makefile @@ -20,6 +20,7 @@ BPOBJECTS = head.o bootp.o TARGETS = vmlinux.gz tools/objstrip # also needed by aboot & milo VMLINUX = $(TOPDIR)/vmlinux OBJSTRIP = tools/objstrip +LIBS := $(patsubst lib/%,$(TOPDIR)/lib/%,$(LIBS)) all: $(TARGETS) @echo Ready to install kernel in $(shell pwd)/vmlinux.gz diff --git a/arch/alpha/config.in b/arch/alpha/config.in index 6b6d24bcafb4..7b98848f723f 100644 --- a/arch/alpha/config.in +++ b/arch/alpha/config.in @@ -12,7 +12,7 @@ define_bool CONFIG_GENERIC_ISA_DMA y source init/Config.in mainmenu_option next_comment -comment 'General setup' +comment 'System setup' choice 'Alpha system type' \ "Generic CONFIG_ALPHA_GENERIC \ diff --git a/arch/alpha/kernel/pci.c b/arch/alpha/kernel/pci.c index 9626e7e43fb6..c6cda4e39dae 100644 --- a/arch/alpha/kernel/pci.c +++ b/arch/alpha/kernel/pci.c @@ -190,12 +190,12 @@ pcibios_align_resource(void *data, struct resource *res, #undef MB #undef GB -static void __init +static int __init pcibios_init(void) { - if (!alpha_mv.init_pci) - return; - alpha_mv.init_pci(); + if (alpha_mv.init_pci) + alpha_mv.init_pci(); + return 0; } subsys_initcall(pcibios_init); diff --git a/arch/alpha/kernel/signal.c b/arch/alpha/kernel/signal.c index 839dffd2e077..4a72684c8f48 100644 --- a/arch/alpha/kernel/signal.c +++ b/arch/alpha/kernel/signal.c @@ -18,6 +18,7 @@ #include <linux/smp_lock.h> #include <linux/stddef.h> #include <linux/tty.h> +#include <linux/binfmts.h> #include <asm/bitops.h> #include <asm/uaccess.h> diff --git a/drivers/char/rtc.c b/drivers/char/rtc.c index b24b718428f2..152185789a11 100644 --- a/drivers/char/rtc.c +++ b/drivers/char/rtc.c @@ -870,7 +870,9 @@ no_irq: if (misc_register(&rtc_dev)) { +#if RTC_IRQ free_irq(RTC_IRQ, NULL); +#endif release_region(RTC_PORT(0), RTC_IO_EXTENT); return -ENODEV; } diff --git a/include/asm-alpha/bitops.h b/include/asm-alpha/bitops.h index d76bcde410da..1e1e49eccaa7 100644 --- a/include/asm-alpha/bitops.h +++ b/include/asm-alpha/bitops.h @@ -315,6 +315,20 @@ static inline int ffs(int word) return word ? result+1 : 0; } +/* + * fls: find last bit set. + */ +#if defined(__alpha_cix__) && defined(__alpha_fix__) +static inline int fls(int word) +{ + long result; + __asm__("ctlz %1,%0" : "=r"(result) : "r"(word & 0xffffffff)); + return 64 - result; +} +#else +#define fls generic_fls +#endif + /* Compute powers of two for the given integer. */ static inline int floor_log2(unsigned long word) { diff --git a/include/asm-alpha/param.h b/include/asm-alpha/param.h index af39a19f1c77..c9d5f9156489 100644 --- a/include/asm-alpha/param.h +++ b/include/asm-alpha/param.h @@ -15,6 +15,8 @@ # endif #endif +#define USER_HZ HZ + #define EXEC_PAGESIZE 8192 #ifndef NGROUPS diff --git a/include/asm-alpha/pgalloc.h b/include/asm-alpha/pgalloc.h index 254a1f5a166e..6feaa69c0893 100644 --- a/include/asm-alpha/pgalloc.h +++ b/include/asm-alpha/pgalloc.h @@ -2,6 +2,7 @@ #define _ALPHA_PGALLOC_H #include <linux/config.h> +#include <linux/mm.h> /* * Allocate and free page tables. The xxx_kernel() versions are |
