]> git.hungrycats.org Git - linux/commitdiff
[ARM] Fix various build errors in bk-cur
authorRussell King <rmk@flint.arm.linux.org.uk>
Sun, 3 Nov 2002 21:52:42 +0000 (21:52 +0000)
committerRussell King <rmk@flint.arm.linux.org.uk>
Sun, 3 Nov 2002 21:52:42 +0000 (21:52 +0000)
- Make ioremap.c compile
- Fix armv4_early_abort -> v4_early_abort
- Fix MT_MINICACHE -> MT_MINICLEAN
- Add MAP_POPULATE and MAP_NONBLOCK for ARM
- Fix last remaining usage of kstat.irqs[cpu]
- Add support for .init.initramfs section

arch/arm/kernel/irq.c
arch/arm/mm/ioremap.c
arch/arm/mm/mm-armv.c
arch/arm/mm/proc-sa110.S
arch/arm/vmlinux-armv.lds.in
include/asm-arm/mman.h

index 3f77c258ef2ca672e3b47d5acf8e7228ecaaf99d..1fa4f5fb25f75a0496c41ca073f7aa7a68ec4c9c 100644 (file)
@@ -305,7 +305,7 @@ do_level_IRQ(unsigned int irq, struct irqdesc *desc, struct pt_regs *regs)
        desc->chip->ack(irq);
 
        if (likely(desc->enabled)) {
-               kstat.irqs[cpu][irq]++;
+               kstat_cpu(cpu).irqs[irq]++;
 
                /*
                 * Return with this interrupt masked if no action
index 698db9e3c7fc82d23f3788942f8495831884c92b..20fe93f7fc96ef94bfb93af9b2bafedeb669c728 100644 (file)
@@ -8,9 +8,7 @@
  * Hacked for ARM by Phil Blundell <philb@gnu.org>
  * Hacked to allow all architectures to build, and various cleanups
  * by Russell King
- */
-
-/*
+ *
  * This allows a driver to remap an arbitrary region of bus memory into
  * virtual space.  One should *only* use readl, writel, memcpy_toio and
  * so on with such remapped areas.
  * two 2GB chunks and mapping only one at a time into processor memory.
  * We use MMU protection domains to trap any attempt to access the bank
  * that is not currently mapped.  (This isn't fully implemented yet.)
- *
- * DC21285 currently has a bug in that the PCI address extension
- * register affects the address of any writes waiting in the outbound
- * FIFO.  Unfortunately, it is not possible to tell the DC21285 to
- * flush this - flushing the area causes the bus to lock.
  */
 #include <linux/errno.h>
 #include <linux/mm.h>
@@ -34,6 +27,7 @@
 #include <asm/page.h>
 #include <asm/pgalloc.h>
 #include <asm/io.h>
+#include <asm/tlbflush.h>
 
 static inline void remap_area_pte(pte_t * pte, unsigned long address, unsigned long size,
        unsigned long phys_addr, pgprot_t pgprot)
@@ -76,7 +70,7 @@ static inline int remap_area_pmd(pmd_t * pmd, unsigned long address, unsigned lo
 
        pgprot = __pgprot(L_PTE_PRESENT | L_PTE_YOUNG | L_PTE_DIRTY | L_PTE_WRITE | flags);
        do {
-               pte_t * pte = pte_alloc(&init_mm, pmd, address);
+               pte_t * pte = pte_alloc_kernel(&init_mm, pmd, address);
                if (!pte)
                        return -ENOMEM;
                remap_area_pte(pte, address, end - address, address + phys_addr, pgprot);
@@ -129,7 +123,9 @@ static int remap_area_pages(unsigned long address, unsigned long phys_addr,
  * 'flags' are the extra L_PTE_ flags that you want to specify for this
  * mapping.  See include/asm-arm/proc-armv/pgtable.h for more information.
  */
-void * __ioremap(unsigned long phys_addr, size_t size, unsigned long flags)
+void *
+__ioremap(unsigned long phys_addr, size_t size, unsigned long flags,
+         unsigned long align)
 {
        void * addr;
        struct vm_struct * area;
index ef7e71a2e21520de6961114dd69a4ac9f1b57b4a..a0bc8550cf085298f713be7301a30d4c5b42debf 100644 (file)
@@ -279,7 +279,7 @@ static void __init build_mem_type_table(void)
        if (cpu_arch < CPU_ARCH_ARMv5) {
                writealloc = 0;
                ecc = 0;
-               mem_types[MT_MINICACHE].prot_sect &= ~PMD_SECT_TEX(1);
+               mem_types[MT_MINICLEAN].prot_sect &= ~PMD_SECT_TEX(1);
        }
 
        if (writethrough) {
index 64e704ee087233e243fc38447ef5c812437e2c97..69a111109b9cfaba80416a8fa943a7e3da952b80 100644 (file)
@@ -561,7 +561,7 @@ cpu_sa110_info:
  */
        .type   sa1100_processor_functions, #object
 ENTRY(sa1100_processor_functions)
-       .word   armv4_early_abort
+       .word   v4_early_abort
        .word   cpu_sa1100_check_bugs
        .word   cpu_sa1100_proc_init
        .word   cpu_sa1100_proc_fin
index 1ade2c46af4c777e7e636b1307d95653f2038afa..3fb8c7708582df521d47e0bf882f839f33d109a8 100644 (file)
@@ -35,6 +35,10 @@ SECTIONS
                        *(.initcall6.init)
                        *(.initcall7.init)
                __initcall_end = .;
+               . = ALIGN(32);
+               __initramfs_start = .;
+                       *(.init.initramfs)
+               __initramfs_end = .;
                . = ALIGN(4096);
                __init_end = .;
        }
index 0c72de97d419bc8e39158d2b5986e4240e507367..044a5ef62548e948aa4766ba2d36dc5338e4ee70 100644 (file)
@@ -18,6 +18,8 @@
 #define MAP_EXECUTABLE 0x1000          /* mark it as an executable */
 #define MAP_LOCKED     0x2000          /* pages are locked */
 #define MAP_NORESERVE  0x4000          /* don't check for reservations */
+#define MAP_POPULATE   0x8000          /* populate (prefault) page tables */
+#define MAP_NONBLOCK   0x10000         /* do not block on IO */
 
 #define MS_ASYNC       1               /* sync memory asynchronously */
 #define MS_INVALIDATE  2               /* invalidate the caches */